We wanted to evaluate 3.1.0.13 squid to move from our current squid version of 2.6.x ( stable 4 + few custom changes ) We did the following performance test from a Avalance setup. 1. preload objects in squid cache. 2. 3500 transactions/sec with 90-10 hit-miss ratio. 3. mean size of object 23 kb. 4. ran it for 30 minutes. ( 5 min ramp up to load 3500, 20 min with load 3500, 5 min to cool down ) Average response time Results we got. 2.6.x version = 22 milli second 3.1.0.13 = 274 milli second. ( the graph increases over period of time... ) --- similarly, we did for large objects with 40 transaction/sec, mean object size 1.8 MB. 2.6.x => 91 ms, squid 3.1.0.13 => 109 ms. this is somewhat ok.. --- We wanted to move to 3.1.0.13 to make use of gzip+ecap feature and other 3.1 features, but this performance results is disappointing. The OS and squid.conf parameters for small file objects are typically the same for both 2.6 and 3.1 setup. [ to mention a few: cache_mem = 16 GB ( we have 32 GB max ), max_object_size_in_memory = 1 MB refer config file below ] Questions: 1. Is there any paramater am missing for 3.1 squid, which would help to improve performance for high loads? 2. Or Is squid 3.1 really not ready yet for high load situations for small objects? Any performance related work going on, any dates/versions to expect ? am giving the squid.conf entries 3.1 (its the same for 2.6 also ). let me know, if you need any other details. Regards, Ganesh OS -- linux RH4 -release 8 Linux 2.6.9-89.ELsmp #1 SMP Mon Apr 20 10:33:05 EDT 2009 x86_64 x86_64 x86_64 GNU/Linux SQUID 3.1.0.13 Squid.conf entries for Small file objects -------------------------------------------------------- (note: the following squid parameters were the same for 2.6 squid.) http_port 80 vhost vport=80 acl port80 port 80 icp_port 0 udp_incoming_address 0.0.0.0 udp_outgoing_address 255.255.255.255 icp_query_timeout 0 maximum_icp_query_timeout 2000 mcast_icp_query_timeout 2000 dead_peer_timeout 10 seconds hierarchy_stoplist cgi-bin ? acl QUERY urlpath_regex \? acl CGI urlpath_regex cgi-bin acl readCommunityString snmp_community icds-nms acl LMS src 192.168.2.4 snmp_access allow readCommunityString all acl apache rep_header Server ^Apache cache_swap_low 95 cache_swap_high 98 maximum_object_size 100 MB minimum_object_size 0 KB maximum_object_size_in_memory 1 MB ipcache_size 2048 ipcache_low 95 ipcache_high 98 cache_replacement_policy lru memory_replacement_policy lru cache_log /squid/logs/cache.log cache_store_log none log_ip_on_direct on debug_options ALL,1 client_netmask 255.255.255.255 dns_timeout 10 seconds refresh_pattern ^ftp: 1440 20% 10080 refresh_pattern ^gopher: 1440 0% 1440 refresh_pattern . 1440 100% 1440 ignore-reload quick_abort_min -1 KB quick_abort_max 16 KB quick_abort_pct 95 negative_ttl 1 minutes positive_dns_ttl 1 hour negative_dns_ttl 1 minute range_offset_limit -1 MB connect_timeout 5 seconds peer_connect_timeout 5 seconds read_timeout 60 seconds request_timeout 10 seconds persistent_request_timeout 10 minutes pconn_timeout 120 seconds shutdown_lifetime 30 seconds acl manager proto cache_object acl localhost src 127.0.0.1/32 acl SSL_ports port 443 563 acl Safe_ports port 80 acl OBJECT method OBJECT acl CONNECT method CONNECT acl PURGE method PURGE acl Safe_methods method GET POST HEAD PUT acl Safe_protos proto HTTP http_access allow manager localhost1 http_access allow manager localhost http_access deny manager http_access allow Safe_methods http_access allow PURGE localhost1 http_access allow PURGE localhost http_access allow OBJECT localhost http_access allow OBJECT localhost1 http_access deny PURGE http_access deny OBJECT http_access deny !Safe_ports http_access deny !Safe_protos http_access deny CONNECT !SSL_ports http_access deny all http_reply_access allow all reply_header_max_size 20 KB cache_mgr webmaster cache_effective_user icds announce_host dummy.net announce_port 3131 forwarded_for on icp_hit_stale on cachemgr_passwd passw0rd info stats/objects client_db off maximum_single_addr_tries 1 snmp_port 161 offline_mode off uri_whitespace encode nonhierarchical_direct on prefer_direct off strip_query_terms off coredump_dir none redirector_bypass off client_persistent_connections on server_persistent_connections on cache_dir aufs /squid/cache0 158522 29 830 cache_dir aufs /squid/cache1 252949 29 830 cache_dir aufs /squid/cache2 252949 29 830 cache_dir aufs /squid/cache3 252949 29 830 cache_dir aufs /squid/cache4 252949 29 830 cache_dir aufs /squid/cache5 252949 29 830 request_body_max_size 100 KB request_header_max_size 8 KB minimum_expiry_time 0 seconds read_ahead_gap 400 KB cache_mem 16083 MB acl 1001 dstdomain www1.acm.com acl 1002 dstdomain www2.acm.com acl 1003 dstdomain www3.acm.com ... acl 1025 dstdomain www25.acm.com cache_peer xxx parent 8000 0 no-query originserver forceddomain=www.acm.com cache_peer_access 10.0.1.4 allow 1001 cache_peer_access 10.0.1.4 allow 1002 cache_peer_access 10.0.1.4 allow 1003 ... cache_peer_access 10.0.1.4 allow 1025 logformat L1001 %{%m/%d/%Y %H:%M:%S}tl %>a %la "%ru" %>Hs %{Content-Length}<h %<st %>st %tr "%{Referer}>h" %Ss %<A %{Content-Range}<h logformat L1002 %{%m/%d/%Y %H:%M:%S}tl %>a %la "%ru" %>Hs %{Content-Length}<h %<st %>st %tr "%{Referer}>h" %Ss %<A %{Content-Range}<h ... logformat L1025 %{%m/%d/%Y %H:%M:%S}tl %>a %la "%ru" %>Hs %{Content-Length}<h %<st %>st %tr "%{Referer}>h" %Ss %<A %{Content-Range}<h access_log /squid/logs/queue/1001/log L1001 1001 access_log /squid/logs/queue/1002/log L1002 1002 access_log /squid/logs/queue/1003/log L1003 1003 ... access_log /squid/logs/queue/1025/log L1025 1025