Firefox или Chrome не выпускают ручки

796
Harriv

Я заметил, что когда браузер (протестированный с Firefox и Chrome) долгое время работал, он прекращает подключение сайтов. С помощью диспетчера задач я обнаружил, что количество дескрипторов для процесса браузера составляет 90000+. При выключении счетчик дескрипторов браузера начинает уменьшаться, но в какой-то момент останавливается, и единственный разумный быстрый способ выключить браузер - убить процесс. Также «Системный» процесс имеет большое количество дескрипторов, которое снижается, когда браузер убит.

Поскольку я могу видеть это явление в двух разных браузерах, это не может быть ошибка в браузере. Есть идеи, что вызывает это и как от этого избавиться?

Я использую Windows XP SP3 и Firefox 4.0.1. Антивирусом является F-Secure Client Security 9.01, сборка 122. Прокси-сервер не используется, и включение брандмауэра F-Secure, похоже, не имеет никакого эффекта.

Вывод Netstat -nb содержит много строк такого типа:

TCP 127.0.0.1:3682 127.0.0.1:3681 CLOSE_WAIT 4112
[firefox.exe]

Я подозреваю F-Secure, но теперь я представляю, как он мог это сделать.

2
Какое у вас антивирусное программное обеспечение? А какие функции этого программного обеспечения в WWW-браузере (блокировщики рекламы, блокировщики всплывающих окон, средства проверки конфиденциальности и т. Д.) Включены в это программное обеспечение? JdeBP 13 лет назад 0
У меня есть F-Secure F-Secure Client Security 9.01 build 122 (брандмауэр в настоящее время отключен), только расширение для браузера - Ad-Block Plus на Firefox. Harriv 13 лет назад 0
Firefox определенно имеет TCP-соединения с сокетами на вашем компьютере (обратите внимание на 127.0.0.1), так что даже если ваш брандмауэр отключен, по какой-то причине ваш WWW-браузер говорит с чем-то локальным. Вы не сообщили, что `netstat` говорит о системном процессе, если вообще что-то говорит. JdeBP 13 лет назад 0
Нет ничего о системном процессе в выводе. Harriv 13 лет назад 0

3 ответа на вопрос

2
TheCompWiz

I honestly don't believe this is a problem with firefox or chrome directly. I currently have 1220 tabs open in chrome, and 732 in firefox, and it has been this way for over a week without a restart. There can be issues on several different fronts, but tracking down which is the culprit can be very difficult.

A few things to look at:

  • The maximum number of connections your router can handle... (I've seen home-based routers that are limited to 4k active connections, and others well over 250k.) Unfortunately, this limit is not always well-documented by the manufacturer. You might also want to look at what-else is making connections (i.e. is something p2p running in the background?)
  • Are you using a proxy? (a virus might be acting as a proxy too and would cause similar problems) Proxy software can also have these sorts of limitations, and the symptoms would be similar.
  • The sites you are visiting may be a contributing factor. Some sites operate using several techniques that end up with multiple connections to the host to maximize throughput to the website and/or multiple connections to allow 2-way communication to the server. Refreshing or re-connecting to the site, or even messing with javascript (i.e. disabling javascript or using programs like "noscript") can inadvertently cause the website itself to attempt to make additional connections to the server, and the problem can grow exponentially.

Without more information about what is going on... I can only guess.

Я добавил еще немного информации к вопросу. Harriv 13 лет назад 0
С множеством подключений к 127.0.0.1 ... у вас наверняка есть вирус. В этом случае вирус действует как прокси-сервер, чтобы перехватывать все данные, идущие с вашей машины на удаленный сайт ... и обратно. Антивирусное программное обеспечение не будет работать таким образом ... (включая F-Secure) Я настоятельно рекомендую вам попробовать использовать Avast или AVG или полдюжины других антивирусных программ, способных обнаруживать руткиты. TheCompWiz 13 лет назад 0
*** 1952 вкладки. *** Это ... Mateen Ulhaq 13 лет назад 0
2
Astyan

TL; DR: я наконец нашел причину этой ошибки в Windows 7 (и, конечно, во всех других версиях Windows). На самом деле речь идет об объектах GDI.

Когда число объектов GDI достигает 10 000, появляется ошибка, и Chrome падает несколько раз после. Теперь я просто удивляюсь, является ли это ошибкой в ​​Chrome или это ошибка плагина / расширения.

Чтобы увидеть объекты GDI в диспетчере задач, нажмите в меню «Показать» → «выбрать столбцы ...» → установите флажок «Объект GDI».


Я столкнулся с такой ошибкой в ​​IE (я думаю, v7 или, возможно, 6) в Windows XP SP3. Я испытал это и с Chrome, но только с Windows 7 Home Premium.

Я не думаю, что антивирус является причиной этого, потому что я получил эту проблему на новом ноутбуке (купленном в прошлом месяце) с установленной на нем официальной Windows 7 Home Premium, и я до сих пор не установил ни одного антивируса .. . (даже установлен и удален!)

Как эта ошибка появилась для меня:

Во-первых, у меня никогда не было сотен открытых вкладок, когда появилась эта «ошибка», но каждый раз браузер долго работал (многие вкладки открывались и закрывались). То же самое было с IE.

Когда я пытался что-то загрузить (аналогичная проблема с открытием новой вкладки), диалоговое окно «Сохранить» не появилось (не хватает дескрипторов GUI?). Браузер казался замороженным, но когда я переместил другое окно поверх Chrome, я мог угадать рамку / границы диалогового окна сохранения, потому что были ошибки обновления. Таким образом, диалоговое окно не отображалось, но все равно было «показано». В конце концов я нажал escape, и диалоговое окно закрылось, и браузер «замерз».

В настоящее время мой браузер Iron (Chrome-подобный браузер на основе Chromium) имеет 31 открытую вкладку, процесс, которому принадлежит большинство дескрипторов, имеет 29203 дескриптора, второй процесс имеет 2667 дескрипторов, затем explorer.exe1392 дескриптора и т. Д. И у меня нет GUI справиться с проблемой.

Когда у меня возникла эта проблема, у Iron было всего около 7000 дескрипторов, поэтому не имеет смысла думать, что это проблема дескриптора или любая утечка дескриптора, которую браузеры могли бы плохо решить.

Я думаю, что это проблема с Windows .. может быть, система переработки ручек, я не знаю.

Примечание. Когда у меня возникла эта проблема в Windows 7, я запустил диспетчер задач, и он отображается правильно. В Windows XP (с IE), а не на этом ноутбуке, у диспетчера задач тоже была проблема. Я не видел никаких процессов, потому что не отображалась сетка с процессами и столбцами! На самом деле я не мог запустить какую-либо программу на этом компьютере, пока я не закрыл IE и не выпустил все дескрипторы.

В Windows 7 (с проблемой Chrome) ресурсы дескриптора GUI кажутся изолированными, потому что я мог видеть диспетчер задач и запускать любую другую программу без этого голодания / нехватки дескриптора GUI. Проблема обработки графического интерфейса ограничена Iron.

Так как у меня никогда не было этой проблемы с Iron в Windows XP, эта проблема могла быть из-за плагинов.

1
Harriv

Я отключил все «ненужные» плагины браузера, и проблема ушла. Я не уверен, какой это был.

Похожие вопросы