L4 구성 서버 6대 (v2cpu, mem 16Gb )
1대 서마다 (nginx1.19 + Tomcat 9.0.x)
사용하는 유저입니다.
특정시간에 동시접속사용가 몰리는데 tomcat 에서 처리를 못하는거 같습니다.
- APM 기준으로 동접당 450?정도 몰릴떄가 있습니다.
maxThread 는 어느정도까지 설정 해야 안정적으로 운영될가요?
현재는 500으로 체크해놓고 있습니다. 500이 안정적이라고 해서 더 올려도 될까요?
현 guest os 당 vcpu 2-> 4개로 올리면 세션 몰릴때 어느정도 안정이 될까요?
동시접속처리하는 우선적인 hw기준이 어떤것인지도 궁금합니다.
경험이 많으신분들의 의견 부탁드립니다.
해당 질문의 문제를 해결, 도움이 되는 선택된 답변이 있습니다.
작성된 다른 답변도 확인해 보시기 바랍니다..
4개의 답변이 있습니다.
로그분석해보신 후 문제점 해결하시는게 제일 좋지요.
동접숫자상은 크지 않아 보이는데 트래픽은 꼭 선형비례하지는 않기도 하지요
CPU, RAM 업그레이드 가능하면 이부분 진행해 보세요
엔진엑스+tomcat 6대로 동접 450정도는 큰 사이트는 아닌것 같습니다.
동접때 APM에서 처리 시간도 늦어지는지 체크 해보시구요.
처리시간이 평상시와 동접 max 차이가 많다고 하면 CPU를 늘려주시는게 좋습니다.
성능의 가장 큰 효과는 CPU 처리입니다.
메모리의 경우 tomcat은 기본적으로 Heap memory 설정이라 힙메모리는 설정 값이
확인 해보시고 조금씩 조정하면서 처리속도를 보시면서 튜닝하시면 좋습니다.
maxthread 500 * 6대 로드밸런싱이기때문에 최대 3000이라 부족해 보이지는 않습니다.
그리고 처리 속도가 느린 SQL도 튜닝하시면 효과 많이 보실것 같습니다.
라크렐라 | 약 2년 전
heap memory 설정을늘리고 vcore 수를 조절하니 조금 버틸만합니다.
답변주셔서 감사합니다.
구축되어 있는 서비스 내용에 따라 차이가 있지 않을까 싶어 보이고요.
우선적으로 메모리, CPU가 좀더 확장되어 주는게 맞지 않을까 싶어 보이네요.
PC도 아니고... 서버인데... 메모리가 16G는 너무 적은 것 같네요.
로드밸런싱까지 하는 서버라면... 64G, 128G 정도는 메모리를 꽂아서 사용하는게 좋지 않을까 싶어 보이고...
지금발 생하는 부하로 성능에 문제가 있다면 메모리 부터 추가해서 직접 비교 검토해 보는 게 맞을 것 같아 보이네요.
vCore 2개면 물리코어 1개입니다..
상용 클라우드라면 코어따라서 가격이 달라지니 민감하지만
자체적으로 가상머신을 돌리신다면 cpu를 많이 부여하는 것이 어떨런지요.
메모리리는 독점이고 cpu는 공유입니다.
다른 가상머신이 cpu를 안쓰면 필요한 가상머신이 더 쓸 수 있습니다.
6대를 돌리정도면 톰켓보다도 db쪽에서 부하가 걸릴 가능성이 높겠네요.
접속자 수는 테스트하시면서 순차적으로 늘이거나 줄이거나하는 방법으로 접근하세요.
라크렐라 | 약 2년 전
db트랜잭션은 늘 모니터링하는데 크게 부하는 없고 core를 일단늘려서 조금 안정되었습니다.
감사합니다.