PHP应用开发好了?恭喜你!不过,现在还没什么用,因为用户无法使用。你要把应用存储到服务器中,让预期受众能访问。
一般来说,存储PHP应用有四种方式:共享服务器、虚拟私有服务器、专用服务器和平台即服务。每种方式都有自己的优
点,都有适用的应用类型和一定的预算。
而且主机商也有很多, 如果你刚接触Web主机领域, 要考虑的事情有很多 。 有些主机商只提供共享服务器, 有些主机
商除此之外还提供虚拟私有服务器和专用服务器 。 本章不会过多讨论主机商, 我们要重点讨论的是主机方案。
共享服务器
共享服务器是最便宜的主机方案,每月1 - 10美元。我们不应该选择共享主机方案。我这么说不是因为我对共享主机提
供商的服务质量或客户支持有意见, 好的共享主机提供商有很多。 我这么说只是因为共享主机方案对开发者不友好。
如其名所示, 共享服务器意味着要和其他人共事服务器资源 。 如果选择购买共享主机, 你的主机账户会与很多其他顾
客的照 户在同一-个物理设备中 。 假如你使用的设备有2G B 内存, 那么你的PHP应用或许只能使用全部内存的一小部
分, 具体是多少取决子这台设备中有多少账户。 如果同一台设备中的其他照户运行一个编写拙劣的脚本, 会对你的应用
产生负面影响 。 有些共享主机提供商会超卖共享服务器, 导致你的PHP应用始终要在拥挤的设备中争夺系统资源。
而且,共享主机还很难定制。例如,你的应用可能需要使用Memcached或Redis在内存中缓存;可能想安装Elasticsearch,
为应用添加搜索功能。可是,共享服务器使用的软件难以定制(可能根本无法定制) ,最终受影响的是你的应用。
共享服务器很少提供远程SHH访问功能, 通常只能使用FTP访问 。 这个缺陷有严重的限制, 妨碍了我们自动部署PHP应用。
如果预算非常少,或者需求很简单,共享服务器也许够用了。然而,如果你开发的是商业网站或较受欢迎的PHP应用,最好使
用虚拟私有服务器、专用服务器或PaaS。
虚拟私有服务器
虚拟私有服务器(virtual Private Server, VPS)看起来、感觉起来以及表现都像是裸机服务器, 但其实不是裸机服务器。
vPs由一系列系统资源组成, 分布在一台或多台物理设备中,不过仍有自己的文件系统、根用户、系统进程和IP地址。 VPS
的内存、 CPU和帯宽是固定的, 而且都只属于你一个人 。vPs的系统资源比共享服务器多, 会提供根SSH访问功能, 而且
不限制能安装什么软件。不过,功能强意味着责任大。 VPS会提供根权限,让你访问底层操作系统。我们要根据PHP应用的需
求, 自己动手配置和保护操作系统。 对大多数PHP应用来说, VPS是最好的选择。 vPs提供了足够的系统资源(例如, CPU、
内存和硬盘空间) ,而且能按需增减。 VPS每月需要10- 100美元,具体多少取决于PHP应用所需的系统资源量。如果你的PHP
应用特别受欢迎(每月有几十万访同量) ,觉得VPS太贵,或许应该考虑升级, 使用专用服务器。
专用服务器
专用服务器是机架式设备, 由主机商代你安装、 运行和维护。 我们可以根据自己制定的规格配置专用服务器。 专用服务器
是真实的设备, 必须搬运、 安装和监控, 设置和配置的速度没有vPs快 。 话虽如此, 但是专用服务器能为要求高的PHP应用
提供最好的性能。
专用服务器和VPS非常类似,有根权限,能通过ssH访问底层操作系统,而且必须根据PHP应用的需求保护和配置操作系统。 专用
服务器的优点是成本效益高。 随着所需的系统资源越来越多,最终你会觉得vPs太贵,而自己投资基础设施能省钱。
专用服务器每月要花几百美元, 具体多少取决于服务器的规格 。 我们可以托管专用服务器(额外付钱给主机商,让它们管理服
务器) ,也可以不托管(自己管理服务器) 。
PaSS
使用平台即服务(Platforms as aService, PaaS)能快速发布PHP应用。与虚拟私有服务器和专用服务器不同, 我们无需管理PaaS。
我们要做的只是登录PaaS提供商的控制面板, 单击几个按钮。 有些Paas提供商会提供命令行工具或HTTP API, 让我们部署和管理存
储的PHP应用。 流行的PHP PaaS提供商有:
- AppFog
- AWS Elastic Beanstalk
- Engine Yard
- Fortrabbit
- Google App Engine
- Heroku
- Microsoft Azure
- Pagoda Box
- Red Hat OpenShift
- Zend Developer Cloud
各个PaaS提供商的价格有所不同,不过与虚拟私有服务器差不多:美元10~ l00美元。我们要为P H P应用使用的系统资源买单 。 系统
资源可以接需增减 。 我推荐不想自己管理服务器的开发者使用PaaS主机方案。
选择主机方案
我们要根据自己的需求选择合适的主机方案。 任何时候, 只要需要都可以升级或降级主机基础设施。对小型的PHP应用或原型来说,
PaaS提供商(例如Engine Yard或Heroku) 或许是最好最省事的方案。 如果想更多地控制服务器的配置, 那就使用VPS。 如果应用
特別受欢迎, VPS被几百万的访问量击夸了(顺便恭喜你) ,那就换用专用服务器。不管选择哪种主机方案,都要保证主机中有最新稳定
版PHP,以及PHP应用所需的扩展。
摘自:Modern PHP 中文版