我有一个应用程序的基础设施devise问题。 现在我们从一个GFSv2双节点集群中访问很多小文件(小于10MB)。 90%的文件访问是对这个GFSv2分区的“随机读取”,另外10%是随机写入。 我已经完成了对noatime,nodirtime和plocks的所有调整,但是IOwait仍然太高。 什么是这种情况下更好的select?
其他可能相关的细节:所有千兆networking,所有主机都在同一个机架上,gfs来自SSD级联的SAN,延迟小于1毫秒,性能卓越,使用DLM的爱华达只有3%,每秒只能写两个3MB文件。 我们显然打算处理更多的事情。 我需要一个解决scheme,将HA和横向扩展。
我知道文件系统的select是非常依赖于stream量types,所以我希望我已经准确地描述了我的用例。
这取决于文件有多小。 如果你超过10kb,你可以尝试GlusterFS。 更大的文件和带镜子的2个节点群应该能够处理大量的吞吐量。 真的很小的文件 – gluster失败:(
你也可以尝试Ceph(对象或块存储)或Swift(对象)。 对象存储的事情是,你需要连接到它与API。