1

我有一个分成几个组件的 Web 应用程序。由于某些原因(定价),我正在考虑在不同的云中部署未来的组件。

有没有人有这方面的参考和经验来告诉我这是否肯定不好?我知道位于不同网络中的组件会降低性能。同时,我不喜欢失去选择新组件的权力的想法。

基于微服务的系统必须都在同一个网络中吗?你如何处理这个问题?

4

2 回答 2

1

过去曾与多项服务合作过,我可以告诉您,服务是为跨不同网络工作的。这就是为什么有 CAS、SAML、OAUTH、HTTPS 和 HMAC 等安全协议的原因。

因此,只要您能够处理网络管理,并且您的服务具有良好的安全性(我假设您做到了),那么我就不会担心违反一些不言而喻的微服务规则。请记住,如果写得好并且有用,微服务有望在互联网上使用,特别是对于物联网,因此它们有望在多个网络上使用。

于 2015-05-05T15:33:32.410 回答
1

当你开始尝试这个时,我会非常关注带宽费用。以 AWS 为例,如果您在同一地区,则可以。如果有的话,服务之间的带宽不会花费太多。假设您使用 AWS 和 Google Cloud。现在,您将为 2 个提供商之间的带宽付费。

作为一个建议,我会将 Docker 视为解决供应商锁定问题/担忧的可能解决方案。

您将仅限于支持 docker 的提供商,但理论上您可以轻松地在提供商之间快速迁移,因为您的应用程序将从每个云提供商架构中抽象出来。

性能,将受到任何离开供应商数据中心的影响。我想通过一些调查,您可能会尝试研究使用通用互联网交换的提供商。这将有助于至少减少几跳。

于 2015-05-07T06:21:40.713 回答