背景
- 最近对已搭建的 MinIO 做了一些性能测试。服务为单实例部署,服务器配置为阿里云 ECS 实例 2c8g 、100Mbps 外网带宽、ESSD Entry 硬盘。
- 在文件大小为 1000kb 、并发为 10 、持续时间 300s 、90%读文件的维度上,测试结果是(以读文件数据为例):平均响应时间是 606ms ,服务器处理时间是 29ms ,吞吐量是 16.35op/s ,服务器带宽被完全占满,cpu ,内存,硬盘各项指标均正常。
- 由此可见主要的瓶颈是服务器的外网带宽,于是想到组建 MinIO 集群的方法提高吞吐量。
疑问
- 问题随之而来。假设采用四台上述相同配置的 ECS 实例组成集群,使用单实例 Nginx (官方推荐的负载均衡器之一)做负载,理论上在 MinIO 层面带宽比单实例的带宽会高,吞吐量也会随之提高。但是否部署 Nginx 所在的服务器的带宽(假设也是 100Mbps )会是性能瓶颈?
- 如果是性能瓶颈,那我现在想到的办法是做成 Nginx 集群,然后使用更高层的负载均衡器(例如 DNS 轮询、F5 等)将流量分发到不同的 Nginx 服务器上。不知道我这种想法是否正确?
- 如果我的想法不正确,请不吝赐教。
|
|