产品必懂技术术语:什么是微服务?
微服务是一种软件架构。
最近在网上看到一个很贴近现实生活的微服务例子😎。
假设你有一个5种口味的混合冰激凌机,想生产新品,修改或删除口味,就只能整个机器停机维修。
但是如果你把5种口味拆成5个单机器时,想增加/修改/删除冰激凌口味,就不需要整个机器停机中断,只需要停机单个机器就可以。
从上面我们可以看出微服务的几个特点:
1、单一功能
2、可复用性强
3、故障排查简单
5种混合口味的冰激凌机器架构就是比较原始的单一模式架构。
单一模式架构可以说是一个前端模块只对应一个后台的模式。
这种模式的优点是比较简单纯粹,缺点是后台的全部逻辑都写在一个项目中,
如果它本身有可复用的模块也得不到复用,比如登录功能、发短信功能、发模版消息功能等。
而且随着需求的不断迭代,项目会越来越复杂。到后面故障排查会变得更加困难。
一个小的功能bug可能会影响整个系统。
5种口味的冰激凌机器架构可以说是类似微服务架构。
这个架构可以说是目前使用的最多的一种。
这时,就可以把很多单一功能模块,比如统一登录、统一鉴权、发消息等模块单独拆成一个微服务了。
这样这些模块就得到了共用,以后如果有业务需要用到,只需要调用下微服务接口就可以了🤓。
后面如果新增、修改、删除微服务功能,只需要修改单一微服务就可以👍🏼。
如果有故障排查也很好定位,比如说登录问题,那一般找 登录服务的负责人去看就可以了😇。
产品经理提需求时,了解了不同微服务的负责人,也可以很快找到相关开发提需求或者提bug了👻。
--- end ----
评论