【实战】微服务实施整体方略
许多企业都有业务系统庞杂,想拆解微服务,进而可以降低运营成本,提高开发效率和速度,同时达到节点快速迁移的目的。
恰巧小编最近刚做了一个航空公司的业务系统改造项目,需求是将现有的核心业务拆解微服务,将所有服务模块假设在云端,自由扩展以应对未来各种复杂的开发环境。
在第一阶段的调研中,小编发现该公司的的核心系统都是传统单体式应用(Monolith),应用间协同通过API接口调用。系统存在严重的重复开发的问题(比如中间件,数据库等)。
在这样一个系统中,平台的VMWARE,中间件,底层开发平台Java,应用开发Python和网页开发JavaScript被集中在了一起,每个部件的更新升级都牵连了所有其他部件的关联测试,效率极低。
迁移微服务的第一步就是将一个庞杂的系统拆解为耦合程度不同的各个功能模块,从流程上拆分,一个航空订票系统可以拆解为订票、更新用户信息、创建用户、时刻表查询、计费、选座及更新票仓六大功能模块,模块的高度代表了被调用的频率。
拆解后的服务都是相互独立的,服务间通过REST或SOAP调用(下期我们来介绍SOAP),拆解完成之后,应用层和中间件就分离开来了。
此时我们发现,系统的底层还是运行在一个虚拟机的操作系统之上,严格意义上说应用模块间并没有完全解耦。并且中间件要给适用各种开发平台,就需要定义不同的接口标准。
微服务化之后,应用的复杂度从内部转向了外部。各组件的开发和调用变得简单了,但对外部的接口就无法统一了,这包括了业务接口以及运维接口。 微服务化后,对外API需要重新整合,有些API甚至需要关闭对外发布。
为了满足上面提到的系统资源动态分配,在考虑操作系统的时候,也要跳出固有的VM框架,建议将其部署在更进一层的PaaS服务(至少操作系统是分布式的)上,这里的PaaS可以是私有云也可以是私有云。同时应对不同开发平台的中间件服务,需要定义不同的API以优化上层调用的便利性。
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
阿里云文件存储NAS跨账号挂载
文件存储NAS跨账号挂载应用场景 默认场景下,阿里云NAS只支持挂载到同账号下的ECS,但时常会有同一个企业用户下对应有多个UID账号,用户由于业务需要不同账号下的ECS和NAS间能进行数据互访。其实对于ECS访问NAS,本质上不受账号的限制,只需要VPC网络能互通就可以了。因此我们可以利用阿里云企业网跨账号VPC互通的能力来实现。 配置跨账号VPC互通 阿里云企业网产品可以帮助实现不同账号下的VPC互通,打通VPC网络后就可以跨账号实现NAS的挂载访问。 创建A账号云企业网实例 登录云企业网管理控制台。 在云企业网实例页面,单击创建云企业网实例。 配置云企业网实例: 名称:云企业网实例的名称。名称在2-128个字符之间,以英文字母或中文开始,可包含数字,连字符(-)和下划线(_)。本操作输入跨账号同地域。 加载网络实例: 账号:选择同账号
- 下一篇
EDAS docker staragent 异常
背景 客户端在 EDAS 控制台操作应用时出现 staragent 异常。 排查 遇到类似问题,需要知晓, staragent 是命令下发通道,所有在控制台上操作的指令都要通过 staragent 下载,由 edas-agent 执行,现在 staragent 异常如何验证; 执行 ps -ef | grep staragent ,看进程是否还存活,没有存活需要我们手动重启; ECS 宿主机上下载修复脚本,然后直接执行完成修复 下载地址
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS8,CentOS7,CentOS6编译安装Redis5.0.7
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址
- CentOS7安装Docker,走上虚拟化容器引擎之路
- CentOS7编译安装Cmake3.16.3,解决mysql等软件编译问题
- SpringBoot2全家桶,快速入门学习开发网站教程
- CentOS7设置SWAP分区,小内存服务器的救世主
- Docker快速安装Oracle11G,搭建oracle11g学习环境