目前我们有一些单一的Web应用程序,并尝试将项目转移到微服务基础架构。
对于单片应用程序,HAProxy和会话复制具有故障转移和负载平衡。
现在我们使用spring boot构建一些RESTful微服务,但我不清楚构建生产环境的最佳方法是什么。 当然,我们可以将所有应用程序作为unix服务运行,并且仍然具有用于负载平衡和故障转移的反向代理。这个解决方案对我来说似乎很重,并且有很多配置和维护。资源管理和扩展或缩小服务器始终是手动过程。
使用2-3台服务器和简单的资源管理来设置生产环境的最佳可能性是什么? 是否有一些解决方案也支持持续部署?
答案 0 :(得分:3)
我建议您查看服务发现。 Netflix将此描述为:
服务发现系统提供了以下机制:
- 注册其可用性的服务
- 查找特定服务的单个实例
- 通知服务实例何时更改
Netflix的Eureka等软件包可能会有所帮助。 (编辑 - 实际上这看起来可能是特定于AWS的)
这应该适用于持续交付,因为服务可以使自己不可用,更新,然后再次注册可用性。