SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
“Apresentação do problema Socket Descriptor
Leak encontrado na JDK”
Publicado em setembro de 2008
Disponível em: http://bugs.java.com/view_bug.do?bug_id=6745052
Apresentador: Carlos Eduardo Dantas
ROTEIRO
• Introdução.
• Socket Descriptor Leak na JDK.
• Reprodução do problema.
• Conclusão.
INTRODUÇÃO
• Socket Descriptor Leak ocorre quando conexões via sockets são
abertas, e por algum motivo, não são fechadas, especialmente do
lado servidor;
• O acúmulo de conexões abertas sem fechar pode ocasionar uma falha
no decorrer do tempo, já que servidores possuem um limite de
conexões abertas simultaneamente.
SOCKET DESCRIPTOR LEAK NA JDK
• Reportado em 05/09/2008, apresentando as versões 1.6.0_02,
1.6.0_04 e 1.5.0_14.
• Corrigido em 22/11/2008.
• Fonte: link http://bugs.java.com/view_bug.do?bug_id=6745052
SOCKET DESCRIPTOR LEAK NA JDK
• “Descritores de arquivos referente a sockets TCP não são liberados
corretamente quando se usa a classe SSLServerSocket (especialmente
com muitas instâncias) em sistemas Linux. Se um servidor de aplicação
(como Tomcat) executar por um longo período de tempo, esse
problema irá causar o erro ‘too many open files’, e uma negação do
serviço”.
• Texto retirado de:
http://bugs.java.com/view_bug.do?bug_id=6745052
SOCKET DESCRIPTOR LEAK NA JDK
• Conexões SSL (Secure Socket Layer) criam um canal criptografado
entre um Servidor Web e um navegador (browser) para garantir que
todos os dados sejam sigilosos e seguros.
• Texto retirado de: http://www.comodobr.com/ssl_o_que_e.php
SOCKET DESCRIPTOR LEAK NA JDK
• Uma conexão socket que não se fecha caracteriza a ativação de uma
falta (AR Fault), pois temporariamente não produz um erro;
• Um conjunto de conexões abertas simultaneamente irão caracterizar
um erro(AR Error), que serão propagados até o sistema falhar (AR
Failure).
REPRODUÇÃO DO PROBLEMA
Figura 1 – Código-fonte construído para reproduzir o erro.
REPRODUÇÃO DO PROBLEMA
Figura 2 – Execução da classe test1.java com os parâmetros fornecidos em:
http://bugs.java.com/view_bug.do?bug_id=6745052
REPRODUÇÃO DO PROBLEMA
Figura 3 – Execução do comando lsof para verificar os arquivos de socket que estão abertos no sistema
REPRODUÇÃO DO PROBLEMA
• “When lsof prints ‘Can´t identify Protocol’, this usually relates to
sockets. So, somewhere in your code you are probably
connecting sockets and not closing them properly”.
• Texto retirado de:
http://stackoverflow.com/questions/7911840/seeing-too-many-
lsof-cant-identify-protocol
REPRODUÇÃO DO PROBLEMA
Figura 4 – Falha apresentada após o sistema ser parametrizado para abrir 9000 conexões
CONCLUSÃO
• Foi possível reproduzir o problema, contudo foi necessário um
número maior de conexões do que o mencionado no erro
reportado.
REFERÊNCIA
• GROTTKE, M., MATIAS JR., R, TRIVEDI, K.S.. The Fundamentals of
Software Aging. 2008. 6 pág. Software Reliability Engineering Workshops.
• Link http://bugs.java.com/view_bug.do?bug_id=6745052. Acesso em: 29
de Março de 2015.
• Link http://www.comodobr.com/ssl_o_que_e.php. Acesso em: 29 de Março
de 2015.
• Link http://stackoverflow.com/questions/7911840/seeing-too-many-lsof-
cant-identify-protocol. Acesso em: 29 de Março de 2015.

Mais conteúdo relacionado

Destaque

Experimentos envolvendo ações de Rejuvenescimento de Software
Experimentos envolvendo ações de Rejuvenescimento de SoftwareExperimentos envolvendo ações de Rejuvenescimento de Software
Experimentos envolvendo ações de Rejuvenescimento de SoftwareCarlos Eduardo
 
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...Carlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...Carlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...Carlos Eduardo
 
Mini Curso - Programação de Interfaces Gráficas - aula 2
Mini Curso - Programação de Interfaces Gráficas - aula 2Mini Curso - Programação de Interfaces Gráficas - aula 2
Mini Curso - Programação de Interfaces Gráficas - aula 2Carlos Eduardo
 
Mini Curso - Programação de Interfaces Gráficas - aula extra persistência
Mini Curso - Programação de Interfaces Gráficas - aula extra persistênciaMini Curso - Programação de Interfaces Gráficas - aula extra persistência
Mini Curso - Programação de Interfaces Gráficas - aula extra persistênciaCarlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de Controle
Programação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de ControleProgramação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de Controle
Programação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de ControleCarlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OO
Programação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OOProgramação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OO
Programação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OOCarlos Eduardo
 
Mini Curso - Programação de Interfaces Gráficas - aula 3
Mini Curso - Programação de Interfaces Gráficas - aula 3Mini Curso - Programação de Interfaces Gráficas - aula 3
Mini Curso - Programação de Interfaces Gráficas - aula 3Carlos Eduardo
 
Máquinas de turing com memória limitada
Máquinas de turing com memória limitadaMáquinas de turing com memória limitada
Máquinas de turing com memória limitadaCarlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - Aula 3
Programação Orientada a Objetos - Pós Graduação - Aula 3Programação Orientada a Objetos - Pós Graduação - Aula 3
Programação Orientada a Objetos - Pós Graduação - Aula 3Carlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1Carlos Eduardo
 
Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...
Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...
Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...Carlos Eduardo
 
Mini Curso - Programação de Interfaces Gráficas - aula 4
Mini Curso - Programação de Interfaces Gráficas - aula 4Mini Curso - Programação de Interfaces Gráficas - aula 4
Mini Curso - Programação de Interfaces Gráficas - aula 4Carlos Eduardo
 
When and Why Your Code Starts to Smell Bad
When and Why Your Code Starts to Smell BadWhen and Why Your Code Starts to Smell Bad
When and Why Your Code Starts to Smell BadCarlos Eduardo
 
Recommending refactoring operations in large software systems
Recommending refactoring operations in large software systemsRecommending refactoring operations in large software systems
Recommending refactoring operations in large software systemsCarlos Eduardo
 
CDI do básico ao avançado
CDI do básico ao avançadoCDI do básico ao avançado
CDI do básico ao avançadoAlberto Souza
 
Programação Orientada a Objetos - Pós Graduação - Aula 2
Programação Orientada a Objetos - Pós Graduação - Aula 2Programação Orientada a Objetos - Pós Graduação - Aula 2
Programação Orientada a Objetos - Pós Graduação - Aula 2Carlos Eduardo
 
Mini Curso - Programação de Interfaces Gráficas - aula 1
Mini Curso - Programação de Interfaces Gráficas - aula 1Mini Curso - Programação de Interfaces Gráficas - aula 1
Mini Curso - Programação de Interfaces Gráficas - aula 1Carlos Eduardo
 

Destaque (20)

Experimentos envolvendo ações de Rejuvenescimento de Software
Experimentos envolvendo ações de Rejuvenescimento de SoftwareExperimentos envolvendo ações de Rejuvenescimento de Software
Experimentos envolvendo ações de Rejuvenescimento de Software
 
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
A Measurement-Based Model for Estimation of Resource Exhaustion in Operationa...
 
Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 4 - refactoring com ho...
 
Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...
Programação Orientada a Objetos - Pós Graduação - Aula 5 - refactoring com ho...
 
Mini Curso - Programação de Interfaces Gráficas - aula 2
Mini Curso - Programação de Interfaces Gráficas - aula 2Mini Curso - Programação de Interfaces Gráficas - aula 2
Mini Curso - Programação de Interfaces Gráficas - aula 2
 
Mini Curso - Programação de Interfaces Gráficas - aula extra persistência
Mini Curso - Programação de Interfaces Gráficas - aula extra persistênciaMini Curso - Programação de Interfaces Gráficas - aula extra persistência
Mini Curso - Programação de Interfaces Gráficas - aula extra persistência
 
Programação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de Controle
Programação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de ControleProgramação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de Controle
Programação Orientada a Objetos - Pós Graduação - Aula 7 - Inversão de Controle
 
Programação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OO
Programação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OOProgramação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OO
Programação Orientada a Objetos - Pós Graduação - Aula 6 - Princípios OO
 
Mini Curso - Programação de Interfaces Gráficas - aula 3
Mini Curso - Programação de Interfaces Gráficas - aula 3Mini Curso - Programação de Interfaces Gráficas - aula 3
Mini Curso - Programação de Interfaces Gráficas - aula 3
 
Máquinas de turing com memória limitada
Máquinas de turing com memória limitadaMáquinas de turing com memória limitada
Máquinas de turing com memória limitada
 
Programação Orientada a Objetos - Pós Graduação - Aula 3
Programação Orientada a Objetos - Pós Graduação - Aula 3Programação Orientada a Objetos - Pós Graduação - Aula 3
Programação Orientada a Objetos - Pós Graduação - Aula 3
 
Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1Programação Orientada a Objetos - Pós Graduação - aula 1
Programação Orientada a Objetos - Pós Graduação - aula 1
 
Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...
Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...
Programação Orientada a Objetos - Pós Graduação - Aula 8 - Bad Smells & Desig...
 
NoSql
NoSqlNoSql
NoSql
 
Mini Curso - Programação de Interfaces Gráficas - aula 4
Mini Curso - Programação de Interfaces Gráficas - aula 4Mini Curso - Programação de Interfaces Gráficas - aula 4
Mini Curso - Programação de Interfaces Gráficas - aula 4
 
When and Why Your Code Starts to Smell Bad
When and Why Your Code Starts to Smell BadWhen and Why Your Code Starts to Smell Bad
When and Why Your Code Starts to Smell Bad
 
Recommending refactoring operations in large software systems
Recommending refactoring operations in large software systemsRecommending refactoring operations in large software systems
Recommending refactoring operations in large software systems
 
CDI do básico ao avançado
CDI do básico ao avançadoCDI do básico ao avançado
CDI do básico ao avançado
 
Programação Orientada a Objetos - Pós Graduação - Aula 2
Programação Orientada a Objetos - Pós Graduação - Aula 2Programação Orientada a Objetos - Pós Graduação - Aula 2
Programação Orientada a Objetos - Pós Graduação - Aula 2
 
Mini Curso - Programação de Interfaces Gráficas - aula 1
Mini Curso - Programação de Interfaces Gráficas - aula 1Mini Curso - Programação de Interfaces Gráficas - aula 1
Mini Curso - Programação de Interfaces Gráficas - aula 1
 

Semelhante a Socket Descriptor Leak na JDK

Projeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordProjeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordtchandy
 
Três anos de Scala em Produção: desafios, aprendizados e dores de cabeça
Três anos de Scala em Produção: desafios, aprendizados e dores de cabeçaTrês anos de Scala em Produção: desafios, aprendizados e dores de cabeça
Três anos de Scala em Produção: desafios, aprendizados e dores de cabeçaFelipe Hummel
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem JavaUFPA
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebElenilson Vieira
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationMario Sergio
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Helder da Rocha
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)Mario Sergio
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorAllyson Barros
 
Bancos de dados e jdbc java para desenvolvimento web
Bancos de dados e jdbc   java para desenvolvimento webBancos de dados e jdbc   java para desenvolvimento web
Bancos de dados e jdbc java para desenvolvimento websilvio_sas
 
Apostila de programacao java
Apostila de programacao javaApostila de programacao java
Apostila de programacao javaCleber Costa
 
1089335456 paper 4 sockets em java
1089335456 paper 4   sockets em java1089335456 paper 4   sockets em java
1089335456 paper 4 sockets em javajosealcides2005
 
Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,
Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO, Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,
Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO, Vinicius Pulgatti
 
Ionic Framework - Parte 1 - Iniciando um Projeto mais Robusto
Ionic Framework - Parte 1 - Iniciando um Projeto mais RobustoIonic Framework - Parte 1 - Iniciando um Projeto mais Robusto
Ionic Framework - Parte 1 - Iniciando um Projeto mais RobustoAlamo Saravali
 

Semelhante a Socket Descriptor Leak na JDK (20)

Curso tomcat
Curso tomcatCurso tomcat
Curso tomcat
 
Projeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecordProjeto Octopus - Database Sharding para ActiveRecord
Projeto Octopus - Database Sharding para ActiveRecord
 
MC - Java Enterprise Edition 6 (Java EE)
MC - Java Enterprise Edition 6 (Java EE)MC - Java Enterprise Edition 6 (Java EE)
MC - Java Enterprise Edition 6 (Java EE)
 
Três anos de Scala em Produção: desafios, aprendizados e dores de cabeça
Três anos de Scala em Produção: desafios, aprendizados e dores de cabeçaTrês anos de Scala em Produção: desafios, aprendizados e dores de cabeça
Três anos de Scala em Produção: desafios, aprendizados e dores de cabeça
 
1409243945064
14092439450641409243945064
1409243945064
 
Desafio Rest API
Desafio Rest APIDesafio Rest API
Desafio Rest API
 
Introdução a Linguagem Java
Introdução a Linguagem JavaIntrodução a Linguagem Java
Introdução a Linguagem Java
 
Sistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias WebSistema S2DG e Tecnologias Web
Sistema S2DG e Tecnologias Web
 
Curso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web ApplicationCurso de Java (Parte 7) Web Application
Curso de Java (Parte 7) Web Application
 
Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)Curso de WebServlets (Java EE 7)
Curso de WebServlets (Java EE 7)
 
Curso de Java (Parte 5)
Curso de Java (Parte 5)Curso de Java (Parte 5)
Curso de Java (Parte 5)
 
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem DorPlay Framework - Desenvolvendo Aplicações Web com Java sem Dor
Play Framework - Desenvolvendo Aplicações Web com Java sem Dor
 
Infrastructure Testing
Infrastructure TestingInfrastructure Testing
Infrastructure Testing
 
Bancos de dados e jdbc java para desenvolvimento web
Bancos de dados e jdbc   java para desenvolvimento webBancos de dados e jdbc   java para desenvolvimento web
Bancos de dados e jdbc java para desenvolvimento web
 
Java 16 Jdbc
Java 16 JdbcJava 16 Jdbc
Java 16 Jdbc
 
Apostila de programacao java
Apostila de programacao javaApostila de programacao java
Apostila de programacao java
 
1089335456 paper 4 sockets em java
1089335456 paper 4   sockets em java1089335456 paper 4   sockets em java
1089335456 paper 4 sockets em java
 
Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,
Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO, Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,
Apresentação Java, SOA, MICROSERVICE, HTTP, HTTPS, VERSIONAMENTO DE CONTRATO,
 
servlet-introducao
servlet-introducaoservlet-introducao
servlet-introducao
 
Ionic Framework - Parte 1 - Iniciando um Projeto mais Robusto
Ionic Framework - Parte 1 - Iniciando um Projeto mais RobustoIonic Framework - Parte 1 - Iniciando um Projeto mais Robusto
Ionic Framework - Parte 1 - Iniciando um Projeto mais Robusto
 

Socket Descriptor Leak na JDK

  • 1. “Apresentação do problema Socket Descriptor Leak encontrado na JDK” Publicado em setembro de 2008 Disponível em: http://bugs.java.com/view_bug.do?bug_id=6745052 Apresentador: Carlos Eduardo Dantas
  • 2. ROTEIRO • Introdução. • Socket Descriptor Leak na JDK. • Reprodução do problema. • Conclusão.
  • 3. INTRODUÇÃO • Socket Descriptor Leak ocorre quando conexões via sockets são abertas, e por algum motivo, não são fechadas, especialmente do lado servidor; • O acúmulo de conexões abertas sem fechar pode ocasionar uma falha no decorrer do tempo, já que servidores possuem um limite de conexões abertas simultaneamente.
  • 4. SOCKET DESCRIPTOR LEAK NA JDK • Reportado em 05/09/2008, apresentando as versões 1.6.0_02, 1.6.0_04 e 1.5.0_14. • Corrigido em 22/11/2008. • Fonte: link http://bugs.java.com/view_bug.do?bug_id=6745052
  • 5. SOCKET DESCRIPTOR LEAK NA JDK • “Descritores de arquivos referente a sockets TCP não são liberados corretamente quando se usa a classe SSLServerSocket (especialmente com muitas instâncias) em sistemas Linux. Se um servidor de aplicação (como Tomcat) executar por um longo período de tempo, esse problema irá causar o erro ‘too many open files’, e uma negação do serviço”. • Texto retirado de: http://bugs.java.com/view_bug.do?bug_id=6745052
  • 6. SOCKET DESCRIPTOR LEAK NA JDK • Conexões SSL (Secure Socket Layer) criam um canal criptografado entre um Servidor Web e um navegador (browser) para garantir que todos os dados sejam sigilosos e seguros. • Texto retirado de: http://www.comodobr.com/ssl_o_que_e.php
  • 7. SOCKET DESCRIPTOR LEAK NA JDK • Uma conexão socket que não se fecha caracteriza a ativação de uma falta (AR Fault), pois temporariamente não produz um erro; • Um conjunto de conexões abertas simultaneamente irão caracterizar um erro(AR Error), que serão propagados até o sistema falhar (AR Failure).
  • 8. REPRODUÇÃO DO PROBLEMA Figura 1 – Código-fonte construído para reproduzir o erro.
  • 9. REPRODUÇÃO DO PROBLEMA Figura 2 – Execução da classe test1.java com os parâmetros fornecidos em: http://bugs.java.com/view_bug.do?bug_id=6745052
  • 10. REPRODUÇÃO DO PROBLEMA Figura 3 – Execução do comando lsof para verificar os arquivos de socket que estão abertos no sistema
  • 11. REPRODUÇÃO DO PROBLEMA • “When lsof prints ‘Can´t identify Protocol’, this usually relates to sockets. So, somewhere in your code you are probably connecting sockets and not closing them properly”. • Texto retirado de: http://stackoverflow.com/questions/7911840/seeing-too-many- lsof-cant-identify-protocol
  • 12. REPRODUÇÃO DO PROBLEMA Figura 4 – Falha apresentada após o sistema ser parametrizado para abrir 9000 conexões
  • 13. CONCLUSÃO • Foi possível reproduzir o problema, contudo foi necessário um número maior de conexões do que o mencionado no erro reportado.
  • 14. REFERÊNCIA • GROTTKE, M., MATIAS JR., R, TRIVEDI, K.S.. The Fundamentals of Software Aging. 2008. 6 pág. Software Reliability Engineering Workshops. • Link http://bugs.java.com/view_bug.do?bug_id=6745052. Acesso em: 29 de Março de 2015. • Link http://www.comodobr.com/ssl_o_que_e.php. Acesso em: 29 de Março de 2015. • Link http://stackoverflow.com/questions/7911840/seeing-too-many-lsof- cant-identify-protocol. Acesso em: 29 de Março de 2015.