부하가 높을 때 성능이 크게 저하됩니다. 이것은 메시지 기반 bean 기반의 편안한 API입니다. 초당 평균 27 건의 평균 부하에 대해 websphere 애플리케이션 서버의 두 노드에서 최대 서버 세션을 20으로 구성했으며 대기열 연결 팩토리 세션 풀을 20으로 유지하고 JDBC 연결 풀을 20으로 유지했습니다. 타임 아웃없이 1 초 만에 응답을 얻을 수있었습니다.응용 프로그램의 성능 튜닝
평균로드의 3 배, 즉 초당 80 히트 인 피크로드에서는 응용 프로그램이 절반 이상의 요청 시간이 초과되고 평균 응답 시간이 6 초로 길어질 때 성능이 떨어집니다.
최대로드 최대 서버 세션 수는 각 노드마다 40, 큐 연결 팩토리 세션 풀은 40, JDBC 연결 풀 수는 40으로 늘었습니다. HP Diagnostics를 통해 모니터링 할 때 데이터베이스 서버의 CPU 사용률이 매우 높았으며, 즉 최대 98 %.
제 질문은 데이터베이스 연결 수가 많아 질수록 CPU 사용률이 빠르게 증가하거나 해고되는 쿼리에 더 의존하는 것입니다. 또한 JDBC 연결 풀의 연결 수를 줄이거 나 MDB 인스턴스 당 하나의 연결을 가져야합니다.
피크로드 상태에서 성능을 향상시킬 수있는 방법을 제공하십시오.
여기에는 많은 변수가 있습니다. 대부분의 경우 필요에 따라 연결을 만드는 비용이 비싸기 때문에 항상 풀 연결을 사용해야합니다. 응용 프로그램을 프로파일 링하고 응용 프로그램의 처리 시간이 긴 부분을 먼저 찾아 볼 것을 권장합니다. 외부 DB에 대한 생각은 DB 소프트웨어, CPU 사용 가능, 디스크 IO 및 동일한 머신 네트워크 IO에 있지 않은지 여부에 따라 DB의 처리량이 전체적으로 달라야한다는 것입니다. 응용 프로그램이 정상적으로 작동하고 DB 처리량이 좋을 수 있습니다. 응용 프로그램을 DB로 조절할 수도 있고하지 않을 수도 있습니다. – Underbalanced
성능 테스트가있는 경우 피크로드로 테스트 해보고 다른 설정이 처리량에 미치는 영향을 확인하십시오. – Kayaman
@ 카야 만 나는 당신의 요점을 이해하지 못했습니다. 어느 설정을 참조하고 있습니까? – Neel