在单个Linux服务器上超过1Gb上传

我在CentOS上有一个非常受欢迎的nginx web服务器,它提供了大量的静态内容。 当并发连接数量低时,服务器可以轻松提供高达4Gb的stream量,但是当并发连接数量增加时,服务器性能将下降到400Mb,I / O利用率达到100%。 我尝试了SSDcaching,使用noatime挂载文件系统,更改I / O调度程序,增加服务器内存高达256GB,nginx上的不同configuration,如aio,文件发送,但没有成功。 有没有其他的configuration来改善它的性能?

那么创build一个虚拟磁盘并把内容放在那里呢? 您可以运行rsync将数据备份到物理磁盘并防止数据丢失。

我想,当你服务的客户端数量less,那么你的服务器能够caching大部分所需的数据在RAM中,所以它几乎是专门从内存。

但是,当越来越多的客户端服务大部分数据不适合你的RAM,你的服务器需要从你的IO子系统读取它。 高速caching的使用less得多,因为大部分时间所需的数据都不在那里。 而机械驱动器将需要寻求很多。

我不知道你有多less数据,你的IOconfiguration如何,但我认为机械驱动器是不够的。 还有比您使用的数据小的SSDcaching。

您可以在RAID1中使用几个具有高随机读取性能的SSD。 或者,也许你可以“碎片化”你的数据 – 而不是使用一个巨大的文件系统将文件分割成大量的小型SSD磁盘,例如在crc32(filepath) % 8为8个SSD。