개발서적
패턴과 아키텍처는 잘 구성되어 있는가?너무 많은 패턴을 사용하지 않았는가?너무 많은 패턴을 적용하면 유지보수성이 떨어지고, 문제가 발생했을 때 추적하기가 어려워진다.좋은 패턴이라고 무작정 적용하기보다는 꼭 필요한 패턴만을 사용해야 한다.데이터를 리턴할 때 TO(혹은 VO) 패턴을 사용하였는가? 아니면 Collection 관련 클래스를 사용하였는가?데이터를 주고 받는 시간을 절약하기 위해서 일반적으로 TO 패턴을 사용한다.그리고 때에 따라서는 Collection 관련 클래스를 사용하기도 한다.이러한 패턴을 적용하지 않았거나 관련 표준을 정하지 않고 개발을 할 경우 시스템의 응답 시간도 영향이 있겠지만, 유지 보수성이 떨어진다.게다가 HashMap으로 데이터를 주고 받으면, 소스를 완전히 뜯어 보지 않는 이..
암달의 법칙1 Core에서 20시간 소요되는 작업 중 1시간은 절대 개선할 수 없다면, 20배 이상의 성능 향상은 불가능성능 개선율1/((1-P) + P/S)P는 개선 가능한 부분의 비율 / 개선 가능한 부분이 100% => 1S는 개선된 정도 / 2배의 성능 향상이 이루어 졌다면 S = 2 성능 튜닝 step by step원인 파악어디가 병목인지 확실히 파악목표 설정성능 개선뿐만 아니라, 향후 유지보수까지 모두 고려해서 목표를 설정튜닝 실시코드를 최적화하며 튜닝개선율 확인결과가 만족스럽지 않은 경우에는 '튜닝 실시' 단계록 다시 넘어가서 진행결과 정리 및 반영되도록 꼭 필요한 사항들만 정리 성능 튜닝의 비법하나만 보지 말아라병목의 대상대상세부 대상서버 장비CPU, Network, Disk, Memo..
대상 찾기상위 20%의 화면을 분석 및 튜닝 대상으로 선정기존 시스템 모니터링 툴의 통계 기능을 사용하여 찾기기존 시스템의 웹 로그를 분석하기 예시구분화면명초기 화면로그인원무환자 접수 신청진료환자조회처방전 지정치료 일수 입력처방 내림외래 기록지 저장원무수납 조회수납 처리CASE1안내원은 환자의 이름을 '김'으로만 조회했다그런데 시스템의 응답이 없어서 안내원은 계속 검색 버튼을 누르기 시작했다안내원이 검색을 누른 후부터 해당 애플리케이션이 DB의 CPU 대부분을 점유했고DB쿼리의 문제로 오픈이 연기되었다CASE2한 시스템이 매일 14~16시 사이에만 다운되는 현상이 있어 진단이 시스템은 내부용 시스템이 아니라 대외로 오픈된 시스템임시스템의 로그 분석을 해서 하나의 화면이 한 시간에 10만 번 이상 호출되는..