자바 servlet 성능시험
글쓴이: dolhani / 작성시간: 목, 2004/08/12 - 5:15오후
WAS(Web Application Stress)를 사용해서
제가 만든 servlet 성능 시험을 하고 있습니다.
servlet은 HttpServlet class를 확장한 기본적인 형태구요,
service method 에서 필요한 계산을 하고 있습니다.
serivce method 를 synchronized keyword 를 사용해서 동기화 했을 경우와 동기화 하지 않았을 경우,
후자가 더 좋은 성능(같은 시간동안 더 많은 page hit수)을 보여야 할 것 같은데
시험 결과는 전자가 더 좋게나옵니다.
(왜냐하면 전자는 한 사용자가 service method 를 호출해서 서비스를 받고 있는 동안 다른 사용자들은 모두 기다려야 하고, 후자의 각각의 thread 로 처리가 되므로, Thread 20 개로, 1분-5분 시험)
왜 이런 결과가 나오는지 궁금합니다.
의견 부탁 드립니다.
미리 감사 드립니다.
Forums:
전 정확히는 모릅니다만,Servlet 이 일단 생겨지면, 메모리에
전 정확히는 모릅니다만,
Servlet 이 일단 생겨지면, 메모리에서 destroy() 가 불려지기 전까지는
서비스를 하는것으로 압니다.
만약에 service() 메써드가 상당히 독립적이라고 가정하면,
어쩌면 (적다고 볼지 모르지만) Thread 의 스케줄링 만큼의 오버헤드가
발생하지 않을까요?
즉, Queue 에서 20개의 request 를 차례로 처리하는것과
20개의 request 가 동시에 들어온후 VM 에서 스케줄을 하는것..
service() 가 상당히 독립적이란 가정이 있을땐 그럴지도 모른단 말이죠~~
딴지 부탁합니다~~~
삽질의 대마왕...
댓글 달기