0

我正在做一个 SaaS 项目,mysql 是我们的主要数据库。我们的应用程序是在 c# .net 上编写的,并在 windows 2003 服务器下运行。

考虑到维护、成本、选项和性能,我可以为 MySQL 托管、windows 还是 Unix/Linux/Ubuntu/Debian 选择哪个服务器平台?

场景如下:

我今天运行的服务器的交易量适中。数据库每天增加 5MB,我们预计在几个月内增加 50MB,这是关键任务。

我不知道数据库会有多大。我们租用 VPS 来托管应用程序和数据库服务器。

我们的大多数查询都很简单,但我们的 ORM 工具不断使用子查询。我们还运行简单和繁重的报告。其中一些在用户单击后运行,但大多数运行在队列中。

随着我们有更多的客户,购买一个额外的 co-lo 空间会很好。毕竟那是SaaS项目。

4

2 回答 2

1

开发时,您可以使用 Windows 机器来运行 MySQL 服务器。如果您希望将 DBMS 放在单独的服务器中,它可以位于 Windows 或 Linux 服务器中。

MySql 和备份等支持工具在 Linux 中可能有更多选择。

还有第三方供应商将在他们的服务器上托管您的 MySQL 数据库。好处是他们将处理备份、维护等。

另外:查看 phpMyAdmin 以用作出色的管理工具。

拉里

于 2009-05-19T16:15:13.847 回答
0

我认为您需要更多信息才能做出明智的决定。在没有具体信息的情况下很难得出“最佳”答案。

  • 您预期的交易量是多少?
  • 数据库将有多大?
  • 您的查询有多复杂,即它们运行时间长还是相对较快?
  • 您是否将应用程序托管在您自己位置的您自己的服务器上?如果您必须购买额外的 co-lo 空间,那么额外的服务器可能不是最佳选择。
  • 这个数据库有多“关键任务”?即,也许您需要复制服务器以确保稳定性。

http://www.sizinglounge.com/上有一个在线服务器大小调整工具,因此您应该检查一下。听起来您的服务器可能比它们的最小层小,但它应该是一个很好的起点。

如果这是一个任务关键型应用程序,您需要对额外的服务器进行某种复制,以防主服务器出现故障,因此您肯定会看到两个系统。这必须是一个好的备份计划的补充。

鉴于您不确定它会变得多大,您可能会继续租用服务器。对于您的备份,一个想法是查看在 Amazon EC2 实例上运行 MySQL。顺便说一句,拥有远程复制服务器很重要。如果您有两个相邻的系统并且出现环境问题,则它们可能同时无法使用。但是对于远程副本,您的选择是开放的,可能会解决它。

如果您在本地运行大量只读查询并将您的站点托管在某个地方,那么设置一个本地复制的数据库副本以进行查询可能是有意义的。这可能会大大改善您的网站和本地性能。另外,它会让您在控制下拥有一个本地副本。

HTH,布兰登

于 2009-05-19T16:09:10.560 回答