前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何为微服务选择REST框架

如何为微服务选择REST框架

作者头像
程序你好
发布2018-10-18 15:39:08
1.3K0
发布2018-10-18 15:39:08
举报
文章被收录于专栏:程序你好

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

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

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

代码语言:javascript
复制
@GET
代码语言:javascript
复制
public String getData() {
代码语言:javascript
复制
  JSONObject data = new JSONObject();
代码语言:javascript
复制
  data.put("javaHome", System.getProperty("java.home"));
代码语言:javascript
复制
  data.put("data", "Hello World!");
代码语言:javascript
复制
  data.put("time", LocalTime.now());
代码语言:javascript
复制
  data.put("serviceProvider", "Resteasy");
代码语言:javascript
复制
  return data.toString();
代码语言:javascript
复制
}

每个RESTful服务在一个循环中被三个不同的RESTful客户机调用1000次,结果显示在柱状图中。图表显示了不同服务器和客户端服务以微秒计算的时间。

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

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

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2018-10-12,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 程序你好 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档