作为我公司的一名独立开发人员,我错过了一些想法。 我已经获得了为我们的服务器收集一些硬件要求的任务,所以我们可以使一些内部网站公开面对。
目前的硬件是
SRV1 – 统计处理器。
Windows Server 2003英特尔至强CPU 3.00ghz 1个内存512个镜像RAID硬盘
SRV2 – 当前正用于复制某些表。
Windows Server 2003英特尔奔腾4 1200MHZ 1.00演出RAM 40演出硬盘
目前SRV1的stream量统计是
每小时的交通量1ø收到149 GiB 1,034 MiB已发送445 GiB 3,096 MiB总计594 GiB 4,130 MiB
机器正在运行瓦堆。 有几个简单的基于Java的程序正在读取和写入数据库。
应用程序1:
将数据加载到myisam表中 – >运行在myisam表上只select查询,并使用信息来插入和更新一个大的InnoDB表。 – >将大型InnoDB表(当前7.5 GiB 13磨logging)中的数据(插入和重复键更新查询)汇总到较小的InnobDB表(最大的2个gig 2,016,166logging)中以实现快速读取访问。
应用2:
读取较小的InnoDB表格,对其包含的数据进行一些警报/报告。
Web使用情况:
只读内部和外部的InnoDB表。
即使将这些表格中的数据存储到客户中,我也不相信服务器将通过Web服务器有大量的连接。 所以我不太在意,我更关心访问数据的速度。
所以,总结这个愚蠢的长问题。
什么人会build议在操作系统/内存/硬盘/ RAID /处理器方面。 我猜测答案会是最好的,你能负担得起。 但是我承认,对于像ram / raid / processing / harddrives这样的东西,以及需要花费多less东西,我能够承受的最多的是什么。
任何人有任何额外的build议,将不胜感激。
提前致谢
艾伦
如果你想保持熟悉的Windows安装程序,你一定要考虑Windows 2008 R2 Standard,但是如果你不想支付许可证,你可以切换到Linux(CentOS,RHEL,Debian,Ubuntu是很好的发行版)。
你可能会需要一个四核,没什么太贵的,也许是Intel X3440,配备12GB内存,这应该可以帮助你的数据库坐在内存中,所以一切都很快,而且还有4个硬盘,不pipe是普通的企业SATA还是SAS 15K RPM磁盘,如果您需要更多的磁盘I / O,但无论select哪种方式,都需要RAID-10支持带有BBU的RAID卡。
戴尔可能是获得这样的服务器的一个很好的来源。 如果你目前的硬件一直很好,那么这个服务器看起来会很快。
好的,让我们直接看看:
Windows Server 2003英特尔至强CPU 3.00ghz 1个内存512个镜像RAID硬盘
这台机器就像没有发动机的保时捷。 对于多核心的现代计算机,内存太less了。 装入碟片时,碟片还是太慢了。 无论这是否是您应该知道的问题(需要检查光盘计数器)。
我运行一个SQL Server上:4核心8 GB的虚拟化内存。 光盘版面将会让你感兴趣。 我有不同的tempdb,日志文件和数据集,数据是一个突袭10超过6个velociraptors。
为什么? 光盘LOVE(!)IO,在我的情况下,我运行我有聚集十亿和更多行的表。 RAM可以方便地进行caching,但除此之外 – 磁盘IO是至关重要的。 当我必须增长它们的时候,我可能会把SSD作为第二对(在RAID 10中连接SSD和物理磁盘 – 当你这样做时,我的Adaptec控制器有一些很好的function)。
现在,硬件。 超微。 只有有明智的例子。
你可以得到一个4机架单位高度和24个光盘插槽,或者一个8单位高度和72(!)光盘插槽的情况下,你应该永远需要他们(我喜欢那件事 – 可悲的是我不是一个)。
操作系统:没有区别。 认真。 WIndows HAS开销 – 是的。 但谁在乎。 数据库服务器是内存猪,WIndows的小开销不会破坏一个16+ GB的机器。
处理器:根据你做什么,数据库明智不相关或不。 THey与数据仓库,数据清理相关,但纯粹的事务处理通常是IO的限制。 IO是什么生活和死亡。 Velcoiraptors在低成本和高性能之间是一个非常好的地方….比SAS驱动器便宜很多,比大多数SATA驱动器快得多。 获得一个好的RAID控制器(Adaptec 5805QZ在我的名单上)。
现在,现实检查:
将大型InnoDB表(当前为7.5 GiB 13磨logging)中的数据(插入和重复键更新查询)汇总到较小的InnobDB表(最大2个gig 2,016,166logging)中以实现快速读取访问。
在我的世界里都有资格作为玩具的大小。 一千三百万不是一个数据库开始stream汗。 当我开始数据库专业时,7.5GB是很大的,但是基于奔腾的服务器(注意:奔腾 – 甚至不是奔腾2)有128MB的内存;)今天一个7.5ggb的表是你加载到工作站上的内存。
低成本:* AMD Phenom II主板,六个Coes,16GB内存可连接。 *让它passibevely冷却。 *如果你只需要8张光盘,你甚至可以把它装入一个小立方的情况下(我有一个即时两个asm我的个人数据存储)。
这里有一些好的答案。 我会尝试解决其他一些问题。
任何新事物都会比你所拥有的更好。 奔腾IV是一个名义上的服务器。 不要重复那个错误。
无论你得到什么,我build议双电源,ECC /缓冲内存,至less镜像硬盘内部启动和RAID的数据。 无论您是像iSCSI还是FibreChannel一样使用SAN,还是决定使用Direct Attached,都取决于您的预算和增长计划。 预先得到一个3年4小时的服务计划,因为一旦你买了它,老板不会每年更新一次。 他会很乐意冒险要求他节省成本。
为了扩展,我build议两个服务器,一个具有较高的CPU时钟频率来提供HTTP,另一个具有大量的内核和RAM来提供RDBMS。 要特别注意HTTP系统上的以太网。 如果你能得到双以太网和交换机,可以处理EtherChannel为您的Internet连接,那么更好。 除了性能,它会给你冗余,你可能会失去一个以太网端口(服务器端,交换机端或坏电缆),服务将继续。 Web服务器EtherChannel链路应专用于Internet(或DMZ,无论),以便本地以太网广播风暴不会将您的Web服务取出。 这意味着您的networking服务器至less需要另外两个以太网端口,真的是三个。
同样,您的Web服务器/ RDBMS服务器链接应该是一对专用的以太网端口。 这意味着您的本地局域网可能充斥广播风暴,并且不会影响networking到RDBMS的通信。 你的本地局域网可以沉浸在自怜和恶劣的服务,而你的客户得到良好的服务。
至于品牌,请select一家拥有本地服务公司的主要供应商。 为了find这个问题,要求供应商的小企业代表给你打电话(哦,小子,他应该急于这样做),然后钻研他这样的难题,比如你在哪里维修零件,谁来维修我的系统,他们的位置有多远等等等等。他可能不知道,但是他很快就能find答案,因为你会和其他3个像他一样的人竞争对手,而不会让他忘记那。