搭建一个微服务架构需要具备四大特性
好的微服务架构是什么样的呢?特赞CTO黄勇认为,搭建一个微服务架构需同时具备粒度微小、责任单一、隔离性好、管理容易等四大特性:
服务的粒度需根据业务功能来划分,对于某些复杂的业务来说,可能粒度较大,对于相对简单的业务而言,可能粒度较小。总之,服务的粒度可大可小,但往往我们更希望它尽可能的小,但又不希望服务之间有任何的依赖,因此粒度的划分是非常考验架构师水平的事情。
我们需要确保每个微服务只做一件事情,也就是我们经常提到的“单一职责原则”,该原则对服务的划分提供了指导方针。
每个服务相互隔离,且互不影响。也就是说,每个服务需在自己的进程中运行。众所周知,进程之间是隔离的,是安全的,而进程内部或线程之间资源是共享的。换句话说,一个服务出了问题,不会影响到其它服务受到任何影响。
随着业务功能不断增多,服务的数量也会逐渐增加,我们需要对服务提供自动化部署与监控预警的能力,才能更加高效地管理服务。
嘉宾简介:
从事近十年的 JavaEE 应用开发工作,曾任阿里巴巴公司系统架构师。对分布式服务架构与大数据技术有深入研究,具有丰富的 B/S 架构开发经验与项目实战经验,擅长敏捷开发模式。国内开源软件推动者之一,Smart Framework 开源框架创始人。热爱技术交流,乐于分享自己的工作经验。著有《架构探险——从零开始写Java Web框架》一书。
责编:周建丁([email protected])