记得原来有个项目是用wcf做的分布式,不仅横向根据业务拆分了,纵向把业务处理、数据访问等也拆分了成不同的服务,这个是当时公司的产品我也只是一个小小的开发人员所以就不做太多的评论,只是不得不吐槽下调试真的太麻烦。
后来,微服务的概念出来了,看着java生态圈中的 spring cloud,dubbo是真的眼红,
当然自己本身也在项目中用到分布式的地方会用用consul 来做下服务发现和配置管理之类的一些功能,但是没有成熟的框架来支持自己去真正的实践下微服务。
再后来,.net core出来了,我也知道了中国有这么一群热心.neter--NCC,也在这边很欣喜的发现了一些很好的开源的微服务或者说SOA方面的项目,比如杨总的Cap,还有surging等等,当然还有docker的普及,Service Fabric开源以及现有项目性能的瓶颈和代码维护扩展的难度也坚定了我慢慢去拆分现在的单体项目到微服务的想法。
当然没有大量的实践积累,我不可能直接去用到线上的项目,现在初步的打算是根据一个案例来搭建一个微服务框架的简易项目(可能没有什么业务逻辑)但是微服务中需要支持的组件都需要用到,比如服务注册发现,负载均衡,Metrics,服务容错和断路,消息总线等等。可能会用到Service Fabric ,也可能自己去组装不同的轮子来实现这些功能,现在还在权衡这些东西。
计划不错,而且耗时应该也不少,希望自己能早点把这一系列做出来,也希望大家能多给我提建议,多来指导,感激不尽。