본문 바로가기
728x90

분류 전체보기970

Java VM Core Dump 분석 대부분의 문제 발생 원인(리스트는 우선 순위가 아닙니다.) 1. 해당 어플리케이션이 사용하는 Native 코드 사용시 발생 2. 모든 Type 2 JDBC 드라이버는 native DBMS 라이브러리를 사용하므로 이러한 유형의 오류가 발생할 수 있습니다. 이 드라이버가 문제의 원인인지 판별하려면 pure java(Type 4) JDBC .. 2018. 4. 19.
Java Memory Model Java Memory Model JVM(Java Virtual Machine) Machine이라는 말이 들어가 있지만 실제로는 Software. Machine이라는 말이 들어간 이유는 JVM이 실제적으로 CPU와 같은 역할을 하기 때문이다. Program은 CPU 위에서 돌아간다. C나 C++과 같은 프로그램 에서 Compile된 코드(native code)는 CPU에서 바로 실행이 가능하다. 하.. 2018. 4. 19.
Capacity Patterns(용량 패턴) Capacity Patterns(용량 패턴) 풀 연결 리소스 풀은 연결 설정에 필요한 시간을 제거하기 때문에 용량을 극적으로 개선시킬 수 있다. 연결 풀 사용 중 연결 상태가 안 좋아 질 수 있다. 상태가 안 좋은 연결을 사용하려는 모든 요청에 에러가 발생할 것이다. 상태가 안 좋은 연결 풀을 복구할 수 .. 2018. 4. 19.
Capacity Anti-Patterns(용량 안티패턴) -2 손으로 만든 SQL 개발자가 만든 SQL은 너무나 독특하고 예측할 수 없다. 1. 인덱스가 없는 컬럼에 자주 조인한다. 2. 일반적으로 너무 많은 테이블에 조인한다. 간단한 관계인 경우 ORM 패키지를 사용해야 한다. 3. 개발자는 SQL을 실질적인 집합기반의 관계형 언어가 아닌 절차형 언어나 객체지.. 2018. 4. 19.
Capacity Anti-Patterns(용량 안티패턴) -1 리소스 풀 경쟁 리소스 풀은 잘 사용한다면, 모든 연결 풀은 작업량을 향상시킴으로써 용량을 개선할 수 있다. 그렇지만 방치해 버린다면, 순식간에 리소스 풀은 어플리케이션에서 가장 큰 병목구간이 될 수 있다. 자원에 대한 경쟁이 있을 때 병목현상이 일어난다. 더 많은 쓰레드가 가용.. 2018. 4. 19.
안정성 안티패턴 - 3 8. 용량 불균형 서버와 스레드 개수를 조사하자. - 분산환경에서 앞단과 뒷단 서버의비율을 검토하자. 각 영역이 처리할 수 있는 스레드 개수를 확인한다. 비슷한 확장 효과와 사용자를 관찰하자. - 불균형 용량은 확장 효과의 특별한 경우다. 관계 속에서 한편을 다른 편에 비해서 훨씬 크.. 2018. 4. 19.
728x90