我的网站有一台 linux 服务器,其中包含 php 代码、数据库和文件。
最终用户正在为他们的个人任务上传和下载文件。我的网站运行良好,但随着网站的发展,这些文件量将增加,因此我的网络服务器将超载。
所以我想对文件使用单独的服务器,这样可以减少 1 个网络服务器的负担,文件将被下载并上传到另一台服务器上。
谁能建议我实现这一目标的最佳方法。我知道文件可以在通过网站上传后通过 php 的 FTP 功能传输到另一台服务器,但似乎不是正确的方法。
选项 1(简单):您将上传表单发布到第二个服务器,而不是使用运行应用程序其余部分的服务器处理上传
选项2:(在大多数情况下是错误的方法)让服务器1上的接收脚本将其存储在数据库中,服务器2在检查下载时将其从数据库中提取并在本地缓存。
选项 4:(我最喜欢)在服务器 1 上放置一个反向代理(例如清漆),让应用程序在服务器 2 上运行,并让代理缓存静态文件,因此反向代理将处理下载(和其他静态文件)如图像、javascript 等)(如果可用)。这也允许您使用一些其他技巧来提高性能(例如缓存可以缓存的站点)。https://www.varnish-cache.org/