微服务架构
微服务是一种架构风格。一个大型的软件应用是由多个微服务构成的,系统中各个微服务是独立部署的,服务与服务之间是低耦合,每个服务之间是高内聚的。每个服务只关注一件任务。并能很好地完成该任务。这里说的架构风格是项目的架构风格并不是我们熟知的32种架构模式。常见的项目架构有:客户端与服务端,组件模型(EJB),MVC分层架构,面向服务的架构也就是常说的SOA架构。
特点
- 有多个服务 。
- 每个服务单独部署
- 服务与服务之间是松耦合,服务内部是高内聚 高内聚指的是每一个服务只是完成一个功能,外部是低耦合。
优缺点
微服务的优点完美的解决了单体架构的缺点,但是也有一些自身的缺点,因为微服务是多个服务,每个服务负责一个功能,所以微服务部署起来相对困难一些,最主要的缺点是分布式事物的处理时比较困难的,这一点也有很多优秀的解决方案已经提出来了,可以借鉴参考学习。