我正在设计我的软件实例供应系统的架构。为此,我将以这样一种方式使用kubernetes,即每个客户端都将具有其完整性的pod的名称空间。但是,kubernetes集群将有一个通向所有实例的公共入口点,即nginx服务器。
我的问题如下,由于所提供的软件允许上传文件,如果同时我的几个客户端决定同时上传一个文件,我冒着服务器nginx过载并且没有人可以访问您租用的实例的风险?
有没有什么好的实践来尝试设计我的架构?
发布于 2018-12-16 22:49:37
您可以使用nginx ingress controller并将其与多个副本一起部署,以便可以对其进行扩展以处理负载。然后,您的nginx是集群的一部分(而不是单独的服务器),可以利用kubernetes集群的容量进行水平扩展。
除非你在本地运行NodePort/HostPort,否则你可能想要将nginx作为外部负载均衡器运行,因为在这种情况下,你没有来自云提供商的负载均衡器。然后,您可以在nginx中配置速率限制和节流。如果是cloud,那么您也可以使用注释来对nginx入口执行此操作。
https://stackoverflow.com/questions/53803162
复制相似问题