开发者社区> 超努力的写代码> 正文
阿里云
为了无法计算的价值
打开APP
阿里云APP内打开

微服务重构四步法

简介: 微服务重构四步法
+关注继续查看

本文是【技术琐话公益直播】5月27日晚分享嘉宾潘志伟在线直播中主题《微服务硬核实战》内容整理,内容有删减调整,直播回放见之前的分享。

1 

如何正确开启微服务

一般情况技术人员需要思考项目使用服务的流程为,框架的选型(spring cloud、dubbo、自研等),跑通微服务项目的案例demo,在以为掌握的情况下开始做计划,并开始做项目。以下通过案例分析几个失败的案例。

案例介绍一:改革需要试错的成本

现象:某公司打算转型微服务架构,招聘了一个有微服务经验的架构师,经过2个月高频率开发后第一个服务化的模块上线了,但是上线后出现了生产事故,最终以技术不合格为由开除了架构师。分析:对结果负责的思想可以理解,但是过程也非常重要。在做微服务架构初期的时候,公司管理层要容忍研发适当的错误。嘉宾观点:改革需要试错成本。

案例介绍二:项目架构调整要获得老板的认可

现象: 有个架构同学反馈,他在公司推行微服务太难了,根本推不动,硬件资源没有, 人力资源也没有,全部都是自己一个人一个模块一个模块的改造。分析:主要原因组织上没有认可,所以没有任何资源,这个项目注定是一个失败的项目。嘉宾观点:技术架构的调整不能仅凭技术的满腔热血,首先要获得老板的认可。

案例介绍三:时间紧急,导致项目失败

业务极速膨胀,公司的CTO也是搞技术的,也认可搞微服务,人力资源部门全力配合招聘研发人员。前提条件是不能影响正常业务迭代,而且微服务整体时间范围要尽可能的短。结果:因为时间紧,每个小团队快速启动开发,结果工程结构各式各样,部署脚本很难统-,结果失败了。嘉宾观点:磨刀不误砍柴工,前期充分培训非常重要。整理一套适合团队的标准代码结构同样重要。
从上面三个案例,我们知道一个微服务的的开启,需要项目负责人、公司承担需要试错的成本、需要获得老板的认可、需要足够的时间去尝试,缺一不可。那如何落地微服务重构了,这里我们介绍微服务重构的四部法则。

2 

微服务重构四步法



image.png


image.png


3 

微服务实战技巧

服务到底怎么拆分?微服务拆分多少合适?这个在市场上面很少有看到类似的书籍来告诉的我们的系统应该怎么拆分。因为每家公司的业务和场景、形态都不尽相同。这里我们根据三个维度进行拆分。

1.初级阶段以功能为力度拆分

2.以迭代频率拆分

3.以接口粒度拆分




image.png


image.png


image.png


image.png


4 

总结

1、微服务并不可怕,怕的是你没搞定领导

2、优化无止境,好的设计减少后续优化成本,有时候提高硬件设备是最优的优化

3、架构本着可用原则,不要过渡架构。架构low点不可耻,可耻的是项目延期、上线后线上Bug频发

4、不要企图规划3年后的架构模式,有可能不到3年你就把自己的架构推翻了

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
微服务架构 | 4. 服务调用
服务调用是在注册中心的基础之上,解决应该调用哪个服务实例的问题;
79 0
微服务架构 | 怎样解决超大附件分片上传?
分片上传、断点续传,这两个名词对于做过或者熟悉文件上传的朋友来说应该不会陌生,总结本篇文章希望对从事相关工作的同学能够有所帮助或者启发。
179 0
微服务架构风格
特点 通过将一个应用程序设计构建为一组松散耦合的协作服务。每个服务都实现了一部分的相关功能。对应于Scale Cube(参考分布式系统三维可缩放模型)的Y轴。 服务使用HTTP / REST等同步协议或AMQP等异步协议进行通信。
1271 0
微服务架构演进
阿里系:Duboo做服务化治理,Zookeeper服务注册中心,SpringMVC or SpringBoot基础框架 Spring Cloud栈:Spring Cloud,Netflix Eureka, Spring Boot 来自为知笔记(Wiz)
981 0
微服务
微服务分析:https://www.oschina.net/news/70121/microservice
1192 0
微信小程序想要最短服务路径
  微信试图用小程序来重新定义服务路径的长度。过去几个月,业界一直在讨论微信对小程序的定义:即用即走、触手可及。这一度让开发者疑惑,因为如果微信你期待我做的产品是即用即走的,那为什么我要开发小程序?难道产品不应该想方设法粘住用户么?   这种疑惑,是因为很多人把眼光放到了「即走」上面。
1045 0
1940
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
冬季实战营第三期:MySQL数据库进阶实战
立即下载