微服务
微服务框架不应该限制技术与语言,但生产实践中发现无论dubbo还是spring cloud都具有侵入性,我们在将nodejs应用融入spring cloud体系时就发现了许多问题。也许未来的service mesh才是更合理的发展道路。
- zuul作为gateway,分发不同客户端的请求到具体service
- erueka作为注册中心,完成了服务发现和服务注册
- 每个service包括gateway都自带了Hystrix提供的限流和熔断功能
- service之间通过feign和ribbon互相调用,feign实际上是屏蔽了service对erueka的操作
一旦要融入异构语言的service,那么服务注册,服务发现,服务调用,熔断和限流都需要自己处理。
自动化部署
通过Jenkins生成jar包传输到跳板机,之后再通过Ansible部署到集群。