David: can you help us get more detail on why it is stalled? here is some ideas: 1, on server side, ATS have a http_ui cache inspector which have a http module, can outline all the working http transactions, if some connections is stalled, you can find out it’s detail. https://cwiki.apache.org/confluence/display/TS/FAQ#FAQ-http_ui is the FAQ on how to enable http_ui, please use the {http} functions.
2, this is more likely a network related issue, can you help us dump some of the connections in tcpdump|wireshark, and outline some detailed message? I think we are interest in both client and server side too. 3, please help us check the IO stats on disks and others, while you checking the problem, we need to identify which part we need to review in ATS. at least we can confirm that is not bothering us. This is a very interest problem for us, please help us invest it and we will try to reproduce it. thanks 在 2014年1月7日,下午1:11,David Jericho <[email protected]> 写道: > Hi Leif, > > It’s HTTP, no HTTPS. > > http://bne-b-ccs1.cdn.aarnet.edu.au/pub/ubuntu/archive/dists/saucy/main/binary-i386/Packages.bz2 > is a URL I’ve been using to test it. A simple while true loop will bring it > up, after a few requests. > > I used the following configure line to setup the software. > > ./configure --prefix=/srv/trafficserver-4.1.2 > --sysconfdir=/srv/trafficserver-4.1.2/etc --localstatedir=/var > --enable-experimental-plugins --with-boost --with-hwloc --with-user=www-data > --with-group=www-data > > I’ve included config below from records.config, stripping out things that > were turned off and most things that were left default. > > CONFIG proxy.config.system.mmap_max INT 2097152 > CONFIG proxy.config.exec_thread.autoconfig INT 1 > CONFIG proxy.config.exec_thread.autoconfig.scale FLOAT 1.5 > CONFIG proxy.config.exec_thread.limit INT 2 > CONFIG proxy.config.accept_threads INT 1 > CONFIG proxy.config.exec_thread.affinity INT 0 > CONFIG proxy.config.http.keep_alive_enabled_in INT 1 > CONFIG proxy.config.http.keep_alive_enabled_out INT 1 > CONFIG proxy.config.http.chunking_enabled INT 1 > CONFIG proxy.config.http.send_http11_requests INT 1 > CONFIG proxy.config.http.share_server_sessions INT 1 > CONFIG proxy.config.http.origin_server_pipeline INT 1 > CONFIG proxy.config.http.user_agent_pipeline INT 8 > CONFIG proxy.config.http.parent_proxy_routing_enable INT 0 > CONFIG proxy.config.http.keep_alive_no_activity_timeout_in INT 0 > CONFIG proxy.config.http.keep_alive_no_activity_timeout_out INT 0 > CONFIG proxy.config.http.transaction_no_activity_timeout_in INT 0 > CONFIG proxy.config.http.transaction_no_activity_timeout_out INT 0 > CONFIG proxy.config.http.transaction_active_timeout_in INT 0 > CONFIG proxy.config.http.transaction_active_timeout_out INT 0 > CONFIG proxy.config.http.accept_no_activity_timeout INT 0 > CONFIG proxy.config.http.background_fill_active_timeout INT 0 > CONFIG proxy.config.http.background_fill_completed_threshold FLOAT 0.000000 > CONFIG proxy.config.http.congestion_control.enabled INT 0 > CONFIG proxy.config.http.negative_caching_enabled INT 1 > CONFIG proxy.config.http.negative_caching_lifetime INT 300 > CONFIG proxy.config.http.cache.http INT 1 > CONFIG proxy.config.http.cache.allow_empty_doc INT 1 > CONFIG proxy.config.http.cache.ignore_client_no_cache INT 1 > CONFIG proxy.config.http.cache.ims_on_client_no_cache INT 0 > CONFIG proxy.config.http.cache.ignore_server_no_cache INT 0 > CONFIG proxy.config.http.cache.ignore_client_cc_max_age INT 1 > CONFIG proxy.config.http.normalize_ae_gzip INT 0 > CONFIG proxy.config.http.cache.ignore_authentication INT 1 > CONFIG proxy.config.http.cache.cache_urls_that_look_dynamic INT 1 > CONFIG proxy.config.http.cache.enable_default_vary_headers INT 1 > CONFIG proxy.config.http.cache.when_to_revalidate INT 0 > CONFIG proxy.config.http.cache.when_to_add_no_cache_to_msie_requests INT -1 > CONFIG proxy.config.http.cache.required_headers INT 0 > CONFIG proxy.config.http.enable_http_stats INT 1 > CONFIG proxy.config.net.connections_throttle INT 30000 > CONFIG proxy.config.net.defer_accept INT 1 > CONFIG proxy.config.cache.permit.pinning INT 1 > CONFIG proxy.config.cache.ram_cache.size INT 214748364800 > CONFIG proxy.config.cache.ram_cache_cutoff INT 8589934592 > CONFIG proxy.config.cache.ram_cache.algorithm INT 0 > CONFIG proxy.config.cache.ram_cache.use_seen_filter INT 1 > CONFIG proxy.config.cache.max_doc_size INT 0 > CONFIG proxy.config.cache.enable_read_while_writer INT 1 > CONFIG proxy.config.cache.min_average_object_size INT 8000 > CONFIG proxy.config.cache.force_sector_size 4096 > CONFIG proxy.config.reverse_proxy.enabled INT 1 > CONFIG proxy.config.net.sock_send_buffer_size_in INT 0 > CONFIG proxy.config.net.sock_recv_buffer_size_in INT 0 > CONFIG proxy.config.net.sock_send_buffer_size_out INT 0 > CONFIG proxy.config.net.sock_recv_buffer_size_out INT 0 > > I’m definitely keen to see where I’ve messed up. > > > From: Leif Hedstrom [mailto:[email protected]] > Sent: Tuesday, 7 January 2014 2:55 PM > To: [email protected]; David Jericho > Subject: Re: Stalling ATS 4.1.2 and Ubuntu archives > > On Jan 6, 2014, at 8:06 PM, David Jericho <[email protected]> wrote: > > > Hi all, > > I have a mirror service with Ubuntu content, redirected via a L7 front end to > an ATS host running 4.1.2. I get an unusual behaviour where content delivery > stalls with consecutive requests. > > Across the archive whole, it’s efficient and fast, but I can trip it up with > a single client, and the apt-get process often stalls for individual users. > I’m at a bit of a loss as to why. I’ve eliminated the L7 front end, and I’ve > eliminated the content backends as the cause of the fault. If I remove ATS > from the path, or talk to either end directly, the service is reliable and > consistent. > > > Is this HTTP or HTTPS ? Is there some setup / configs you can share, together > with URLs / curl directives to try to reproduce ? > > — leif Yongming Zhao 赵永明 aka 永豪 [email protected]
signature.asc
Description: Message signed with OpenPGP using GPGMail
