常用的java微服务框架有很多,这里为大家简单介绍热门的几种,如下所示:
1、Spring Boot
Java构建Spring应用程序已经有很长一段时间了,Spring Boot是Spring的一个特定版本,它通过对配置细节的处理,使微服务构建更加简便。创建Spring Boot旨在自启动任何类型的Spring项目,而不仅仅是微服务。应用程序完成后,Spring Boot将在web服务器中混合,并输出一个JAR文件,JVM除外。你可以将其视为原始Docker容器。这也是许多负责构建微服务的开发者都非常喜欢Spring Boot的原因。
2、Eclipse MicroProfile
2016年,Java Enterprise社区决定清理Java Enterprise Edition中的内容,以便人们可以使用经典部件构建简单的微服务。他们去除了大量的库,但保留了处理REST请求,解析JSON和管理依赖注入的功能代码,最终被称为Eclipse MicroProfile,其特性为快速而简单。
从那以后,MicroProfile社区制定了一个协议,每季度发布一个新版本,同时添加新代码以保持微服务平稳安全地运行。任何Java EE开发者都会非常熟悉开发过程和代码结构,而且还吧配置麻烦给省去了。
(视频教程推荐:java视频)
3、Dropwizard
当Dropwizard在2011年出现时,Dropwizard框架为开发者提供了一个非常简单的模型,里面包含了许多重要的模块,你可以根据需求添加一些业务逻辑,或者配置其他内容,最后你会发现JAR文件非常小,并且能够快速启动。
4、WildFly Thorntail
Red Hat的工作人员使用一个灵活的配置工具构建了他们自己的MicroProfile版本。该框架最初被称为WildFly Swarm,但后来被重新命名为WildFly Thorntail,Thorntail通过指定所需的特性来帮助您创建自己的Maven构建文件,然后Maven负责组装所有东西。
5、Helidon
Helidon去除了Java Enterprise Edition,保留轻量级的、基于servlet的核心,并吸引了大量的粉丝。在Helidon的,开发人员从Netty,并添加代码进行路由和错误处理。它采用了代码的两个基本模型,即所谓的SE和MP版本。
Node 开发者可能更熟悉Helidon SE,因为其具有由句点连接的函数调用。使用JAX-RS的Java程序员则更熟悉Helidon MP。此外,Helidon还集成了一些备受好评的工具,这些都是它能够吸引大量开发者的原因。
6、Cricket
另外一个用于快速API开发框架的是Cricket。Cricket很小,尽管它包括许多额外的功能,如键值数据存储,以避免连接数据库和调度程序来控制后台重复处理。没有添加复杂性或其他依赖项,因此很容易将代码添加到Cricket并启动独立的微服务。
7、Jersey
开发web服务的标准方法之一是RESTful web服务的Java API(又名JAX-RS),这是Jersey框架中实现的通用规范。这种方法主要依赖于使用注释来指定路径映射和返回细节。从参数解析到JSON打包的所有其他内容都由Jersey处理。
Jersey的主要优点是它实现了JAX-RS标准,这个特性非常受欢迎,一些开发人员习惯将Jersey与Spring Boot结合在一起使用。
8、Play
体验JVM跨语言能力的最佳方式之一是使用Play框架,这是可以与Java或任何其他JVM语言兼容的。它的基础非常现代,具有异步、无状态的模型,不会让试图跟踪用户及其会话数据的线程使服务器过载。还有许多额外的特性可以用来充实网站,比如OpenID、验证和文件上传支持。
9、Swagger
构建一个API看起来就像编写一个监听端口的代码一样简单,但是Swagger的开发人员不这么认为。他们已经创建了一个完整的API规范语言OpenAPI,你可以使用它来说明你的API。这似乎是一个额外的步骤,但是Swagger团队还提供了将该规范转换为自动化测试、文档等的代码。
Swagger配置文件中的API很简单,用于实现接口、记录接口的,并提供一组工具来测试构建在其下的代码,甚至还有一种API治理机制。
10、Restlet
不同框架之间最大的区别之一是和其他服务或库的连接数量。Restlet项目提供了更大的特性和连接集合,它已经与JavaMail之类的库集成,避免微服务需要对某些邮件服务器使用POP、IMAP或SMTP;为防构建大量文本索引和元数据,还集成了 Lucene 和 Solr。
Restlet中还有很多特性在持续开发。例如,你不需要使用JSON,因为它可以直接处理XML、CSV、YAML和其他一些文件格式,此外,它还允许用户从Chrome浏览器测试api。
推荐教程:java入门程序