docker - 如何处理我的 kubernetes 集群中文件上传的并发?
问题描述
我正在设计我的软件实例供应系统的架构。为此,我将以这样的方式使用 kubernetes,即每个客户端都将拥有它们的命名空间以及它们完整的 pod。但是,kubernetes 集群将有一个所有实例的公共入口点,这将是一个 nginx 服务器。
我的问题如下,由于提供的软件允许上传文件,万一我的几个客户同时决定同时上传一个文件,我冒着服务器 nginx 过载并且没有人可以访问您雇用的实例的风险?
有什么好的做法可以尝试设计我的架构吗?
解决方案
您可以使用nginx 入口控制器并使用多个副本部署它,以便可以扩展它来处理负载。然后你的 nginx 是集群的一部分(而不是单独的服务器),并且可以利用 kubernetes 集群的容量进行水平扩展。
除非您使用 NodePort/HostPort 在本地运行 - 那么您可能希望将您的 nginx 作为外部负载均衡器运行,因为在这种情况下您没有来自云提供商的负载均衡器。然后你可以做的是在 nginx 中配置速率限制和节流。如果是云,那么您还可以使用注释通过 nginx 入口来执行此操作。
推荐阅读
- javascript - 将返回数据放入解析函数
- html - iFrame 中的 YouTube 视频仅在本地可见
- azure-data-factory-2 - c#使用数据工厂使用Where子句过滤器将SQL表数据复制到另一个数据库
- javascript - 在 div 中的页面上显示 HREF 链接
- django - 从变量中删除大括号
- node.js - Node.js - Joi 架构:检查 req.value 和 ip 不工作
- wordpress - Magento中的Wordpress家庭地址给出404错误
- terminal - 使用 grep 搜索只有部分的整个单词/短语
- sql - 在临时表中使用变量 - SQL Server
- r - R将多列分成列表