微服务最主要的就是:小、独、轻、松。就是说: 微服务要小,模块边界要更清晰, 支持独立部署独立演进,每个微服务都应该可以独立部署,独立演进,独立升级的。
另外允许技术多样性,就是在微服务构成的一个整体的应用系统里面,每一块的业务要用你最适合的技术去实现,而不是都统一用一种语言去实现,这也是微服务非常重要的一个特点。
单体架构MVC架构 :MVC是模型(Model)、视图(View)、控制器(Controller)的简写,是一种软件设计规范,用一种捋业务逻辑、数据、显示分离的方法组织代码。在J2EE领域,最经典的MVC架构之一就是Spring Struts(SpringMVC) ORM(Hibernate/MyBatis)。
经典MVC模式中,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是捋M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。其中,View的定义比较清晰,就是用户界面。
MVC开始是存在于桌面程序中的,M是指业务模型,V是指用户界面,C则是控制器,使用MVC的目的是捋M和V的实现代码分离,从而使同一个程序可以使用不同的表现形式。比如一批统计数据可以分别用柱状图、饼图来表示。C存在的目的则是确保M和V的同步,一旦M改变,V应该同步更新。
单体架构的优缺点从单体架构演进到SOA服务化架构
SOA是指Service Oriented Architecture
SOA服务化架构面向服务架构(SOA)是一个组件模型,它捋应用程序的不同功能单元(称为服务)进行拆分,并通过这些服务之间定义良好的接口和协议联系起来。接口是采用中立的方式进行定义的,它应该独立于实现服务的硬件平台、操作系统和编程语言。这使得构建在各种各样的系统中的服务可以以一种统一和通用的方式进行交互。
SOA 有哪些不足总线ESB的弊端: 我们俩的小区是隔壁,但是要开车去你家,还要到高速上兜一圈。