使用 Spring Boot 构建微服务

这篇具有很好参考价值的文章主要介绍了使用 Spring Boot 构建微服务。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Spring Boot 为所有这些阶段提供开箱即用的支持,并提供插件和模块形式的专用组件。 

打包 - 它提供自己的 Maven 支持,将代码和所有依赖项打包为 Uber jar,包括容器本身。为此,您需要添加以下构建插件和一个简单的重新打包目标,该目标重新打包在正常 Maven 打包阶段构建的二进制文件。

部署 - 它配备了不同类型的 Web 容器来支持 servlet/JSP 等 Web 资源的嵌入式部署。最重要的是,它提供了一个可以部署 RESTful 资源的 Jersey 容器。

最新的 DZone 参考卡

GitOps 的要点


Launcher  - Spring Boot 使启动应用程序就像运行 Hello World 程序一样简单。只需一行代码即可触发依赖管理、包扫描和容器初始化。

参考代码:  microservice-starter-springboot

在研究了所有这些方面之后,可以使用不同的工具和框架来制作这些制品。让我们讨论每个网络服务器和平台。 

Tomcat
Tomcat 通常用作部署 Web 应用程序的 Web 容器,但它也可以用作运行打包的微服务的嵌入式容器。为此,需要满足以下条件才能创建包含的微服务。

打包 - 与 Spring Boot 不同,它不提供开箱即用的解决方案来打包您的微服务,但您可以使用 Maven 标准插件(如 assemble 和 Shade)来构建包含所有依赖项并支持主类的 Uber jar体现出来。

部署 - 所有 Tomcat 运行时模块都可以提供一个可以部署和运行 Jersey 容器的依赖项。

启动器 - Tomcat 允许您以编程方式配置端点和容器,并且您可以在控制范围内启动和停止实例。

参考代码:  microservice-starter-tomcat

Jetty
Jetty 非常适合部署和运行微服务,因为它主要使用嵌入式容器来运行 Web 应用程序。它也遵循与 Tomcat 相同的模式来运行微服务。

打包 - 它可以利用 Maven 标准插件将代码和依赖项打包到单个 Uber jar 中。

部署 - Jetty 提供了一个 servlet 容器,可以通过 Jersey 容器来填充该容器来提供 Web 服务。

Launcher  - 与 Tomcat 一样,它提供了类似的编程 API 来部署 Jersey 容器和 REST 端点。

参考代码:  microservice-starter-jetty

Grizzly
Grizzly 是一种不太流行的 Web 容器,但它为 JEE 社区提供了最标准的应用程序服务器。是的,它是 Glassfish 服务器背后的引擎。它确实为构建微服务提供了开箱即用的功能。

打包 - 我们可以使用 Maven 标准插件(例如 assembly 和 Shade)来打包 Web 服务及其依赖项。

部署 - 与 Tomcat 和 Jetty 不同,它为部署使用 Jersey 构建的 Web 服务提供内置支持,并提供标准的基于容器的 Grizzly HTTP 服务。

Launcher  - 与 Spring Boot 一样,它提供了一个非常抽象的 API,用于配置 REST 服务并在一行代码中运行容器本身。

参考代码:  microservice-starter-grizzly

Netty
Netty 是一个著名的异步和事件驱动的客户端/服务器框架,支持 FTP、SMTP 和 HTTP 等大多数协议,并为 UDP 和 TCP 应用程序提供低级编程。最重要的是,Glassfish 提供了一个特殊的 Jersey 容器,它使用非阻塞 IO 和 HTTP 服务。它可以像 Grizzly 一样用作 Web 服务容器。

打包 - 我们可以使用 Maven 标准插件(例如 assembly 和 Shade)来打包 Web 服务及其依赖项。

部署 - 与 Grizzly 一样,它为部署使用 Jersey 构建的 Web 服务提供开箱即用的支持,并提供基于 Netty HTTP 服务的标准容器。

Launcher  - 与 Grizzly 一样,它提供了一个非常抽象的 API,用于配置 REST 服务和运行容器。

参考代码:  microservice-starter-netty

Undertow
Undertow 是一个 Web 服务器,为流行的 JBoss AS 提供支持,并且能够作为嵌入式容器运行。它提供精细的 HTTP 和非阻塞 IO 服务。除此之外,它还提供 Servlet 和 Web Socket 实现。它可以用于以类似的方式构建微服务。

打包 - 我们可以使用 Maven 标准插件(例如 assembly 和 Shade)来打包 Web 服务及其依赖项。

部署 - Undertow 提供了一个可与 Jersey Servlet 容器一起使用的 HTTP Servlet 容器。

Launcher  - 它还提供了一个编程 API 来部署 Jersey 容器和 REST 端点。文章来源地址https://www.toymoban.com/news/detail-737557.html

到了这里,关于使用 Spring Boot 构建微服务的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 在Spring Boot微服务使用ZSetOperations操作Redis集群Zset(有序集合)

    记录 :447 场景 :在Spring Boot微服务使用RedisTemplate的ZSetOperations操作Redis集群的Zset(有序集合)数据类型。 版本 :JDK 1.8,Spring Boot 2.6.3,redis-6.2.5。 1.微服务中 配置Redis信息 1.1在pom.xml添加依赖 pom.xml文件: 解析:spring-boot-starter-data-redis和spring-boot版本保持一致。 1.2在application.ym

    2024年02月08日
    浏览(44)
  • 在Spring Boot微服务使用JedisCluster操作Redis集群String字符串

    记录 :449 场景 :在Spring Boot微服务使用JedisCluster操作Redis集群的String字符串数据类型。 版本 :JDK 1.8,Spring Boot 2.6.3,redis-6.2.5,jedis-3.7.1。 1.微服务中 配置Redis信息 1.1在pom.xml添加依赖 pom.xml文件: 解析:在Spring Boot中默认集成jedis,使用无需加版本号,本例版本3.7.1是Spring Bo

    2024年02月08日
    浏览(56)
  • 使用Spring Initializr方式构建Spring Boot项目

    除了可以使用Maven方式构建Spring Boot项目外,还可以通过Spring Initializr方式快速构建Spring Boot项目。从本质上说,Spring lnitializr是一个Web应用,它提供了一个基本的项目结构,能够帮助我们快速构建一个基础的Spring Boot项目。下面讲解如何使用Spring Initializr方式构建Spring Boot项目,

    2024年02月12日
    浏览(56)
  • 构建异步高并发服务器:Netty与Spring Boot的完美结合

    「作者主页」 :雪碧有白泡泡 「个人网站」 :雪碧的个人网站 ChatGPT体验地址 在Java基础中,IO流是一个重要操作,先上八股 BIO:传统的IO,同步阻塞,一个连接一个线程。一般不怎么使用 AIO:JDK7引入的,异步非阻塞IO NIO:JDK1.4之后新的API,是多路复用,允许你一次性处理

    2024年02月03日
    浏览(54)
  • Netty示例教程:结合Spring Boot构建客户端/服务器通信

    当涉及到在客户端/服务器应用程序中使用Netty进行通信时,以下是一个结合Spring Boot的示例教程,演示如何使用Netty构建客户端和服务器应用程序。 简介 本教程将指导您如何使用Netty结合Spring Boot构建客户端和服务器应用程序。通过Netty的可靠网络通信功能,您可以轻松构建高

    2024年02月15日
    浏览(58)
  • 使用Maven父工程构建spring boot子工程

    注意:子工程引入springboot相关依赖之后子工程才能被解析为springboot模块

    2024年02月11日
    浏览(45)
  • 快速入门:使用 Spring Boot 构建 Web 应用程序

    本文将讨论以下主题: 安装 Java JDK、Gradle 或 Maven 和 Eclipse 或 IntelliJ IDEA 创建一个新的 Spring Boot 项目 运行 Spring Boot 应用程序 编写一个简单的 Web 应用程序 打包应用程序以用于生产环境 通过这些主题,您将能够开始使用 Spring Boot 并创建自己的 Web 应用程序。 Spring Boot是一个

    2024年02月07日
    浏览(81)
  • 【window环境】Jenkins使用gitee构建spring boot项目

    这里不做详细介绍 下载jdk 安装 配置环境变量 JAVA_HOME 路径到jdk安装根路径 CLASS_PATH ;%JAVA_HOME%lib; path ;%JAVA_HOME%bin;%JAVA_HOME%jrebin; 验证 cmd命令: java -version 因为低版本jenkins插件不好下载。 换成高版本jenkins 要安装jdk11 因为本地安装过jdk不想载安装一个 所以下载了一个免安装

    2024年02月03日
    浏览(54)
  • 《深入浅出Spring Boot 3.x》已经交稿,目前在编写《Spring Cloud Alibaba微服务实践》

    最近基于《深入浅出Spring Boot 2.x》升级为《深入浅出Spring Boot 3.x》已经完成,预计明年春节后可以出版,我先贴出目录给大家看看。以后希望大家多多支持。 第1章   Spring Boot 3.x的来临 1.1  Spring的历史 1.2  Spring Boot的特点 1.3 Spring和Spring Boot的关系 1.4 开发Spring Boot工程 第2章

    2024年02月09日
    浏览(40)
  • 使用Spring Boot和Apache HttpClient构建REST客户端

    介绍: 在本文中,我们将学习如何使用Spring Boot和Apache HttpClient创建一个REST客户端。我们将探讨如何与远程服务器进行通信、处理JSON响应,并为Web应用程序配置跨源资源共享(CORS)。让我们深入代码吧! ClientService 类负责发起HTTP请求并处理响应。它使用 @Service 注解表示它应

    2024年01月16日
    浏览(53)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包