linux - 在 centos whm 和 nginx 网络服务器上扩展文件系统

标签 linux image object filesystems scaling

我们为客户建立了一个市场,我们的数据库中有数十万家公司,他们将添加带有许多文件(图像、视频等)的产品。个人用户也可以发送照片。

我们项目的不同部分根据不同的内容使用centos +whm (nginx+cassandra+mysql+redis+nodejs+php+java)。

对于主要软件,我们使用 mysql 和 cassandra 作为数据库服务器,在 php7 代码和数据库服务器(已经扩展)之间有 restful java webservices。nodejs+redis+cassandra(用于聊天)

我们在缩放信息方面没有问题,但现在我们必须决定如何缩放对象。我们工作的公司为我们获得的每台服务器提供 10TB 带宽。如果我们考虑与亚马逊或其他云服务合作,仅对 10TB 带宽他们会收取很多费用,另一方面在这种情况下我们将有另一台服务器也将用于其他问题。因此,拥有服务器而不是云存储似乎更好。

现在我的问题是我们应该如何处理静态文件?最好的解决方案是什么。

为每个新服务器创建具有子域的节点,例如 static1.domain.com、static2.domain.com。并将图像位置添加到数据库以显示图像的位置。在这种情况下,对于上传,我们总是需要在每个服务器已满后更改目标安装磁盘。我们还将使用 CDN 来降低服务器负载。

最适合我们情况的架构是什么?谢谢

最佳答案

Amazon Web Services (s3) 中只有一个选项。那不是文件系统,但您可以将静态文件存储在该 s3 存储桶中。它将根据数据大小和数据 99.99999999999% 的可用性自动增加/减少存储大小。

马来西亚, AWS-s3

关于linux - 在 centos whm 和 nginx 网络服务器上扩展文件系统,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43414307/

相关文章:

具有持久数据的 Ruby Gems

html - 通过 url 生成随机图像

java - 如何在 JSP 页面中检索并显示数据库中的图像?

javascript - 通过字符串名称引用对象成员?

linux - 如何修复 bash az 命令未找到

php - 更改虚拟目录权限时,CentOS/Linux apache Web 服务器出现权限错误

linux - 如何防止Linux上的ksh被局部变量覆盖全局变量?

image - 将图像添加到 BitBucket 上的 README.md

javascript - 将 API 批量股票对象映射到股票数组 | react

php - 为嵌套对象扩展 json_encode