SORU
16 ŞUBAT 2010, Salı


Çok fazla açık dosya: açık, nasıl, ne olduklarını, ve JVM açın nasıl

Java: bu özel durum alıyorum

java.io.FileNotFoundException: (Too many open files) 

Yöntemlerle bu sorunu ortadan kaldırmak için arıyorum.

Bu hata belli ki JVM çok işler ayırdı ve temel işletim sistemi daha fazla izin vermeyeceğini gösterir. Ya da kapalı bir yerde yanlış bağlantı/akış ile sızıntı var.

Bu işlem gün boyunca durmadan çalışır ve sonunda istisna atar. Sürekli çalışma süresi 12-14 gün sonra olur.

Bu nasıl savaşılır? Bir şekilde belli miktarda çarptığında JVM veya parça kolları ayrılmış listesi var mı? Onları bastırmak ve nasıl büyür ve ne zaman görmek isterim. Bir üretim sistemi ve zorluklar kalkınma çoğalır çünkü bir profiler kullanamam. Herhangi bir öneri?

Boş bir yığın boyutu izleme ve bir "alarm toplamının %1 % yaklaştığında"- Xmx belirtildi. biriktiriyorum Ben de eğer benim iplik 500, sonra bir şey kesinlikle yukarıda hit sayısı elden gidiyor. Şimdibir şekilde biliyorbenim JVM ayırırçok fazla işlerve onları geri, örneğin yuva, vermez OS dosyaları, vb açtı. Eğer bunu biliyordu olsaydım, nerede ve ne zaman tanırım.

CEVAP
16 ŞUBAT 2010, Salı


Çalışan olan bir şey demedin, ama eğer Linux üzerinde çalıştırıyorsanız lsof komutunu kullanabilirsiniz

lsof -p <pid of jvm>

Tüm dosyaları JVM tarafından açılan liste. Veya eğer Windows üzerinde çalıştırıyorsanız, tüm işlemler için açık olan tüm dosyaları gösterir 4**.

Bunu umarım size dosyaları açmak koruyan daraltacak.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Dion Coulls

    Dion Coulls

    16 AĞUSTOS 2006
  • Jonathan D.

    Jonathan D.

    3 Kasım 2006
  • julioissk84life

    julioissk84l

    18 ŞUBAT 2008