负责的模块 每天要承接2.5个亿(3000QPS)的查询量(根据ID查找hbase数据 业务很简单)
目前是两台128g内存的物理服务器
ehcache单机缓存
数据存在hbase当中
还没有做压力测试
请问:这种场景下 一般的tomcat能抗住多少QPS我觉着两台不够 大概需要几台服务器有什么优化的思路?
-我能想到的是改用redis分布式缓存 tomcat jvm -gc优化 http和内核配置代码优化加机器不知道加几台现在
`
业精于勤,荒于嬉;行成于思,毁于随。
jmeter를 확인하는 스트레스 테스트 도구를 찾아 알아보세요. 이전에 했던 SNS의 경우 Tomcat 애플리케이션의 성능 지표가 3000TPS였습니다. 이 머신은 16개 코어를 갖춘 Huawei R3 블레이드 머신입니다.
동시에 XRebel을 통해 로직 실행 시간을 모니터링할 수 있습니다.
3k의 QPS는 특별히 높지 않습니다. 캐시가 있으면 데이터베이스가 괜찮고 처리할 수 있습니다. 단지 Tomcat의 QPS가 일반적으로 K 수준이라는 것뿐입니다. 캐시를 읽고 쓰기 위해 다른 서버(예: nginx)를 사용하는 것을 고려할 수 있습니까? 이렇게 하면 Tomcat의 로드가 줄어들어 전체 처리량이 향상됩니다.
C++로 재구성된 Baidu의 빅테이블형 스토리지는 단일 머신에서 30,000qps의 무작위 읽기 및 쓰기를 달성할 수 있습니다. hbase는 상대적으로 성능이 좋지 않지만 최소한 10,000qps를 달성할 수 있어야 하므로 데이터베이스에는 문제가 없습니다.
언급한 머신과 리소스를 고려하여 각 머신에 hbase와 tomcat을 설치하여 두 머신을 함께 배치하는 것을 고려할 수 있습니다. 또한 Tomcat의 서비스 메커니즘과 시간이 많이 걸리는 논리에 따라 스레드 수를 적절하게 조정하는 것을 고려할 수 있습니다.
두 컴퓨터가 모든 측면에서 상대적으로 고급형인 경우 일부 리소스 격리 및 가상화 솔루션을 사용하는 것이 좋습니다
Tomcat은 필요 없고 다른 것을 사용해도 됩니다. Tomcat은 좀 무겁습니다
jmeter를 확인하는 스트레스 테스트 도구를 찾아 알아보세요.
이전에 했던 SNS의 경우 Tomcat 애플리케이션의 성능 지표가 3000TPS였습니다.
이 머신은 16개 코어를 갖춘 Huawei R3 블레이드 머신입니다.
동시에 XRebel을 통해 로직 실행 시간을 모니터링할 수 있습니다.
3k의 QPS는 특별히 높지 않습니다. 캐시가 있으면 데이터베이스가 괜찮고 처리할 수 있습니다. 단지 Tomcat의 QPS가 일반적으로 K 수준이라는 것뿐입니다. 캐시를 읽고 쓰기 위해 다른 서버(예: nginx)를 사용하는 것을 고려할 수 있습니까? 이렇게 하면 Tomcat의 로드가 줄어들어 전체 처리량이 향상됩니다.
C++로 재구성된 Baidu의 빅테이블형 스토리지는 단일 머신에서 30,000qps의 무작위 읽기 및 쓰기를 달성할 수 있습니다. hbase는 상대적으로 성능이 좋지 않지만 최소한 10,000qps를 달성할 수 있어야 하므로 데이터베이스에는 문제가 없습니다.
언급한 머신과 리소스를 고려하여 각 머신에 hbase와 tomcat을 설치하여 두 머신을 함께 배치하는 것을 고려할 수 있습니다. 또한 Tomcat의 서비스 메커니즘과 시간이 많이 걸리는 논리에 따라 스레드 수를 적절하게 조정하는 것을 고려할 수 있습니다.
두 컴퓨터가 모든 측면에서 상대적으로 고급형인 경우 일부 리소스 격리 및 가상화 솔루션을 사용하는 것이 좋습니다
Tomcat은 필요 없고 다른 것을 사용해도 됩니다. Tomcat은 좀 무겁습니다