低维护 php 或 python (perl) 和 mysql 或 sqlite 数据库 web 应用程序的最佳服务器选择

低维护 php 或 python (perl) 和 mysql 或 sqlite 数据库 web 应用程序的最佳服务器选择

抱歉,这个新手问题之前已经有人问过了。(我查过了,但没有找到)。

我刚刚发现,我无法再在我使用的非常可靠(无需维护)的内部托管服务器上运行我的 Web 应用程序,因为我的硬盘空间超出了最大分配(仅 2GB!),并且我还超出了活动内存分配(仅几 MB)。现在有人告诉我,我必须设置自己的服务器。那么,最好的服务器选择是什么?

这些是我的需求:

  1. 我需要一个安全且只需极少设置和管理的服务器操作系统。(周围没有 IT 专业人员,所以我必须自己做所有事情。)
  2. 我需要运行一些 php(后来是 python?)Web 应用程序,这些应用程序驱动大小为几 GB 的后端语言语料库 sqlite(后来是 mysql)数据库,理想情况下,我希望将其完全存储在活动内存中,以加快我们对选择结果的排序。在语料库应用程序中,选择通常会产生数百或数千个结果,这些结果都必须在多个列上进行排序。(索引是必不可少的,但快速排序也是关键)。
  3. 我需要运行一个需求很低但很关键的 Drupal 内容管理系统,每周点击量可能不到 10,000 次。
  4. (我不需要任何文件服务器、打印服务器、电子邮件服务器功能)

当前托管服务器是通过 cPanel 管理的 Linux/Apache。我正在考虑购买一台配备 48GB DDR3 RAM、Raid 1 和两个 SAS 驱动器的服务器。(这完全是小菜一碟吗?)

最大的问题是我应该选择 Linux(例如 CentOS、SME Server 或类似产品)还是 Windows Server 2008 R2?Linux 似乎最适合 php/mysql 应用程序,但我想知道 Win Server 2008 R2 是否更易于管理。

如有任何意见/建议我将不胜感激。

答案1

满足这些需求的最佳解决方案是选择云托管提供商。市场上有很多云托管提供商,它们都提供强大的产品,最终决定因素很可能是价格和提供的服务数量。

从操作平台开始,我最想说的是,你应该坚持使用你当前正在运行的平台。如果你利用第三方进行迁移,那么将所有内容从应用程序迁移到数据库层将非常耗时且成本高昂。

就管理角度而言,一些云提供商提供管理作为附加服务,其范围不仅限于操作系统,还扩展到数据库领域和应用程序。

您提到了 CMS,听起来像是 LAMP 堆栈。我可以推荐一些托管公司,它们有模板可供您使用,价格低至 0.06 美元/GB 内存小时。

看看亚马逊、Rackspace 和 Logicworks 会是一个很好的起点。我实际上是上述其中一家公司的工程师,所以我非常熟悉服务模式并能够为您提供帮助,如果您有任何问题,请联系我,祝您好运!

答案2

  • 如果您只是寻求易于管理,我会选择您最熟悉/最习惯的操作系统。如果您无法决定,就选择您当前正在使用的操作系统。您可能希望仔细检查将来要使用的任何应用程序/软件包是否可在您选择的系统上运行。
  • 另一个需要考虑的问题是,您选择的操作系统/系统和应用程序有多少支持。例如,我远非 Linux 专家,但有很多关于设置和管理 Linux 系统的 HowTos/论坛,因此当我需要时,很容易找到信息和帮助。
  • 对于只有几 GB 大小的数据库来说,48GB 的​​ RAM 似乎太多了。考虑最初使用较少的内存(4-8GB),看看这对性能有何影响,并根据需要升级 RAM。这完全取决于您的应用对内存的需求程度、添加 RAM 的难易程度以及您的总体预算。
  • 在考虑需要多少内存时,请将活动记录集大小与数据库总大小进行比较。例如,我使用的数据库总大小为 7GB,但活动记录集比这小得多,可能只有 0.5-1GB。尽管为 MySQL 提供了 4GB 内存,但它只使用了其中的 1-1.5GB。

相关内容