SI,포털,공공 프로젝트 개발
* 주요 프로젝트
1. 프로젝트명: 한국장학재단 시스템 운영
2. 고객: 한국장학재단
3. 주요사용언어: Java
4. 기술스택: Spring(MVC, Batch, Data), Servlet, MiPlatform, Jeus, Oracle
5. 기간: 2013/01 ~ 2014/02
6. 역할: Application architecture
7. 역할상세
A. 솔류션 운영관리(SSO, Control-M, Anyframe Enterprise, EAM, MiPlatform, Report Designer)
B. Application Configuration(web.xml, applicationContext.xml etc..) 관리
C. 시스템 운영개발자 기술지원(약 50명)
D. 표준개발 가이드 업데이트 및 배포
E. 장애대응: HTTP packet 분석, Thread/Heap Dump file 분석, 로그파일 분석, 인프라팀(DBA,보안,네트웍,미들웨어,연계)과 적극적인 커뮤니케이션, etc..
8. 주요내용
A. Batch Agent 의 Job Queue 동기화문제로 인해 동일배치가 2번실행되는 문제 원인분석
B. 시스템간 연계( Portal WAS:EUC-KR -> 연계:MS949 -> 기간계:UTF-8 > DBMS:MS949)
C. 메인페이지 성능향상을 위한 Cache architecture 제안 및 구현체 제공(Ehcache)
D. 기간계쪽에서 엑셀다운로드시 비정기적으로 발생하는 OOM 원인분석 및 해결방안 제시 -> 일부사용자가 대용량의 데이타를 엑셀다운로드를 필요로 하는 경우가 있으로 엑셀파일을 Server-Side에서 생성(Apache POI XSSF API) 하고 스트리밍으로 전송하는 방식
E. WAS(JEUS)가 다수의 사용자가 접속시 간헐적으로 Hang-up현상 발생하는 원인분석 -> JEUS의 Connection Pool에서 Idle connection을 모두 사용할 경우 5개씩 최대 80개까지 Connection을 늘리는데 이때 선행 Thread가 Connection Factory instance를 lock를 잡게되고 후행 Thread는 lock을 대기하게 되는데, Connection을 확보하는 시간보다 Queue에 누적되는 Thread가 더 많아지면서 Connection 80개(최대)까지 확보될 때 까지(수초) Hang-up이 발생하고 해소되기를 반복하게 되는 문제로 Tmaxsoft에 버그리포트 되고, Connection Pool의 설정을 초기값과 최대값을 동일하게 운영하면서 문제를 해결함
더보기