2017-10-17 1 views
0

나는 두 개의 입력 필드가없는 간단한 HTML 페이지가있다. CSS는없고, 아무 것도 디자인하지 않는다. 페이지 크기는 134KB입니다. 내 성능 테스트 테스트 케이스에서 나는 한 번에 모두 25 명의 동시 사용자가있는 페이지를로드하려고합니다. 나는 Jmeter와 Junit (다중 스레드)로 테스트를 수행했다. 모든 스레드가 가동되면 서버 CPU 사용량이 100 %에 도달합니다. 이것은 정상적인 행동입니까? 아니면 그게 문제 죠? 왜 그렇게됩니까? 같은 서버에서 다른 페이지와 동일한 시나리오를 복제했으며 CPU 사용량은 동일합니다. 10 동시 사용자 CPU 사용률은 30-75 %입니다. 나는 성능 테스트가 처음이다.25 명의 동시 사용자 만 서버 CPU 사용량이 100 %에 도달하는 이유는 무엇입니까?

+1

페이지를 제공하는 데 사용되는 프레임 워크는 무엇입니까? 나는 자바 기반을 추측하고있다. –

+0

시간을 생각하십니까? 페이싱? 가능한 한 빨리 망치질 만할까요? –

답변

0

평범하고 서버 RAM/코어에 따라 달라지며, 단순 정적 사이트 인 경우 정적 파일 캐싱을 사용하고 사용중인 스택을 지정하면 수행 할 단계를 얻을 수 있습니다.

+0

예, 거래 시간이 짧으면 정상입니다. 나는. 하나의 HTTP 요청을 생성하는 것은로드 생성기에 대해 일정 시간의 CPU 시간을 필요로하므로 단일 CPU 코어에서 초당 생성 할 수있는 요청 수에 제한이 있습니다. 예를 들어 네트워크 지연이나 느린 서버로 인해 HTTP 트랜잭션이 1 초가 걸린다면 최대 25 개의 요청을 25 개의 스레드로 처리 할 수 ​​있습니다. 이것은 아마 여러분 컴퓨터의 CPU에 문제가되지는 않을 것입니다. 그러나 트랜잭션 시간이 0.01ms 인 경우 25VU 스레드의 이론적 인 한계는 250 만 요청/초입니다. 8 코어가 아마 100 % 바쁠 것입니다. – Ragnar

+0

@Ragnar 거기에 8 코어가있는 것처럼 지정된 곳이 없으며 질문자가 정적 페이지라고 말했기 때문에 서버 측을 처리하는 로직이 많지는 않지만 여전히 i 일부 I/O 차단을 의심합니다 –

+0

@RamiReddy 페이지의 Wappalyzer 세부 정보입니다. 자바 스크립트 프레임 워크 => Moment.js, jQuery를 3.2.1 웹 프레임 워크 => 트위터 부트 스트랩 웹 서버 => 아파치 2.4.17 프로그래밍 언어 => PHP 5.6.23 운영 체제 => 윈도우 서버 웹 서버 확장 = > OpenSSL 1.0.2d 서버 시스템에는 8GB RAM과 4 코어 CPU 3.0GHz가 있습니다. 페이지를로드하는 중이며 채우거나 제출하지 않습니다. – user8784770

관련 문제