오라클쪽 문제는 아니고, 운영중인 SW의 java 오류다... 카테고리 따로 만들기는 귀찮기 때문에 그냥 여기에 작성중


[ERROR]|java.io.IOException: Too many open files (errno:24)

        at sun.nio.ch.ServerSocketChannelImpl.accept0(Native Method)

        at sun.nio.ch.ServerSocketChannelImpl.accept(ServerSocketChannelImpl.java:150)

        at com.ubimeta.lib.net.manager.ServerSocketManager.acceptPendingConnections(ServerSocketManager.java:222)

        at com.ubimeta.lib.net.manager.ServerSocketManager.run(ServerSocketManager.java:159)


현재 시스템에서 나고있는 오류다.


계속 발생하는건 아니고, 비 주기적으로 발생하는 오류.


물론 이 오류는 어떠한 근본적인 문제가 발생해서 나는 부가적인 오류다.


단순하게 ulimit에서 한계를 65535로 늘리는건 전혀 해결법이 되지 못한다.


lsof에서 확인해보니 Close_wait 상태의 항목이 계속 늘어나고있다.


미들웨어 SW쪽에 버그가 있는듯한데, 이게 지금에와서야 발생한 이유도 모르겠거니와, SW쪽 유지보수가 어떤 이유로 인해 종료, 재계약을 할 수 없는 바람에 수정도 불가능한 상황이다.


-----------------------------------------------------------------------------------------------------------------


해결은 결국 못했다. 아무것도 효과가 없다. SW쪽을 건들여야하는데, 소스마저도 받지 못한 상태라 아무것도 할 수가 없다.


일단은 매일마다 crontab을 이용하여 SW 재기동을 하고있는데, 이건 완전 임시방편... 뭐, 이렇게만해도 위의 문제가 발생할 확률이 적긴하다.


하지만 완전히 고쳐진건 아니기 때문에, 언제 다시 문제가 터질지 모르는 일.



하아............


일단 올해 내에 미들웨어 개발도 진행할 예정이니 내년 중순쯤에는 신규 미들웨어로 교체할 수 있고, 그러면 문제가 자연스럽게 해소될것으로 생각된다.

블로그 이미지

광훨

,