如何使用Spring Boot实现高TPS

时间:2018-08-01 16:59:52

标签: spring-boot reactive-programming tps

我正在处理一个TPS要求为100并且有多个并发用户的应用程序(银行业务)。

Spring Boot 1.x.x允许我实现吗?

注意:我会使用支持Reactive范例的Spring Boot 2.x.x,但是我必须使用一些遗留代码,并且在2.x.x上不起作用。

1 个答案:

答案 0 :(得分:1)

您可以在任何合理的硬件上运行Java应用程序来获得这些数字。 LMAX声称Disruptor可以胜过100k TPS with 1ms latency。 Spring Boot或Java通常不会成为限制因素。

问题将是业务需求。如果您的应用程序是从另一个数据中心的过度使用的数据库中生成复杂的报告,那么只需packet round-trip from CA to Netherlands is 150ms。如果您的SQL查询需要30秒钟以上,那么您就敬酒了。

您可以查看Tuning Tomcat For A High Throughput, Fail Fast System。它提供了很好的见解,可以在标准Tomcat部署中进行调整(假设您将在Spring Boot中使用Tomcat)。但是,HTTP连接(假设您将公开HTTP API)不太可能成为最初的瓶颈。