一篇故事告诉你什么是微服务架构

更新时间:2019-02-26

于是成小胖拿了一张A4纸,图文并茂地给老王讲了他对三层架构的理解:

以 Web 应用程序为例,早期是将所有的表示逻辑、业务逻辑跟数据访问逻辑放在一起,这就是一层架构。

老王满意的点拍板,连续问:“你看最近我在做微服务的研究跟落地,你知道为什么要做这个事件吗?”

“对的,我看你对公司目前的架构也非常熟悉了,你来仔细说说当初的三层架构吧。”

老王笑了笑说:“要想知道什么是微服务架构,你得先晓得什么系统架构设计。”

系统架构设计描述了在应用系统的内部,如何根据业务、技能、组织、灵活性、可扩展性以及可维护性等多种因素,将利用体系划分成不同的局部,并使这些部分彼此之间相互分工、彼此配合,从而为用户供给某种特定的价值的方式。

于是成小胖立即屁颠屁颠的跑从前向老王求教:“王哥,我看微服务架构这么火,我也想学,你给我讲讲啥是微服务架构呗?”

三层架构是指在业务和技巧的发展过程中,系统中不同职责的部门被定义在不同的品位,每一层负责的功能更加具体化。三层架构通常包括表现层、业务逻辑层和数据拜访层,层与层之间互相连接、彼此合作,构成一个整体,并且层的内部能够被更换成其余可能工作的部分,但对整体的影响不大。

成小胖的空想是成为一名架构师,平时积累了不少常识,因而对“系统架构设计”这个概念还是很熟习的,因此他立刻就给出了答案:

看到最近“微服务架构”这个概念这么火,作为一个踊跃上进的程序猿,成小胖忍不住想要学习学习。而架构师老王(不是隔壁老王)最近刚好在做公司基础服务的微服务化研讨和落地,对此深有研究。

“因为目前的三层架构存在很多弊端,不满足业务发展的须要了呗。”

后来随着 java、.NET 等高级语言的发展,供应了越来越方便的数据访问机制,如 java 的 JDBC 和 .NET 的 ADO.NET。这时数据访问部分被分辨开来,形成了二层架构。