嗨,我想知道设置当前应用程序的最佳方法。以下是一般概述。
我有一个手机应用程序,可以从 vps 上传和下载照片,并将文件静态存储在其上。
手机应用程序向脚本发出网络请求,该脚本在本地数据库中查询照片文件路径,然后返回该路径,之后手机向同一台服务器发出另一个照片请求。
该服务器也用于承载网站。
我想知道分离功能的最佳方法是什么。据我所知,我应该获得另一台仅容纳数据库的服务器,并在 vps 上安装查询数据库服务器的脚本。我是否应该将照片也存储在数据库服务器上,还是应该将其存储在容纳数据库的服务器上?
另外,我是否需要 ec2 服务器或者像 push 这样的通用 vps 是否可以用于这样的工作?
答案1
是的,一般的 Web 可扩展性实践使用单独的 Web、数据库和文件服务器。但是,不要盲目地这样做,而要知道您的性能和可扩展性瓶颈在哪里。
在开始进行更改之前,您需要对您的应用进行基准测试和分析。先让它运行起来,然后再让它运行得更快。
此外,您可能可以通过适当的缓存和对每一层(Web、数据库、文件系统)的调整来处理一台服务器上的合理负载。