Php 将存储服务器与前端服务器链接的最有效方法?

Php 将存储服务器与前端服务器链接的最有效方法?,php,linux,server,storage,transfer,Php,Linux,Server,Storage,Transfer,首先,我想说谢谢你花时间阅读这篇文章 因此,我目前正在做一些研究,并计划如何使这个设置工作得最好 我有一个主服务器,运行为客户机定制的CRM。客户端希望开始上载大文件,这将在短时间内填满服务器磁盘。因此,这些文件需要保存在远程/备用服务器上,但也可以通过HTTP访问(显示在前端CRM上) 我该怎么去做这样的事情呢 我曾考虑使用FTP将文件传输到远程服务器,但这似乎是一个额外的不必要步骤,因为文件将首先上载到主服务器,然后发送到辅助服务器。这是带宽和响应时间的两倍 也许有一种方法可以将辅助服务器作

首先,我想说谢谢你花时间阅读这篇文章

因此,我目前正在做一些研究,并计划如何使这个设置工作得最好

我有一个主服务器,运行为客户机定制的CRM。客户端希望开始上载大文件,这将在短时间内填满服务器磁盘。因此,这些文件需要保存在远程/备用服务器上,但也可以通过HTTP访问(显示在前端CRM上)

我该怎么去做这样的事情呢

我曾考虑使用FTP将文件传输到远程服务器,但这似乎是一个额外的不必要步骤,因为文件将首先上载到主服务器,然后发送到辅助服务器。这是带宽和响应时间的两倍

也许有一种方法可以将辅助服务器作为“网络位置”连接到主服务器上,然后在上传文件时将其移动到主服务器上

另一个可能出现的问题是,主服务器需要能够在存储服务器上动态创建目录,因为它是一个CRM,因此会添加新的客户端,以便将文件上载到/clients/{ID}/{PROJECT}/*例如

我曾考虑过使用AmazonS3或其他云存储服务,但客户希望为其存储提供专用服务器

另一种可能是让用户直接上传到存储服务器,然后存储服务器将信息发送回主服务器,但不确定这将如何发挥最佳效果


主服务器正在运行CentOS,由WHM/cPanel管理。

正如评论中已经提到的,您肯定不想使用FTP。这可能是最糟糕的解决方案

一般来说,在服务器方面,解决方案必须是透明的,如果两台服务器都运行基于Unix的操作系统,那么NFS就是典型的解决方案。以下是在CentOS上设置NFS的简短方法:

如果将来出于某种原因决定将存储迁移到Amazon,那么好消息是它已经支持NFS(以及SMB),因此重新配置成本保持在最低水平

如果其中一台服务器位于Windows上,则SMB很好。此外,它在访问方面提供了更大的灵活性(旁注:IMHO在大多数情况下,典型的Unix访问方案已经足够了)。 配置也不难,但它不是Unix的本机。因为SMB的速度较慢,但如果您不需要一流的实时性能,那么这不会是一个问题(老实说,最大的问题是客户端到服务器的连接,而不是服务器到服务器的连接) 在这里,您可以在CentOS上找到SMB的图形和CMD配置说明:


WebDAV是通用的,在通过高延迟网络(如Amazon云)进行文件访问时,它比SMB更具优势。WebDAV在本地网络上的性能可能比SMB差。此外,它的文件大小限制为4 GB

我的问题是,为什么不将新硬盘连接到当前服务器?为什么第二台服务器仅用于此目的?您肯定应该通过前端服务器(CMS)路由所有流量。这不仅使客户端的工作变得简单和透明,而且还增强了安全性,允许您在需要时在以后更改设置。如果您的客户端坚持使用专用服务器,那么就给他一台专用服务器。不要使用第1970个FTP协议,它只会打开安全漏洞,是网络管理的一大难题。相反,使用卷访问协议(CIFS、SMB、NFS)或WEBDAV作为http扩展。@MateiMihai服务器不是本地的,它位于数据中心。所以也不是在客户那里。非常感谢您提供的信息和链接。这绝对是一个很好的开始了解如何设置这一切的地方。非常感谢!