24. 애플리케이션에서 점검해야 할 대상들
컴퓨터 이야기/JAVA 2008/06/25 00:19 |패턴과 아키텍처는 잘 구성되어 있는가?
- 너무 많은 패턴을 사용하지 않았는가?
- 데이터를 리턴할때 TO(혹은 VO)패턴을 사용하였는가? 아니면 Collection 관련 클래스를 사용하였는가?
- 서비스 로케이터(Service Locator) 패턴은 적용이 되ㅏ어 있는가?
기본적인 애플리케이션 코딩은 잘 되어 있는가?
- 명명 규칙은 잘 지켰는가?
- 필요한 부분에 예외 처리는 되어 있는가?
- 예외 화면은 지정되어 있는가?
- 예외 정보를 혹시 e.printStackTrace()로만 처리하고 있지 않는가?
- System.gc() 메소드가 소스에 포함되어 있지 않은가?
- System.exit() 메소드가 소스에 포함되어 있지 않은가?
- 문자열을 계속 더하도록 코딩하지는 않았는가?
- StringBuffer나 StringBuilder 클래스도 제대로 사용했는가?
- 무한 루프가 작동할 만한 코드는 없는가?
- static 남발하지 않았는가?
- 필요한 부분에 synchronized 블록을 사용하였는가?
- IO가 계속 발생하도록 개발되어 있지 않은가?
- 필요 없는 로그는 다제거 했는가?
- 디버그용 System.out.println은 다 제거했는가?
웹관련 코딩은 잘 되어 있는가?
- JSP의 include는 동적으로 했는가? 아니면 정적으로 했는가?
- 자바 빈즈는 너무 많이 사용하지 않았나?
- 태크 라이브러리 적절하게 사용했나?
- EJB는 적절하게 사용하였나?
- 이미지 서버를 사용할 수 있는 환경인가?
- 사용 중인 프레임웍은 검증 되었는가?
DB관련 코딩은 잘 되어 있는가?
- 적절한 JDBC 드라이버를 사용하는가?
- DB Connection, Statment, ResultSet은 잘 닫았는가?
- DB Connection Pool은 잘 사용하고 있는가?
- 자동 커밋 모드에 대한 고려는 하였는가?
- ResultSet.last() 메소드를 사용하였는가?
- PreparedStatements를 사용하였는가?
서버의 설정은 잘 되어 있는가?
- 자바 VM 관련 옵션들은 제대로 설정되어 있는가?
- 메모리는 몇 MB로 설정해 놓았는가?
- GC 설정은 어떻게 되어 있는가?
- 서버가 운영 모드인지 개발모드인지 확인 하였는가?
- WAS의 인스턴스가 몇 개 기동되고 있는가?
- JSP Precomplie 옵션은 지정해 놓았는가?
- DB Connection Pool 개수가 스레드 개수는 적절한가?
- 세션 타입아웃 시간은 적절한가?
- 검색 서버가 있다면, 검색 서버에 대한 설정 및 성능 테스트를 하였는가?
모니터링은 어떻게 하고 있는가?
- 웹로그는 남기고 있는가?
- verbosegc 옵션은 남기고 있는가?
- 각종 로그 파일에 대한 규칙은 있는가?
- 서버의 시스템 사용률은 로그로 남기고 있는가?
- 모니터링 툴은 사용 중인가?
- 모니터링 툴에 대한 설정은 적절하게 되어 있는가?
- 서버가 갑자기 코어 덤플를 발생시키지 않는가?
- 응답 시간이 너무 느리지 않은가?
이 글은 스프링노트에서 작성되었습니다.

댓글을 달아 주세요