微服务架构是现金十分经常使用且受欢迎的架构,那么究竟微服务解决了什么样的问题,它与传统的架构相比有些优点呢。架构
微服务是什么,有人是这样总结的,微服务就是一些协同工做的小而自治的服务。微服务
它有两个特色 (1)足够小,小到一个小团队足以control。(2)独立。它能够独立部署在pass平台,也能够做为操做系统的一个进程。性能
这样的设计为它带来了怎样的好处:操作系统
(1)技术异构设计
在一个多个服务协做的系统中,能够在不一样的服务采用最适合该服务的技术。blog
尝试使用一种标准化技术,会使全部的场景都没法获得很好的支持。进程
(2)弹性:若是系统中的一个组件不可用,在单系统中,那么整个服务都会不可用。固然单模块系统也能够经过将不一样的实例部署在不一样的机器上加强可用性,然而若是采用微服务技术,它自己部署
就能很好的处理服务不可用和功能降级的问题。扩展
(3)扩展:单块服务只能做为一个总体扩展,即便系统中一小部分存在性能问题,也须要对整个服务进行扩展。若是采用微服务,则能够只对须要扩展的服务进行扩展,从而减小成本。程序
(4)简化部署:在有几百万行的单块应用程序中,即便只修改了一行代码,须要从新部署整个应用,程序才可以发布。不只影响大,并且风险高。在微服务架构中,各个服务的部署是独立的,
即便出现问题,也只须要回滚一个服务。
固然还有一些未及列出,上面所讲,是微服务架构的主要优点。
详细还能够参考《微服务设计》,由中国工信出版集团出版。