微服务框架为什么选择Spring Boot作为微服务的入门级微框架

微服务框架  时间:2021-08-18  阅读:()

如何使用 java 构建微服务

在Java生态中,构建微服务的策略包括Container-less,Self-contained,以及In-container等。

Container-less微服务将应用及其依赖打包成一个单一的jar文件。

Self-contained微服务也是打包成一个单一的Jar文件,但它还包括一个嵌入式框架,这个框架含有可选的第三方lib,当然这些lib是兼容的。

In-container微服务打包成一个完整的Java EE容器,该服务在Docker镜像中实现。

基于微服务的架构给架构师和开发者带来了新的挑战,然而,随着语言的升级和工具数量的增加,开发者和架构师完全有能力应对这样的挑战。

Java也不例外,本文探讨了在Java生态系统内构建微服务的不同方法。

为什么说要搞定微服务架构,先搞定RPC框架

无论是SOA还是微服务,核心都是RPC框架。

如果没有统一的RPC框架,各个团队就需要实现自己的一套序列化、反序列化、网络框架、连接池,线程池、超时处理等“业务之外”的重复劳动,所以统一RPC框架,是服务化首先要解决的问题。

现阶段,外界RPC框架众多,如果没有特殊需求,并不需要自研一套。

无服务架构和微服务器架构的区别

微服务架构中有两个阵营,一是坚持微服务是无状态的HTTP API服务,另一阵营认为微服务本身就要求把整个系统当做一个完整的分布式应用来对待,而不是原来那种把各种组件堆积在一起,“拼接”系统的做法。

无服务架构就是原来那种把各种组件堆积在一起,拼接系统的做法。

微服务架构 如何影响传统的软件架构设计

ThoughtWorks首席咨询师王磊通过一个互联网门户案例为大家解释了微服务架构的概念,以及它如何影响传统的软件架构设计。

一年前,该门户每签一个10万的合同所耗费的成本是3.5天。

他们当时的CRM结构是典型的三层架构,整个应用程序由一个40万行的代码库组成,后端有一个主动的数据库。

虽然使用三层架构的成本比较小,但随着代码和功能的增加,代码库不断膨胀,修改代码存在的风险很大,整个维护成本也变得越来越高。

每当开发人员提交代码后,所需的数据集成和构建需要50分钟,意味着每天8小时工作时间最多能有9次代码提交。

但为了系统的稳定性,持续集成过程中要尽量避免提交代码,因此,整个团队的交付能力受到了限制。

此外,从准备部署包到上线需要3天,3天后才能让用户真正用到部署包,才能实现价值。

而如果增加新人,要开发新的环境,包括测试和产品环境,培养周期会很长。

针对以上难题,ThoughtWorks制定了如何在团队中对系统进行改造从而满足业务需求的策略。

将现有的系统保护起来,把所有开发新功能的优先级都降下来,只需对系统做最紧急的修改,其他和部门进行协商,让团队保持新的精力和时间在重要的业务上。

功能剥离。

通过定义新服务,在前端用一些代码的机制让用户逐渐访问新服务,可以达到从原有系统抽出小功能,让客户访问小功能。

数据解耦。

对于庞大的系统,因为无法很快将所有系统换掉,所以为了保证系统仍然可用,要启用数据同步机制,让服务里的数据同步到原有数据库。

渐进替换。

通过不断地运行以上策略,将原有系统的复杂功能抽离出来用新的方式来做。

目前,每签一个10万的合同所耗费的成本由3.5天变为1天,持续集成构建从50钟降低到18分钟,团队成员从10人降到7人,部署周期由3天降到2小时。

对于每个应用程序,可能有一组小的服务组成,每个服务运行在自己的进程中,服务与服务之间通过轻量级的机制进行交互。

那么,如何使用微服务做系统改造呢? 为每个服务建立独立的环境,包括基础设施、持续集成环境、运维、监控、日志聚合、报警。

不断演进的微服务开发模板,发现问题及时修改,让模板更高效。

轻量级的通信协议。

消费者的契约测试,解决随着服务增多带来集成测试效率低的问题。

基础设施自管理,帮助管理自己需要的资源。

为什么选择Spring Boot作为微服务的入门级微框架

简单来说,因为上手简单 spring mvc相较于struts清爽太多,但是仍需要配置,这些配置一定程度上提升了入门的难度,需要一定的学习,而spring boot几乎做到了零配置(大量默认配置,当然可以修改的),简单几行代码就可以实现请求响应的过程,一个稍微有点儿Java基础的人,即使没有丝毫的spring知识,上手spring boot,实现简单接口的开发,几天就可以摸清楚,熟悉了之后对后期系统学习spring和spring mvc都有好处(想一想,公司使用spring boot,刚入职的新人毕业生什么的,不到一个礼拜就可以干活。







易探云2核2G5M仅330元/年起,国内挂机宝云服务器,独立ip

易探云怎么样?易探云是国内一家云计算服务商家,致力香港服务器、国内外服务器租用及托管等互联网业务,目前主要地区为运作香港BGP、香港CN2、广东、北京、深圳等地区。目前,易探云推出深圳或北京地区的适合挂机和建站的云服务器,国内挂机宝云服务器(可选深圳或北京地区),独立ip;2核2G5M挂机云服务器仅330元/年起!点击进入:易探云官方网站地址易探云国内挂机宝云服务器推荐:1、国内入门型挂机云服务器...

蓝竹云挂机宝25元/年,美国西雅图 1核1G 100M 20元

蓝竹云怎么样 蓝竹云好不好蓝竹云是新商家这次给我们带来的 挂机宝25元/年 美国西雅图云服务器 下面是套餐和评测,废话不说直接开干~~蓝竹云官网链接点击打开官网江西上饶挂机宝宿主机配置 2*E5 2696V2 384G 8*1500G SAS RAID10阵列支持Windows sever 2008,Windows sever 2012,Centos 7.6,Debian 10.3,Ubuntu1...

wordpress投资主题模版 白银黄金贵金属金融投资网站主题

wordpress投资主题模版是一套适合白银、黄金、贵金属投资网站主题模板,绿色大气金融投资类网站主题,专业高级自适应多设备企业CMS建站主题 完善的外贸企业建站功能模块 + 高效通用的后台自定义设置,简洁大气的网站风格设计 + 更利于SEO搜索优化和站点收录排名!点击进入:wordpress投资主题模版安装环境:运行环境:PHP 7.0+, MYSQL 5.6 ( 最低主机需求 )最新兼容:完美...

微服务框架为你推荐
apple以旧换新苹果手机以旧换新 是怎么换的什么要求app退款苹果app能不能退款豆瓣fm电台豆瓣电台怎么听自己喜欢歌手的歌安卓模拟器哪个好用电脑上的手机模拟器有哪些?哪个更好一点?最好的视频播放器最好的视频播放器有哪些?色温图一张色温准确的照片的基本标准是什么?赵锡成赵锡成夫人简介阶乘函数C语言中有计算阶乘的函数吗 不是自己写,,,是那种可以直接调用的函数充值卡充值买完充值卡了,怎么充值软件群发有谁用过微信能群发的软件吗?在哪买的?
联通vps 日本动态vps 星星海 主机测评网 arvixe mach gomezpeer ev证书 云图标 彩虹ip 免费全能空间 服务器维护方案 idc资讯 服务器托管什么意思 中国网通测速 上海服务器 1元域名 国外在线代理服务器 湖南铁通 asp介绍 更多