由于最近开发系统都是分布式的,所以也搞起并且研究了微服务架构
这张图真的很生动
流程:
- 服务网关、open-service和service启动时注册到注册中心上去;
- 用户请求时直接请求网关,网关做智能路由转发(包括服务发现,负载均衡)到open-service,这其中包含权限校验、监控、限流等操作
- open-service聚合内部service响应,返回给网关,网关再返回给用户
我所选用的微服务开发,技术选型:
开发语言:golang+python
网关:用kong,或者tyk,nginx
服务注册发现:etcd
通信方式:rest、Protocol
分布式链路追踪,目前还没选定:zipkin?
权限验证:分布式tocken
压力测试:ab
web框架:beego
缓存集群:redis
目前使用以上技术正在完成微服务架构数据分析系统
已经完成小型微服务系统,准备上线部署
其实经过开发微服务系统,发现一些问题:
1、数据一致性问题 (使用分布式锁)
2、分布式事务问题
微服务准备写一个系列,至于下一章更新什么,暂时还没确定。如果有什么问题,欢迎探讨