构建日均千万访问量网站的硬件核心-戴尔PowerEdge企业服务器

    首先要感谢下 E起来寻找--“我身边的戴尔企业级解决方案”有奖征文 这个活动的举办方,说起来大家也许不信,通过参加这个活动使我受益了。受益,并不是完全因为你们的礼品,而是因为通过参加这个活动使自己开始更全面的了解和关注Web服务的实现和解决方案。原来一直在传统软件公司混,有幸进入成长更快速的互联网公司,由原来基于C/S架构的开发完全转到了B/S架构了。在互联网公司担任开发,可以说和新手上路差不多,要学习的东西还很多。
    在没有真正进入互联网公司时,我其实是觉得写Web程序很没有成就感的,理由是什么:成果总是在浏览器里面晃荡,控制范围太有限,没意思!
    成为了互联网公司的开发人员,面对着在全体同仁们努力下每日上升的访问量和快速变化的业务,才逐渐体会和理解到作为一名Web程序员的技术挑战点在哪里,意识到硬件设备和网络运维的重要性,回头看来,当初的那个观点是很幼稚的。
    自从参加了上次的活动 说说你眼中的戴尔转型后,与其说是有意无意的就找系统开发人员“套话”(套话这个词阴险了些,呵呵),不如说是和他们在一起时听他们聊的内容,偶尔也能插上嘴了。那天还盯着线下测试放的两台服务器看了一会,一台比较厚实,另一台相对比较薄,问了一下旁边正在调试的同事,为什么这台比旁边那台厚了一倍,同事说,一台是2u,一台是1u的。原来如此,2了就厚实些,自己还比划了手势,要这么厚,是几U,同事笑了,呵呵。弯腰仔细看了下型号:Dell PowerEdge R720
    本文以一个互联网运维近距离旁观者的视角,结合一些“小白白”的想法,边学习边记录。
    一、U的概念
    U原来真的和尺寸有关,居然被歪打正着了。
    U是一种表示服务器外部尺寸的单位,是unit的缩略语,详细的尺寸由作为业界团体的美国电子工业协会(EIA)所决定。之所以要规定服务器的尺寸,是为了使服务器保持适当的尺寸以便放在铁质或铝质的机架上。机架上有固定服务器的螺孔,以便它能与服务器的螺孔对上号,再用螺丝加以固定好,以方便安装每一部服务器所需要的空间。
    规定的尺寸是服务器的宽(48.26cm=19英寸)与高(4.445cm的倍数)。由于宽为19英寸,所以有时也将满足这一规定的机架称为“19英寸机架”。厚度以4.445cm为基本单位。1U就是4.445cm,2U则是1U的2倍为8.89cm。
    采用1U的服务器主要节省空间。你把服务器托管到网通或者电信机房的时候,是按照你的服务器空间来给你算钱的。省空间的便宜。但是1u的扩展性不如2u的好(主要是最大硬盘个数,1u最多的4个,2U的可以到8个。另外PCI的插槽数目不同,1U最多2个,2U的可以到6个)
    I will not change, no matter how U change … 
    文科生:不论你怎么移情别恋,我是不会变心的。 
    理科生:电流不随电压的变化而变化。
    你是文科生还是理科生?

    二、数据库
    CRUD是指在做计算处理时的增加(Create)、查询(Retrieve)(重新得到数据)、更新(Update)和删除(Delete)几个单词的首字母简写。主要被用在描述软件系统中数据库或者持久层的基本操作功能。
    同样的CRUD,现在作为Web程序员的我,深刻体会了对于开发人员的数据库技能要求,要比之前的一些从业经历要高的多,尤其是前端页面展现,sql语句更要反复的优化,开发环境每多1毫秒,上线后页面并发,那么的打开速度就会1*N的折扣,写的差的sql语句甚至会堵死主库,导致整个网站访问速度变慢甚至“雪崩”。开发人员越来越多,每个人的水平也是参差不齐,对于项目的leader们来说,是个挑战。
    和很多采用linux系统的互联网公司一样,所在企业也是选择了mysql作为数据库服务程序,多台数据库机器主从同步,形成一个数据库服务集群。lamp,很多linux下的技术人员都知道,但对于我来说却也是个新东西,还记得第一次重装工作环境时,那个费劲,远远不如自己在windows环境手敲回车键或点击“下一步”按钮那么潇洒。至于后来把apache换成nginx,自己也只是了解皮毛,惭愧惭愧。还好,系统开发组的同事说,你们一般不需要了解太深,毕竟不用每天接触。
    当访问量上来了,数据库的同时连接数也就上来了,这时提速最简单的方法就是增加数据库服务器的量,比如增加从库,然后从代码的框架上把读写分开,普通读取操作走从库,分担具体的压力。

    三、并发访问数据
    并发访问,降低延缓,这里面大有学问,一系列的缓存技术就是关键。比如数据持久化后的内存对象缓存系统memcache和key-value存储系统redis,在一些知名的互联网公司运用都很广。这些缓存技术就是要把内存当做硬盘使。
    比如最近搜索学习了一些新浪微博技术架构的知识,就了解到redis在其中的重要作用,而我们是今年才引入的,我更是只知道个概念。
    无论什么缓存技术,对于服务器的性能,尤其是存储系统比如硬盘和内存,要求是相当高的。
    突然想搜索下新浪用的什么服务器,在Dell的官网就看到了如下的文字,他们也用了Dell PowerEdge系列。
    “ 新浪网为用户提供网络新闻及内容、微博、移动增值、电子商务等一系列服务,我们的服务器和网络设备分布在全国 30 多个城市,日常对运维和监控有着很高的要求。如何能快速、准确掌握服务器运行状态,及时监控、预警是新浪运维团队关心的重点。戴尔新一代服务器具有创新的产品设计和出色性能,符合新浪对业务计算的需要,同时戴尔优秀的供应链支持可以确保货物及时送达,并且技术支持团队可以快速响应我们在售前和售后的需求。 ” —— 王朔,新浪网研发中心运维部总监

    四、安装部署
    算是贫民的做法吧,我们并没有由Dell公司的人员来提供具体的解决方案。通常是,买来服务器,自己安装linux和相关软件,拷机测试,没有问题,就会部署到机房。
    据系统开发人员讲,他们某次去机房,一位年轻的的“苦逼”运维男过来问,你们用的也是Dell的服务器,你们有 R620型号的windows显卡驱动吗?我们的人员回答说,我们是linux服务器,不需要那玩意,没有弄过……我猜,那位兄弟一定是在windows下部署某个虚拟化的程序,对显示有要求。浏览了一下Dell官网的PowerEdge系列专题网页,没有在明显的地方找到驱动程序的下载地址,也许Dell可以把这些驱动程序放到网站上。
    
    五、总结
    虽然目前所在企业的业务日益上升,但是我们依旧属于成长期的创业公司,依旧在路上。无论硬件软件还是人,都在学习摸索和成长,既然硬件选择了Dell,就让我们一起成长吧。
    公司今年已经有步骤的更换了一批服务器了,几乎全被Dell占领了,据说将来要全部更换为Dell的,言谈中看得出目前CTO对于Dell的性价比还是挺满意的。我的套话应该没有被发现把,至少他们目前还不知道我写这篇文章。将来要是经过授权,也许我就敢明目张胆的把自己所在的企业名字写到文章里面并加上超链接了,低调低调。
    

  If you say that someone or something has an edge, you mean that they have a powerful quality. 锐气

  If someone or something has an edge, they have an advantage that makes them stronger or more likely to be successful than another thing or person. 优势

  The edge of something sharp such as a knife or an axe is its sharp or narrow side. 刃

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章