我在使用Spring Cloud/Spring Cloud Netflix从单一的单一web服务到微服务集合的大迁移开始。通过我对微服务的研究,我明白服务之间的界限应该反映他们之间的关注点分离。影响分离的另一个因素是需要哪些服务单独扩展。微服务和云资源限制
作为具体的例子,这取决于粒度的需要的水平时,一个微服务环境最终可能是这样的:
- (含有注册,登录,配置文件等)
- 存储(含帐户产品,付款,报告,存货等)
- 聊天/社会(含聊天室,用户状态等)
- ...
或者它可以通过自己的微服务括号来表示每个关注的领域的结尾,例如:
- 账户
- 注册
- 登录
- ...
我相信微服务社区对于第二种方法有偏好,我倾向于同意。但是,我遇到的问题是托管和资源限制之一。
在迁移中,我想简化资源的供应和安装更新的服务。由于我们使用AWS堆栈,Elastic Beanstalk似乎是最佳选择。虽然研究Elastic Beanstalk虽然我很沮丧,发现每个帐户有25个应用程序的限制。不仅如此,EC2每个账户每个地区限制20个实例。看起来微服务架构很快就会达到这个限制,尤其是当您为每个服务添加多个环境(分段和生产)时,更不用说网站和内部工具了。
随着我在网络上看到有关微服务的所有令人惊叹的内容,我感到很惊讶,并且对于缺少关于超出其开发范围的实际托管微服务的信息感到有点失望。我错过了什么吗?有关于在AWS上部署多个微服务的任何信息吗?
我的理解是,Netflix使用AWS进行自己的微服务托管,除了要求亚马逊的额外资源并向其投资外,还有其他解决方案吗?他们的Asgard工具可以帮助解决这个问题(可能通过处理服务之间的实例共享)还是会导致相同的结果?
AWS会很容易地提高这些限制。您可能还想查看ECS –
您可以联系AWS以提高限制。我做了很多次这个过程比较快。他们只是想知道你的用例。 –