由于这个社区中有大量热情的开发人员,我想收集您对此事的看法 - 您认为在家购买和操作实际的服务器硬件是否过分或有利,以增加您自己的能力发展和学习的努力?
早在2003/4,当我跳入开发线时,我觉得服务器只属于数据中心,并且不相信家用服务器的价格;消费者的计算能力已经相当稳固(当时),同样功能的PC可能只需要很少的成本。自从我还是个小学生以来,我已经组装了自己的电脑,我认为获得二手组件以构建新电脑的活动是一件容易的事。准备一台PC作为我的开发测试的专用Windows 2003服务器是很简单的。但是现在已经三年了,虽然是低端型号,但我一直是operating on real servers。由于许多因素,我最终处于这种状态。
总而言之,通过胡思乱想的DIY,我花了更多的时间来解决硬件问题,而不是处理实际的开发问题。当我投入资金购买真正的服务器时,我生活中的硬件问题立即出现了下降。如果我能找到适合我的开发需求的配置,我可能也会购买供应商制造的工作站。
现在,我的一些对工作充满热情的技术朋友也在家里使用自己的服务器。问题是,大多数其他人/同事都对我实际花钱购买此类机器感到相当惊讶。有些人会把我归类为疯子。我真的太过分了吗?
更新 - 澄清服务器使用情况
基本服务器(Windows Server 2008)提供基本的IIS 7 / ASP.NET,SQL Server 2008和Subversion服务。但它扮演的最大角色是在Hyper-V中托管各种虚拟机。我不是一个开发人员,只是被告知要针对单个数据库敲出应用程序代码并将其检入某个版本控制存储库然后回家而不必担心应用程序和实现如何在生产环境中运行。作为解决方案集成商,我必须了解客户端/客户环境,并考虑包含基础架构和部署问题的全局解决方案。软件应用程序开发虽然是我的主要角色,但却只是解决方案的一部分。
我经常发现自己必须尝试并发现某些建议或方法是否适用于特定环境,并且必须准备虚拟服务器,如域(控制器),Web服务器,数据库服务器,BizTalk服务器组, Team Foundation服务器等进行分析并巩固我的建议。这些虚拟机可以作为我的个人POC使用。我面临的情景继续变大,我绝对不知道如何在没有允许我虚拟化和模拟它们的基础平台的情况下学习如何处理这些情况。
答案 0 :(得分:7)
我认为对服务器硬件有一定的了解会让你成为一个更加全面的技术专家,所以去吧。 “适当”服务器有一些元素,通常不构建在家庭内置系统中,如热插拔驱动器和PSU,远程访问卡(如Dell DRAC)等。
即使服务器管理员不是您的主要工作职能,随着您的职业发展,您可能会越来越多地参与购买硬件和评估供应商的报价。额外的知识肯定会在那里有用。
答案 1 :(得分:4)
如果您只是想学习,那么作为程序员而不是网络或服务器工程师,我同意在专业服务器设置上花费太多。你会在最初的几个星期内完成新奇事物,然后就像坐在鲸鱼身上一样坐在你的腿上。
安装了服务器软件的普通计算机是否有任何特定需求?
答案 2 :(得分:3)
运行数据中心级别的硬件将超越顶级 - 您不需要热插拔驱动器等等它们会浪费金钱,但当然如果您认真对待自己的开发工作然后运行低端的中小企业级服务器是一个很好的举措,它为您提供了安全性和便利性。
我自己运行自己的Consultancy/Development(已接受的答案)业务,我运行一个小型网络来支持这一点。我运行的是一台配备250GB RAID,4Gb RAM,Windows 2003的HP SME服务器。它是24/7全天候服务器,可以满足您在任何小型企业中所做的一切。主网络通过高质量的中小企业级ADSL账户连接到互联网。
此外,我在类似的硬件上运行Linux服务器,该硬件通过另一个ADSL帐户(只是一个基本的廉价商业帐户)连接到互联网,位于另一条电话线上。这给了我ADSL问题的备份(偶尔会发生一个故障,另一个故障),但也意味着我可以运行一个低级别的互联网服务器,在专用和隔离的线路上向客户展示东西 - 显然不是生产质量,但足以进行测试(我有一些专门的服务器共同托管在其他地方运行客户端站点,但它们不能广泛用于非生产目的显然和内部硬件意味着我可以更多地调整配置容易)
这是一个调整您对硬件的要求以支持这一点的问题 - 就像实际将任何硬件部署到客户端一样。作为开发人员,您需要安全性和便利性,就像任何小型企业一样,但同样需要良好的投资回报率 - 没有必要花费1000美元购买额外的服务器镀金,例如购买30英寸显示器。只需假装你有一个批判性但理解的商业伙伴(Joel级别的编码器关注度),你必须证明你的开支是合理的,并且对自己的需要诚实,只需要放纵一下。
编辑回应阅读其他一些关于不需要服务器硬件用于个人开发用途的评论:请注意,当您的替代方案遇到硬件故障时会发生什么?我建议使用单独的服务器使您更有可能更快地从灾难性故障中恢复:无论如何,这种情况可能更少发生,您更有可能进行备份,并且恢复可能更简单。
即使你只是搞乱个人发展而失去工作并且不得不恢复复杂的配置,这既耗费时间又是令人沮丧的痛苦。您应该以合理的$ / h速率评估您自己的时间,即使它只是有趣的东西和因素与基本服务器和相关备份机制的成本 - 硬件价格处于水平,它真的是一个明智的选择。
答案 3 :(得分:2)
我认为如果你是程序员,你应该专注于编程。拥有一个实际的实时Web服务器并不容易或便宜。
考虑一下,你必须拥有良好的网络连接和良好的上传速率,这是一台专门用于服务器的好机器。甚至没有谈论电气成本或制冷系统,因为你需要将服务器放在你不使用的房间(原因只是在你试图休息时听到那些通风口工作时很烦人)。 / p>
有数百家公司几乎没有提供这项服务,当我做出决定时,我只选择其中一项并且从不考虑过。
不要误会我的意思,我确实在家里有一个网络服务器,只是为了学习如何设置一个,它很有趣和有益但我永远不能提供专业的服务器只是因为它需要全天候关注防止停机。
答案 4 :(得分:1)
我认为无论投资回报率(投资回报率)高于1.1,都可以做到。在你的具体情况下,我认为在短期内你会肆无忌惮地放钱,但从长远来看,你可能会获得额外的附加价值。你可以比平均硬件便宜一些,以平衡成本。
答案 5 :(得分:1)
我曾经运行自己的Web服务器,它基于Compaq服务器级硬件构建。然而,这些天,我不想对这样一台机器的野兽负责。从那台服务器获取的功率是巨大的,它产生的噪音和热量也是如此。忽略提供电力和冷却的财务问题,简单的事实是(对我而言)不值得努力。 I 不需要做任何需要服务器级硬件的事情。事实上,我在家里无需在MacBook上的虚拟机上实现这一点。
当然是YMMV。
答案 6 :(得分:1)
这实际上取决于您的特殊需求。
拥有自己的开发和学习服务器可能会被视为过度。
事实上,对于典型的开发,我相信您甚至可以在VirtualBox或您喜欢的任何内容下将虚拟服务器放在开发桌面工作站上。无需单独的物理PC或服务器。
如果你确实需要它们,那么无论做什么工作就足够了吧?当然,“服务器”服务器通常更适合这项工作。如果您能负担得起价格差异并且对您有意义,为什么不呢?
答案 7 :(得分:1)
我同意Gnudiff的意见,为什么你需要服务器硬件具有坚如磐石的24x7可用性,可以在家里玩游戏?是的,它有一些技术性可能对学习有用,但在工作中抓住一个旧盒子可能更容易,并且可以使用它。然后它可以保留在某个地方,不会花费任何费用。
在这个网站,谷歌阅读器和Facebook之间,我的妻子没有足够的时间,更不用说在家管理我自己的服务器了!
答案 8 :(得分:1)
除非你需要在那个硬件上有经验,否则我觉得它太过分了。在过去的13年里,我在家里至少运行了一台服务器。我构建/升级我自己的PC。我支持我的家人(5个工作站和5台笔记本电脑)的时间比这长。我使用的服务器是从升级后留下的部分构建的。我目前有3个服务器配置。我有我的主服务器(AMD 3800 X2 w / 4演出),我用于家庭的文件服务器和IIS Web服务器。它还在VM中运行Ubuntu。此框处理所有备份。我有一个用于Windows Media Center的第二个盒子(AMD 2600 w / 4演出),作为我的主服务器的备份,它将我的主服务器的内容复制到它的本地存储。我的第三个盒子(AMD 3200 w / 4演出)是我的播放盒,目前正在运行Windows Server 2008。
在13年(全天候运行)中,我遇到了两个与电源相关的硬件故障(它们发生在断电后),网卡和主板。我有一个硬盘故障(它刚开始收到很多错误/重试,我没有丢失任何数据)。主板出现故障后我买了便宜的UPS。当我添加第三台服务器时,我又添加了第二台。
我用过的硬件非常可靠。我在硬件兼容性方面遇到的唯一问题是Compaq上的Ubuntu。在那一集之后,我开始只使用通用硬件。我建议每个人至少有一台服务器来集中定位需要备份的东西。
我所有的服务器都已经让亲戚用作第二台或第三台PC,因为它们已经退役了。我运行了一台服务器大约5年,两台服务器运行了大约6年,我在过去的两年里运行了三台服务器。 AMD 2600是我最老的服务器盒,它作为我妻子的PC已经服用了3年,并且已经服务了2年。
<强>更新强>
我之前从未真正考虑过这个问题,但我突然意识到我拥有这种可靠硬件的原因是因为我使用的硬件已经进行了几年的测试。除了几个硬盘驱动器之外,我的所有硬件在被用作服务器之前都被证明是可靠的。
答案 9 :(得分:0)
我的工作站是Core 2 Quad,配备8GB RAM,RAID 0和RAID 1硬盘,运行Vista x64。它非常适合我的所有需求。我认为我不需要单独的服务器。投资你的工作站,忘记花很多时间配置东西!
答案 10 :(得分:0)
我认为在两个极端之间存在一系列选择:
根据您所描述的需求,高端联想台式机可能会提供您所需的可靠性和弹性,远低于服务器级硬件。
当然,具有讽刺意味的是,真正的大型服务公司(谷歌,亚马逊等)在个人服务器上花费少,购买更多服务,并编写路由软件在失败的节点周围。