由于最近的开发都是围绕微服务、可扩展性进行的。 但是由于一直忙于调试功能和赶进度,没什么时间来测试微服务最好的部分:冗余和灵活性。 昨天第一次尝试了开启多个服务副本并动态扩容的尝试。
我们使用的是Spring Cloud (Boot) 框架, 发现服务由Netflix Eureka提供,这是一套最早设计在Amazon AWS上工作的发现服务,经Spring优化和整合之后成为Spring Cloud Discovery的一部分。
目前我们的服务列表,目前完成了多个头像服务和账户服务的运行。 在测试中还尝试了多个身份验证服务同时开机,不过由于一些设计上的缺陷,导致针对服务的身份认证机制里面的权限申报数据储存在了内存当中,导致无法多服务自动共享这部分数据,在发现问题后暂时关闭了身份验证的多服务支持,这部分问题会在整套系统上线之前尽快解决。
这次测试服务冗余性和多机同时运行的能力也是因为最近遇到的一些硬件不稳定、其他项目服务运行不稳定等问题做出的一个解决尝试,希望能通过这样的一套系统自动识别某一服务实例发生故障,及时从整套系统阵列中断开并重启恢复服务。