《SpringBoot揭秘:快速构建微服务体系》—第1章1.4节微服务会带来哪些挑战

1.4 微服务会带来哪些挑战
微服务给我们带来的并非只有好处,还有相应的一些挑战。
服务“微”化之后,一个显著的特点就是服务的数量增多了。如果将软件开发和交付也作为一种生产模式看待,那么数量众多的微服务实际上就类似于传统生产线上的产品,而在传统生产模型下,为了能够高效地生产大量产品,通常采用的就是标准化生产。
比如在汽车产业,在福特T型车没有出来之前,大多汽车企业的生产效率都不高,而福特在引入标准化生产线之后,福特T型车得以大量生产并以低成本优势快速普及。
在其他行业也是同样的道理,个性化生产虽然会深得个别用户的喜欢,但生产成本通常也会很高,生产效率因为受限于个性化需求,也无法从“熟能生巧”中获益,所以,最终用户需要为生产成本和效率付出更多的溢价才能获得最终产品。而相对于个性化生产来说,标准化生产走的是另一条路,通过生产标准产品,使得整条生产链路可重复,从而提升了生产效率,可以为更广层面的用户提供大量“物美价廉”的标准产品。
微服务的研发和交付其实就类似于产品的生产链路,而数量大这一特点则决定了,我们无法通过个性化的生产模式来支撑整个微服务的交付链路和研发体系,虽然微服务化之后,我们可以投入相应的人力和团队对应各个微服务的开发和交付,可扩展性上绝对没有问题,但这不意味着现实情况下我们就能这样做,因为这些都涉及人力和资源成本,而这往往是受限的。所以,使用标准化的思路来开发和交付微服务就变成了自然而然的选择:

  • 通过标准化,我们可以重复使用开发阶段打造的一系列环境和工具支持。
  • 通过标准化,我们可以复用支持整个微服务交付链路的各项基础设施。
  • 通过标准化,我们可以减少采购差异导致的成本上升,同时更加高效地利用硬件资源。
  • 通过标准化,我们可以用标准的协议和格式来治理和维护数量庞大的微服务。

如果你还对使用标准化的思路来构建微服务体系存有疑惑,那么,不妨再结合微服务的多语言生态特性思考一番:

  • 增加一种语言生态用于微服务的开发和交付,我们是否要围绕着这种语言生态和微服务的需求重新搭建一套研发/测试环境?
  • 我们是否还要围绕着这种语言生态打造一系列的工具来提升日常开发的效率?
  • 增加一种语言生态,我们是不是还要围绕这种语言生态搭建一套针对微服务的交付链路基础设施?
  • 增加一种语言生态,我们是否还要围绕它提供特定的硬件环境以及运维支撑工具和平台?

多语言生态虽然灵活度高了,不同语种和思路的团队成员也能够百花齐放了,但是不是也同样带来了以上一系列的成本?
所以,很多事情你能做,并不意味着你一定要做。适度的收缩语言生态的选择范围,并围绕主要的语言生态构建一套标准化的微服务交付体系,或许是更为合理的做法。
要实施高效可重复的标准化微服务生产,我们需要有类似传统行业生产线的基础设施。否则,高效可重复的开发和交付大量的微服务就无从谈起,所以,完备的微服务研发和交付体系基础设施建设就成为了实施微服务的终极挑战。一个公司或者组织要很好地或者说成熟地实施微服务化战略,为交付链路提供完备支撑的基础设施建设必不可少!

时间: 2024-09-21 08:15:13

《SpringBoot揭秘:快速构建微服务体系》—第1章1.4节微服务会带来哪些挑战的相关文章

《SpringBoot揭秘:快速构建微服务体系》—第1章1.3节微服务会带来哪些好处

1.3 微服务会带来哪些好处显然,随着系统复杂度的提升,以及对系统扩展性的要求越来越高,微服务化是一个很好的方向,但除此之外,微服务还会给我们带来哪些好处?1.3.1 独立,独立,还是独立我们说微服务打响的是各自的独立战争,所以,每一个微服务都是一个小王国,这些微服务跳出了"大一统"(Monolith)王国的统治,开始从各个层面打造自己的独立能力,从而保障自己的小王国可以持续稳固的运转.首先,在开发层面,每个微服务基本上都是各自独立的项目(project),而对应各自独立项目的研发团队

《Nmap渗透测试指南》—第7章7.15节SSH服务密钥信息探测

7.15 SSH服务密钥信息探测表7.15所示为本章节所需Nmap命令表,表中加粗命令为本小节所需命令--SSH服务密钥信息探测. https://yqfile.alicdn.com/c2f07fbe12bd2ee0dae2ad1ee889f371508699ca.png" > SSH是英文Secure Shell的简写形式.通过使用SSH,可以把所有传输的数据进行加密,这样"中间人"这种攻击方式就不可能实现了,而且也能够防止DNS欺骗和IP欺骗.使用SSH,还有一个额

《SpringBoot揭秘:快速构建微服务体系》目录—导读

前 言为什么写这本书忘了是2015年的哪一天,只记得几个朋友跟友商的其他几个做技术的朋友吃饭,并简单做下技术交流.席间,友商的几位朋友对SpringBoot框架实施微服务很感兴趣,交谈甚欢之际,我无意间开玩笑说:"是不是该考虑写一本SpringBoot的书?"钟伦甫(原淘宝聚石)同学随口一句,"你倒是写啊!",得,以行践言吧,谁让你把话说出去了呢?当然,朋友的"热切期盼"只是其一,微服务盛行也是本书写作的一个契机, 希望本书成为国内第一本微服务相

《SpringBoot揭秘:快速构建微服务体系》—第1章1.1节了解微服务

第1章 了解微服务SpringBoot是一个可使用Java构建微服务的微框架,所以在了解SpringBoot之前,我们需要先了解什么是微服务.1.1 什么是微服务微服务(Microservice)虽然是当下刚兴起的比较流行的新名词,但本质上来说,微服务并非什么新的概念.实际上,很多SOA实施成熟度比较好的企业,已经在使用和实施微服务了.只不过,它们只是在闷声发大财,并不介意是否有一个比较时髦的名词来明确表述SOA的这个发展演化趋势罢了.微服务其实就是服务化思路的一种最佳实践方向,遵循SOA的思路

《SpringBoot揭秘:快速构建微服务体系》—第1章1.5节本章小结

1.5 本章小结在带领大家探索本书的主角SpringBoot微框架之前,本章首先为大家介绍了SpringBoot微框架服务的核心场景,即微服务.然后一起探索了微服务的概念以及由来,并探讨了微服务可以为我们带来哪些好处,以及同时又为我们带来哪些挑战.总的来说,微服务化虽然是当下流行的趋势,但并非任何场景都合适,我们还是要审慎地在"大一统"(Monolith)服务架构和微服务架构之间做出选择, 而一旦确定选择了微服务化之路,那么,就应该围绕团队和组织的主要语言生态以及微服务方向积极探索高效

“努力构建安全诚信网络购物环境座谈会”北京召开,拉手网金字塔服务体系构建桥梁

当人类创造互联网的时候,并未想到其未来的生产生活可以因此而深度改变,无论是社交网络.电子商务.网络视频.网络游戏还是正在爆发式增长的移动互联网行业,人类因为这些行业的崛起进入到一个虚拟消费的时代.而电子商务则是互联网世界里,与网民直接利益挂钩的产业,其安全性和可靠性也必须随时经受严格的考验. 近日,由中国消费者报社主办.拉手网协办的"努力构建安全诚信网络购物环境座谈会"在京召开.会上,拉手网宣布在全国十大重点城市开通了"12315绿色通道",在当地工商部门的监督和指

如何快速构建一项新的云服务?

Azure的管理门户为客户提供了构建和部署云服务的两种方法:"快速构建"(Quick Create)与"自定义构建"(Custom Create). 本文介绍了如何使用快速构建方法构建一项新的云服务,然后使用上传(Update)功能,在Azure中上传和部署云服务包.如果你使用这种方法,Azure管理门户提供了方便的链接,以满足你的所有要求.如果你在构建云服务时准备部署云服务,可以使用"自定义构建",同时执行这两项操作. 注意:如果你打算从Win

强基层惠民生构建县域医疗服务体系建设

本文讲的是强基层惠民生构建县域医疗服务体系建设,近日,2011年山东省县级公立医院改革及数字化医院建设主题研讨会在山东邹城市成功召开.山东省卫生经济协会会长王天胜.卫生部医管司主任王敬瑶.省卫生厅医改处处长万书臻,邹城市市政府副市长宋景春.济宁市卫生局副局长张作辉出席会议并致辞.山东省县.区级医院院长.副院长以及部分科室负责人共120余人参加会议.与会领导和专家以更高.更广的视角解析山东省县级医院目前的现状,共享医院管理和系统建设的经验,研讨公立医院的发展之道.会议由会议由山东省经济协会秘书长邱

Gartner:超两成企业将用物联网构建数字化安全服务体系

众位分析师于2014年9月15到16日将齐聚阿联酋迪拜,在Gartner安全与风险管理峰会上探讨网络安全与物联网议题. 根据Gartner公司给出的预测性结论,截至2017年底将有超过两成企业利用物联网设备及服务构建数字化安全服务体系.从而实现业务项目保护.目前利用物联网设备实现特定诉求的商业案例已经切实存在,而物联网在业务及行业中逐步提升的重要地位也将迫使更多企业接纳并为之设计安全保护机制. "物联网设备在改变环境状态及自身属性方面表现出的强大能力将促使首席信息安全官(简称CISO)们重新定义