java rest 服务框架_如何为微服务选择REST框架

每个行业都会经历变化,变化是不可避免的。为了适应变化和交付,我们需要使用正确的工具,因此我们必须查看市场上或软件行业开源领域中现有工具的性能。性能是:对于特定数量的请求,系统需要多少时间来响应。

让我们比较一下几个开源的RESTful框架对大量请求的响应时间。Jersey和Resteasy被选为服务器端RESTful服务。独立的服务如Spring Boot、Javalin和Spark Java也被选中。客户端服务选择了Jersey、OkHTTP和Unirest。

这里使用了非常简单的代码,其中包括 java.home value、一个普通的Java字符串消息、当前时间和服务类型(Jersey、Resteasy,等等),这也是一个Java字符串。"java.home" 的值给出了JDK的使用情况。在这里,我使用了JDK 8。

@GETpublic String getData() { JSONObject data = new JSONObject(); data.put("javaHome", System.getProperty("java.home")); data.put("data", "Hello World!"); data.put("time", LocalTime.now()); data.put("serviceProvider", "Resteasy"); return data.toString();}每个RESTful服务在一个循环中被三个不同的RESTful客户机调用1000次,结果显示在柱状图中。图表显示了不同服务器和客户端服务以微秒计算的时间。

3fe92261e18606787537860601d31b19.png

59cc4d4e0d0e1e42fe1d81225ae6a7c9.png

17ba6eebfc4028460a73a3f989e3781a.png

三个图显示了框架性能在不同时间如何变化的透视图。上面的图表还展示了关于REST框架在服务器端和客户端性能的一些想法。从时间性能上看,Spring Boot 2.0是最好的,Jersey客户机是最差的。与普通的REST框架(如Jersey、Resteasy和Spring Boot)相比,Javalin和Spark等独立框架运行缓慢。像OkHTTP和Unirest这样的客户端框架在性能方面是相似的。

尽管有上述结果,但每个框架都有自己的优点和缺点。像Spark和Javalin这样的独立REST框架很容易实现,而且不局限于任何技术栈,比如Spring Boot.Jersey和Resteasy有定制的优势。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值