微服务的概念和好处,我这里不再多说了,毕竟每个人理解都不一样,也没有什么所谓的标准答案。
在我看来,微服务能为我解决应用的灵活扩展,资源隔离,高可用,巴拉巴拉一堆问题,就是这么个玩意,用了感觉高大上。吐槽一下,几千个用户,几百并发的项目就上微服务,大刀阔斧的重构代码,感觉挺傻……
言归正传,目前比较火的微服务架构就是阿里的Dubbo和Spring Cloud
要比较两种微服务架构的好坏,这个得从很多方面去比较,总结一下主要就是Dubbo很多需要自己动手丰衣足食,而SpringCloud只需要各种集成开源组件就OK。但是,Dubbo对代码的侵入性比较小,这个我比较在意,毕竟我希望我搭起了一套框架之后,别人来填业务代码的时候不会老来问我,这个怎么写巴拉巴拉……
那么,现在正式开始
微服务架构图
初步构想为:
1使用nginx作为反向代理部署在静态资源服务器上
2微服务调度采用dubbo,搭建3个zookeeper组成集群
3服务消费者同时作为api网关,处理熔断,降级,鉴权等
4redis同时作为缓存和分布式session容器
5.服务采用docker发布,考虑集成jenkins自动发布
6搭建分布式配置中心、日志服务、消息服务
后台技术栈:
springboot
springwebmvc
mybatis
Atomikos
Durid
tcc
剩下的一边做一边想吧……