I am seeing an odd scenario in our apache access logs. We are running Magento EE and every once in awhile I will get an alert that DB connections have spiked. On several occasions I have been able to load the server-status page and see hundreds of connections to the same page, from the same visitor, with a "sending reply" status. This seems to correlate one to one with DB connections sitting in a sleep state.
At first it seemed it was a script, but upon further review it looks as though the visitor is browsing the site in a normal fashion and then all the sudden makes hundreds of requests to the same page.
Everything I'm seeing seems to be a sympton of all these requests so my question is if anyone has encountered this same situation where a non-malicious visitor all of the sudden generates a huge amount of requests.
EDIT
I have found 5 total incidents in the last two months. There might other smaller incidents. Each appear to be legitimate customers. I say this because their first couple dozen requests are for js, css and images. In addition the flow and time between requests look normal. I do not see anything abnormal when I look up their IPs using ip2location. I don't see any correlation in user-agents.
It might be worth nothing that when the requests start going crazy they are the exact same requests. Same URL, same referrer. For the most part the status code 200 is being returned. I'm guessing that rules out a redirect loop?
EDIT 2
I should add that we have an Apache reverse proxy sitting in front of our production web server which is also Apache.
EDIT 3
Below is an example of what I'm seeing. I've been tracking since 4/1 And this appears to be happening on mobile devices. The particular user-agent for the below is:
Mozilla/5.0 (Linux; U; Android 4.4.2; en-us; LGLS620 Build/KOT49I.LS620ZV3) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/30.0.1599.103 Mobile Safari/537.36||
I've seen non-mobile user agents, at least I think, but since 4/1 they have all been mobile and have contained (Linux; Android 4.x...)
Date mthd ver cd url
11/Apr/2015:15:55:18 GET HTTP/1.1 200 /
11/Apr/2015:15:55:19 GET HTTP/1.1 200 /media/css/8700280c501950f1f993faeb85ccba1d.css
11/Apr/2015:15:55:19 GET HTTP/1.1 200 /media/css/4c7438d76cc21375f2edc20977c91d36.css
11/Apr/2015:15:55:19 GET HTTP/1.1 200 /js/hla/resxclsa.js
11/Apr/2015:15:55:19 GET HTTP/1.1 200 /js/prototype/window.js
11/Apr/2015:15:55:19 GET HTTP/1.1 200 /media/js/b099e06c740c0bba88cf773ead1d87a3.js
11/Apr/2015:15:55:20 GET HTTP/1.1 200 /js/prototype/windows/themes/default.css
11/Apr/2015:15:55:20 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/css/hla_email_modal.css
11/Apr/2015:15:55:22 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/header/pipegrad.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/top_mid.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/bottom_mid.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/center_right.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/center_left.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/close.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/top_left.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /js/prototype/windows/themes/default/top_right.gif
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/arrow_blue.png
11/Apr/2015:15:55:23 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/paging_bg2.png
11/Apr/2015:15:55:24 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/favicon.ico
11/Apr/2015:15:56:12 GET HTTP/1.1 200 /
11/Apr/2015:15:57:22 GET HTTP/1.1 200 /hlacatalog/order/index/
11/Apr/2015:15:57:22 GET HTTP/1.1 200 /media/css/9f4f810481e2cc3360aff338eba49354.css
11/Apr/2015:15:57:22 GET HTTP/1.1 200 /media/js/bb621665aaccc46d08af410a5ac1d7ee.js
11/Apr/2015:15:57:41 GET HTTP/1.1 200 /hlacatalog/online/viewer/
11/Apr/2015:15:57:41 GET HTTP/1.1 200 /media/css/4edf6a4f84bad10345ca7a372a80c153.css
11/Apr/2015:15:57:41 GET HTTP/1.1 200 /media/js/08f96739f1ebeb88a47c836cfcc1e852.js
11/Apr/2015:15:57:42 GET HTTP/1.1 200 /hlacatalog/online/pages?CUR=1&CTLG=z4
11/Apr/2015:15:57:42 GET HTTP/1.1 200 /hlacatalog/online/imap?CTLG=z4&CUR=1
11/Apr/2015:15:57:47 GET HTTP/1.1 200 /hlacatalog/online/pages?CUR=1&CTLG=z4
11/Apr/2015:15:57:47 GET HTTP/1.1 200 /hlacatalog/online/imap?CTLG=z4&CUR=1
11/Apr/2015:15:58:03 GET HTTP/1.1 200 /hlacatalog/online/pages?CUR=2&CTLG=z4
11/Apr/2015:15:58:03 GET HTTP/1.1 200 /hlacatalog/online/imap?CTLG=z4&CUR=2
11/Apr/2015:15:58:13 GET HTTP/1.1 200 /hlacatalog/online/pages?CUR=1&CTLG=z4
11/Apr/2015:15:58:13 GET HTTP/1.1 200 /hlacatalog/online/imap?CTLG=z4&CUR=1
11/Apr/2015:15:58:23 GET HTTP/1.1 200 /hlacatalog/order/index/
11/Apr/2015:15:58:41 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:15:58:42 GET HTTP/1.1 200 /media/css/d6ec89b6a821ddc341647ded882fbb0f.css
11/Apr/2015:15:59:59 GET HTTP/1.1 200 /electronics.html
11/Apr/2015:16:01:30 GET HTTP/1.1 200 /auto-hardware.html
11/Apr/2015:16:01:48 GET HTTP/1.1 200 /auto-hardware/workshop-tools.html
11/Apr/2015:16:03:40 GET HTTP/1.1 200 /camera-optics.html
11/Apr/2015:16:04:43 GET HTTP/1.1 200 /footwear.html
11/Apr/2015:16:08:18 GET HTTP/1.1 200 /zig-zag-canvas-slip-ons-navy.html
11/Apr/2015:16:08:20 GET HTTP/1.1 200 /media/js/95ecaceb80442060cba631fb71a018d8.js
11/Apr/2015:16:08:20 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/slider_btn_zoom_in.gif
11/Apr/2015:16:08:20 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/slider_btn_zoom_out.gif
11/Apr/2015:16:08:20 GET HTTP/1.1 200 /media/css/55c2db86cbb0bd1d7ef0b5f0f93d09c3.css
11/Apr/2015:16:08:20 GET HTTP/1.1 200 /media/css/3338c38ff80d2193f80497fb24bb55e9.css
11/Apr/2015:16:08:21 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/magnifier_handle.gif
11/Apr/2015:16:08:21 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/slider_bg.gif
11/Apr/2015:16:08:23 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/tabs-border.png
11/Apr/2015:16:08:23 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/tab-active-bg.png
11/Apr/2015:16:08:23 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/tabs-bg.png
11/Apr/2015:16:08:26 GET HTTP/1.1 200 /footwear.html
11/Apr/2015:16:31:49 GET HTTP/1.1 200 /footwear.html
11/Apr/2015:18:33:18 GET HTTP/1.1 200 /recreation-health.html
11/Apr/2015:18:34:48 GET HTTP/1.1 200 /auto-hardware.html
11/Apr/2015:18:36:11 GET HTTP/1.1 200 /electronics.html
11/Apr/2015:18:37:30 GET HTTP/1.1 200 /mini-speaker-usb-sd-white-m4439.html
11/Apr/2015:18:38:36 GET HTTP/1.1 200 /electronics.html
11/Apr/2015:18:38:46 GET HTTP/1.1 200 /qfx-cassette-converter-boombox.html
11/Apr/2015:18:38:47 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/bkg_rating.png
11/Apr/2015:18:43:36 GET HTTP/1.1 200 /electronics.html
11/Apr/2015:18:43:43 GET HTTP/1.1 200 /cobra-noaa-weather-alert-radio.html
11/Apr/2015:18:44:10 GET HTTP/1.1 200 /12v-dc-impact-wrench-5d5775.html
11/Apr/2015:18:45:37 GET HTTP/1.1 200 /cobra-noaa-weather-alert-radio.html
11/Apr/2015:18:45:45 GET HTTP/1.1 200 /12v-dc-impact-wrench-5d5775.html
11/Apr/2015:18:46:07 POST HTTP/1.1 302 /checkout/cart/add/uenc/aHR0cDovL3d3dy5oZWFydGxhbmRhbWVyaWNhLmNvbS8xMnYtZGMtaW1wYWN0LXdyZW5jaC01ZDU3NzUuaHRtbD9fX19TSUQ9VQ,,/product/1679/form_key/BiEopk9TaQbDIwra/
11/Apr/2015:18:46:08 GET HTTP/1.1 200 /checkout/cart/
11/Apr/2015:18:46:10 GET HTTP/1.1 200 /media/css/4dcedb7b40a0abdec08e1d66b36120be.css
11/Apr/2015:18:46:10 GET HTTP/1.1 200 /media/css/79ff0de5dc1596b8312b1dc385728bf2.css
11/Apr/2015:18:46:10 GET HTTP/1.1 200 /media/js/8e6408fcd407e367ea233e2a2beb876c.js
11/Apr/2015:18:46:11 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/i_msg-success.gif
11/Apr/2015:18:46:11 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/bkg_th.gif
11/Apr/2015:18:46:11 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/btn_trash.gif
11/Apr/2015:18:46:11 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/btn_checkout.gif
11/Apr/2015:18:46:11 GET HTTP/1.1 200 /skin/frontend/enterprise/hla/images/bkg_tfoot.gif
11/Apr/2015:18:46:18 GET HTTP/1.1 200 /12v-dc-impact-wrench-5d5775.html
11/Apr/2015:18:47:48 GET HTTP/1.1 200 /checkout/cart/
11/Apr/2015:18:48:18 GET HTTP/1.1 200 /
11/Apr/2015:18:52:53 GET HTTP/1.1 200 /
11/Apr/2015:18:53:33 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:18:54:29 GET HTTP/1.1 200 /
11/Apr/2015:18:55:18 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:18:56:25 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:18:57:09 GET HTTP/1.1 200 /household.html
11/Apr/2015:18:58:33 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:18:58:46 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:18:59:42 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:01 GET HTTP/1.1 200 /gifts-collectibles/gifts-21-50.html
11/Apr/2015:19:00:40 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:40 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:41 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:41 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:41 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:41 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:41 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:41 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:42 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:42 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:42 GET HTTP/1.1 200 /gifts-collectibles/gifts-under-20.html
11/Apr/2015:19:00:43 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:43 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:00:44 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:44 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:00:45 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:45 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:45 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:45 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:00:45 GET HTTP/1.1 200 /gifts-collectibles.html
11/Apr/2015:19:01:14 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:14 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:14 GET HTTP/1.1 200 /
11/Apr/2015:19:01:15 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:15 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:15 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:15 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:15 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:16 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:16 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:16 GET HTTP/1.1 200 /hlacatalog/special/special
11/Apr/2015:19:01:17 GET HTTP/1.1 200 /
11/Apr/2015:19:01:17 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:17 GET HTTP/1.1 200 /
11/Apr/2015:19:01:18 GET HTTP/1.1 200 /
11/Apr/2015:19:01:18 GET HTTP/1.1 200 /
11/Apr/2015:19:01:19 GET HTTP/1.1 200 /
11/Apr/2015:19:01:19 GET HTTP/1.1 200 /
11/Apr/2015:19:01:19 GET HTTP/1.1 200 /
11/Apr/2015:19:01:20 GET HTTP/1.1 200 /
11/Apr/2015:19:01:20 GET HTTP/1.1 200 /
11/Apr/2015:19:01:21 GET HTTP/1.1 200 /
11/Apr/2015:19:01:21 GET HTTP/1.1 200 /
11/Apr/2015:19:01:21 GET HTTP/1.1 200 /
11/Apr/2015:19:01:23 GET HTTP/1.1 200 /
11/Apr/2015:19:01:23 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:24 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:24 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:24 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:24 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:24 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:24 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:25 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:26 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:27 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:27 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:28 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:28 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:28 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:29 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:29 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:29 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:29 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:30 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:31 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:31 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:31 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:32 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:32 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:32 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:32 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:33 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:33 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:33 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:33 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:33 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:34 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:34 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:34 GET HTTP/1.1 200 /6-month-value-club-membership-with-free-20-heartland-dollars.html
11/Apr/2015:19:01:57 GET HTTP/1.1 200 /hlacatalog/request/
11/Apr/2015:19:01:58 GET HTTP/1.1 200 /media/css/43f2991d364884e81e4c3c50064587e0.css
11/Apr/2015:19:01:58 GET HTTP/1.1 200 /media/js/5bd9c4a09105aac80c84a70736b5e066.js