이 글은 그 동안 내가 일하면서 경험한 것을 토대로 쓰는 거야.
그러니까 여기에 없는 다른 여러 가지 이유가 있을 수도 있어.
내가 일을 여러 가지 하지만 그 중엔 Java로 도는 것들도 있어.
지금까지 죽은 경우를 여러 번 봤고, 원인을 조사하기 위해 Heapdump 분석도 해보고, Profiling 도 해보고 하는데,
결론은, 보통 네 가지 중 하나였어.
1. 신입이나 땔감이 아무 생각없이 메모리를 왕창 먹게 코드를 짰어.
매우 현실적이면서 가장 자주 발생하는 유형이야.
전공자라도 실무 경험이 없는 신입은 이런 걸 종종 만들지.
2. 갑자기 처리해야 할 데이터가 예상 수준을 몇 배 초과하여 늘어나는 경우가 있어.
이런 이벤트는 2 ~ 3년에 한 번 정도 발생하는 것 같아.
IMF 직전에 카드사 서버들 사용량 폭증해서 미쳐 날뛸려고 했다고 하는 얘기도 있잖아.
3. WAS 또는 사용하는 Framework의 버그
이것도 생각보다는 자주 나와. 2 ~ 3 년에 한두 번 정도 있는 것 같아.
4. 애초에 하드웨어 사양 잡을 때 CPU, 메모리가 턱없이 낮게 잡히는 경우가 있어.
플젝 입찰에서 가격 낮추려고 영업이 이런 데 까지 장난을 한 걸로 보여.
어쩌겠어. 서버에 램 CPU 더 꼽아야지.
범인은절름바리다
과거형이기 때문이다 was 는 is의 과거형 그래서 오늘밤이 아닌 어제밤에 죽은것
영잘알이또