On 4/4/07, Vadim Pushkin <wiskbroom@xxxxxxxxxxx> wrote:
Does anyone have any OS tips for Sparc/Solaris? (preferably 8).
Sell the Sparc, buy two Sun-badged AMD64 machines to run FreeBSD on? Until recently I ran a number of large caches on Solaris 8/Sparc, serving as parent caches for child caches used by thousands of clients. Here's my settings: First thing, ignore the tuning suggestions for SunOS 2.6, few 2.6 options apply to Solaris 8, and even fewer to Solaris 10 (Speaking of which, if your hardware supports 10, upgrading may give performance improvements). configure --enable-async-io --enable-cache-digests --enable-underscores --enable-pthreads --enable-storeio=ufs,aufs --enable-removal-policies=lru,heap First, I disable 'nscd' in Solaris startup, instead I actually ran a local 'dnscache' resolver on each box, so squid.conf had "dns_nameservers 127.0.0.1", and also set fqdncache_size relatively high. In the squid startup script, use 'ndd' to force network parameters: /usr/sbin/ndd -set /dev/tcp tcp_ip_abort_cinterval 29000 /usr/sbin/ndd -set /dev/tcp tcp_time_wait_interval 45000 /usr/sbin/ndd -set /dev/tcp tcp_xmit_hiwat 32767 /usr/sbin/ndd -set /dev/tcp tcp_recv_hiwat 32767 /usr/sbin/ndd -set /dev/udp udp_xmit_hiwat 16384 /usr/sbin/ndd -set /dev/udp udp_recv_hiwat 16384 /usr/sbin/ndd -set /dev/tcp tcp_smallest_anon_port 32772 The cache_dir is 'aufs', on a drive dedicated to the squid cache, and formatted specially for squid, with the fragsize set equal to the blocksize. While counter intuitive, it seems to help performance if you set cache_mem and maximum_object_size_in_memory both to relatively low values (a good start would be 30% of total RAM, and 64K, respectively), and trust the Solaris memory management to keep popular objects in memory. Lastly, I rebuilt squid using the custom logging patch, and disabled local cache_access and cache_store logging, instead sending access events to a remote loghost via syslog. This made it easier to do central accounting for a pool of caches, and also gave a small performance gain, as there is less overhead in emitting a UDP packet than in writing to disk. Kevin "Not kidding about selling the Sparc" Kadow