Firefox ou Chrome não libera alças

2

Tenho notado que quando o navegador (testado com o Firefox e o Chrome) funciona há muito tempo, ele pára de conectar sites. Eu descobri com o gerenciador de tarefas que a contagem de alças para o processo do navegador é 90000+. Quando o desligamento da contagem de identificador do navegador começa a descer, mas pára em algum momento e apenas maneira rápida e razoável de desligar o navegador é para matar o processo. Além disso, o processo "System" tem uma contagem alta de identificadores que diminui quando o navegador é eliminado.

Desde que eu posso ver este fenômeno em dois navegadores diferentes, não pode ser bug no navegador. Alguma idéia do que causa isso e como se livrar dele?

Estou executando o Windows XP SP3 e o Firefox 4.0.1. O antivírus é o F-Secure Client Security 9.01 build 122. Nenhum proxy é usado e a ativação do firewall da F-Secure parece não ter efeito.

A saída netstat -nb contém muitos desses tipos de linhas:

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

Estou suspeitando da F-Secure, mas agora tenho ideia de como isso poderia ser feito.

    
por Harriv 06.06.2011 / 17:08

3 respostas

1

Desativei todos os plug-ins de navegador "desnecessários" e o problema desapareceu. Não tenho certeza de qual deles foi.

    
por 03.07.2011 / 01:18
2

Eu sinceramente não acredito que isso seja um problema com o firefox ou chrome diretamente. Eu atualmente tenho 1220 guias abertas no Chrome e 732 no Firefox, e tem sido assim por mais de uma semana sem reiniciar. Pode haver problemas em várias frentes diferentes, mas rastrear qual deles é o culpado pode ser muito difícil.

Algumas coisas para ver:

  • O número máximo de conexões com as quais seu roteador pode lidar ... (Eu vi roteadores baseados em casa limitados a 4k conexões ativas e outros bem acima de 250k). Infelizmente, esse limite nem sempre é bem documentado por O manufatureiro. Você também pode querer olhar para o que-else está fazendo conexões (ou seja, algo p2p está sendo executado em segundo plano?)
  • Você está usando um proxy? (um vírus pode estar atuando como proxy também e causaria problemas semelhantes) O software proxy também pode ter esses tipos de limitações, e os sintomas seriam semelhantes.
  • Os sites que você está visitando podem ser um fator contribuinte. Alguns sites operam usando várias técnicas que acabam com várias conexões com o host para maximizar a taxa de transferência para o site e / ou várias conexões para permitir a comunicação bidirecional com o servidor. Atualizar ou reconectar-se ao site, ou mesmo mexer com o javascript (ou seja, desabilitar o javascript ou usar programas como "noscript") pode inadvertidamente fazer com que o próprio site tente fazer conexões adicionais com o servidor, e o problema pode crescer exponencialmente. / li>

Sem mais informações sobre o que está acontecendo ... só posso imaginar.

    
por 06.06.2011 / 17:53
2

TL; DR: Eu finalmente encontrei o que causa esse bug no Windows 7 (e certamente em todas as outras versões do Windows). Na verdade, é sobre objetos GDI.

Quando o número de objetos GDI atinge 10 000, o erro aparece e o Chrome falha poucas vezes depois. Agora, eu me pergunto se é um bug no Chrome ou se é um bug de plugin / extensão.

Para ver os Objetos GDI no Gerenciador de Tarefas, clique no menu "Exibir" → "selecionar colunas ..." → marque a caixa de seleção "Objeto GDI".

Eu experimentei esse tipo de bug com o IE (v7 eu acho, ou 6 talvez) no Windows XP SP3. Experimentei também com o Chrome, mas apenas com o Windows 7 Home Premium.

Eu não acho que o antivírus seja a causa disso, porque eu peguei esse problema em um laptop novo (comprado no mês passado) com um Windows 7 Home Premium oficial instalado nele, e nunca instalei nenhum antivírus agora ... (até instalado e removido!)

Como esse bug apareceu para mim:

Primeiro, eu nunca tive centenas de abas abertas quando esse "bug" apareceu, mas, a cada vez, o navegador estava sendo executado por um longo tempo (com muitas abas abertas e fechadas). Foi a mesma coisa com o IE.

Quando tentei fazer o download de qualquer coisa (problema semelhante ao abrir uma nova guia), a caixa de diálogo "salvar" não apareceu (não há identificadores de GUI suficientes?). O navegador parecia estar congelado, mas quando mudei outra janela na parte superior do Chrome, pude adivinhar o quadro / borda da caixa de diálogo de salvamento porque havia erros de atualização. Portanto, a caixa de diálogo não foi exibida, mas foi "mostrada" de qualquer maneira. Eu finalmente pressionei escape e a caixa de diálogo foi fechada e o navegador "descongelou.

Atualmente meu navegador, Iron (um navegador semelhante ao Chrome com base no Chromium) tem 31 abas abertas, o processo que possui a maioria das alças tem 29203 alças, o segundo processo tem 2667 alças e explorer.exe tem 1392 alças, etc. E eu não tenho nenhum problema com a GUI.

Quando tive esse problema, o Iron tinha cerca de 7000 handles apenas, então não faz sentido pensar que é um problema de manipulação ou qualquer vazamento de identificador que os navegadores possam gerenciar mal.

Eu acho que é um problema com o Windows .. talvez um sistema de reciclagem de identificadores, eu não sei.

Nota: Quando tive este problema no Windows 7, executei o Gerenciador de Tarefas e ele é exibido corretamente. No Windows XP (com o IE), não neste laptop, o Gerenciador de Tarefas também tinha o problema. Não consegui ver nenhum processo porque a grade com processos e colunas não foi exibida! Na verdade, não consegui rodar nenhum programa neste computador até fechar o IE e liberar todas as alças.

No Windows 7 (com o problema do Chrome), os ressources de manuseio da GUI parecem estar isolados porque eu podia ver o Gerenciador de Tarefas e executar qualquer outro programa sem essa GUI lidar com fome / falta. O problema da alça da GUI é restrito ao Iron.

Como nunca tive esse problema com o Iron no Windows XP, esse problema pode estar relacionado a plug-ins.

    
por 07.08.2011 / 01:45