一些简单的硬件知识-创新互联

创新互联坚持“要么做到,要么别承诺”的工作理念,服务领域包括:成都网站设计、成都做网站、企业官网、英文网站、手机端网站、网站推广等服务,满足客户于互联网时代的福绵网站设计、移动媒体设计的需求,帮助企业找到有效的互联网解决方案。努力成为您成熟可靠的网络建设合作伙伴!

计算机硬件组成(运维关注的重要部分):

CPU:中央处理器,是一个计算机的运算核心和控制核心,他的主要功能是解释计算机指令以及处理计算机软件中的数据。

     中央处理器主要包括:运算器  高速缓冲存储器

                         (ALU)    (cache)

内存:内存(内存储器)可用于存储数据,由于是电子部件,内存中数据会在断电后消失,存取速度快,容量相对较小。

硬盘:是计算机的主要外部存储器,可分为机械硬盘和固态硬盘,可以永久的保留数据,但是速度相对较慢,容量大

硬件知识深度理解

内存部分(以具体案例为为前提)

1.高并发写入

    将需要写入的数据优先存在内存之中,当内存中的数据达到一定数量时,再将数据全部写入到磁盘之中

    优点:利用内存的速度优势,可以加快写入速度,提高用户体验,在高并发的情况下十分适用

    缺点:内存只能临时存储数据,如果断电,数据全部丢失

    解决方案:

             1.主板装电池,在断电后支持快速将数据写入硬盘,

         以便恢复

             2.使用(不间断电源)UPS电源

             3.选用双电路机房

2高读取

     将硬盘中热点数据写入内存之中,方便用户读取,提高访问友好度。

     将需要存储的外部数据直接存入硬盘之中,再读取到内存之中,以备访问之用。

     优点:热点数据在内存之中,用户读取速度快,增加了用户体验,同时也减小了服务

           器的IO压力。

     Tips:将数据写入内存,这部分被使用的内存称之为 缓冲区(Buffer)

         从内存中读取预存的数据,这部分被使用的内存称之为 缓存区(cache)

3.目前大部分网站的IO比例  Input : Output = 1 : 10,即大部分网站均是以用户读取其内容

                           为主,写入数据的比例不大,在架构及优化时,应以高读取

                           的方案进行,具体案例具体分析。

4.多台机器集群内存缓存架构(以软件形式): memcache (纯内存) redis(内存与磁盘结合)

硬盘部分

1.分类: 机械硬盘 ,固态硬盘

2.接口类型:IDE , SCSI

          SAS : 价格较贵转速相对较高,同等价位容量较小。

          SATA :价格最低,同等价位容量大,速度慢。

          SSD(固态硬盘):价格最贵,同等价位容量最小,速度最快。

3.按照工作环境的硬盘选择

    (1)常规工作环境: SAS  速度,容量与价格兼顾的良好选择

    (2)线下备份或内部工作环境: SATA 容量大,且对硬盘速度要求不高。

    (3) 高并发,且数据量少: SDD 速度快,但价格贵,适用于极端生产环境。

4.RATD

  磁盘阵列(Redundant Arrays of IndependentDisks), 有‘独立磁盘构成的具有荣誉能力的阵列’之意。

  磁盘阵列是由很多价格便宜的磁盘,组成一个容量为所有磁盘之和的大磁盘,利用个别磁盘提供数据所产生加成效果提升整个磁盘的系统效能。

  (1)实现形式 : 硬RAID :通过 RAID卡 实现,价格较贵,效率高,安全

                   软RAID :通过软件模拟实现,价格低廉,对降低系统效率,并且

                             在软件出现问题时,会影响数据安全

  (2)RAID分类

       RAID 0   条带化(Data Stripping) 将多个磁盘整合为一个磁盘。

       在整合后单个磁盘的读取数据方式并没有发生变化,但是整个磁盘阵列的数据读取方式变得十分有趣。首先,每个磁盘都被以合理的大小分割为很多个block,且每个磁盘的分割情况必须一样。在数据写入的时候将数据依次写入三个磁盘,即三个数据块 [block1]

[block2] [block3] ,第一块磁盘写入[1],第二块磁盘写入[2],第三块写入[3],依次类推,直至数据写完。

       在从磁盘阵列读取数据时,同时读取磁盘阵列中的第一个block,那么用了读取一个block的时间,读取了N个block (N 为磁盘阵列中的磁盘数量)。 这样数据的读取速度就加快了N陪。

        由于RAID 0 只是多个硬盘进行了整合,没有做冗余处理,那么其中一块硬盘出错,整个阵列就会出现问题。所以RAID 0 的可靠性为一块磁盘的1/N ,可靠性大大降低

         速度:单个磁盘的N倍

         容量:单个磁盘的N倍

         可靠性:单个磁盘的1/N

         适用场景:只是在对那些对数据安全性要求不高的场景使用

       RAID 1     镜像  把一个磁盘的数据镜像到另一个磁盘上,作为冗余

        在RAID 1中,数据进行写入一块磁盘时,也会同时写入另一块作为镜像的磁盘中。当正在被使用的磁盘发生问题,系统会抛弃他,转而去它的镜像磁盘读取数据,这是将坏掉的磁盘更换即可。这样数据的安全性大大增加,但是成本也随之增加,磁盘利用率为50%,下降一半。

        在更换磁盘后,系统会对原有数据进行同步,需要一定时间,在同步期间会影响系统的IO效率。

         速度 :不变

         容量 :所有磁盘的50%

         可靠性: 大大增加

         使用场景: 数据重要,数据量不大

       RAID 5     分布式奇偶校验的独立磁盘结构

         RAID 5在结构上与RAID 0类似,将磁盘条带化,有很高的读取速度。在写入数据时,会在每块磁盘上都写入奇偶校验信息,因此会造成写损失。在从磁盘阵列读取信息的时候会进行校验数据是否出错。当一块磁盘出错的时候,更换新磁盘后,可以通过其他磁盘的数据和奇偶校验信息,经过计算恢复其数据。

          速度:N块磁盘之和

          容量: 略小于N块磁盘

          可靠度: 在一块磁盘出错时,可修复:有奇偶校验码,可纠错

      RAID 10 (先1 后 0)  先镜像,再条带化

         RAID 10既是RAID 1 与 RAID 0 的结合产物。先对每一块磁盘进行镜像处理(RAID 1),然后将每个形成的RAID 1 做条带化(RAID 0)。这样总体来看整个磁盘阵列是 RAID 0的形式,而且每一块磁盘都有做镜像处理。那么即拥有了RAID 0 高速的读取速度,又拥有了RAID 1 的高数据安全性。RAID 10的不足之处也显而易见,磁盘利用率低,导致价格较高。

          速度:N块硬盘之和

          容量:50%

          可靠度: 有 RAID 0的支持,可高度高

5.企业中PC服务器主要品牌

  DELL(大部分企业),HP,IBM(去IOE 估计不会再有人用了)

  DELL PC服务器型号

         2010-2013:1u R410 R610

                  2u R710

         2014-2015:1u R420 R430  R620 R630

                  2u R720


对于这部分内容 我会在之后的过程中关注,《大型网站技术架构分析》《淘宝这10年》这2本书将会作为我的参考书籍。

学习思想总结

 在大学我的专业是软件工程专业,as you know,是个理科专业,但是我觉得将其成为工科更为合适,动手做的学科。学习C语言,把变量,指针,函数,数组的概念你都记得滚瓜烂熟,理解的不能再透彻,还是没用 。只是理解了书面知识,你上手编程还是啥都不会。

所以 练 才是最有意义的,在练的时候遇到问题要 想,思考问题出现在哪里,结合书本知识。之后,分享和 讨论。这样才能加深你只是的广度和宽度,是对你最有利的。

  而在学习的过程中要克服的就是懒惰。懒惰并不是一种病,而是你对理想的懈怠,对未来的不负责任。既然选择了就要坚持下去,别无他路。

  我的兴趣就在Linux这部分,对于服务器的后台系统架构有浓厚的兴趣,所以我有理由相信我可以做到。对自己抱有信心是非常重要的。

  写到这,还要感谢一下我的 操作系统 老师,蔡青松博士。这写东西都是我在他身上认识到的,Linux也是通过它了解到的。正如他所说:“现在的学生都是狗屎,啥都不会”这句话其实是对我们最好的激励,既然不会,就学会!

  看起来这段话并不像学习思想总结,好像不是很正式的样子,当时我觉得表达出自己的思想就要说出自己想的东西。如果真的弄得条条框框,什么 努力,坚持,信心之类,就没意思了。

UNIX与LINUX的发展历程

   Unix是用90%的C语言和10%汇编语言混合编写的,因此对于硬件平台的移植时还是需要更改代码,因此各个公司都推出了针对自家机型的Unix系统;

   到了AT&TSystem V第七版时,终于推出了针对X86的Unix,因此终于能够在个人计算机上安装Unix,但是有一条规定:“不能向学生公开源码”,因此Tanebaum教授就不看Unix源码,编写了兼容Unix的针对X86的Minix操作系统;

四.因为Minix只是教学使用,因此功能并不强,因此Torvalds利用GNU的bash当做开发环境,gcc当做编译工具,编写了Linux内核-v0.02,但是一开始Linux并不能兼容Unix,即Unix上跑的应用程序不能在Linux上跑,即应用程序与内核之间的接口不一致,因为Unix是遵循POSIX规范的,因此Torvalds修改了Linux,并遵循POSIX(PortableOperating System Interface,他规范了应用程序与内核的接口规范);

   一开始Linux只适用于386,后来经过全世界的网友的帮助,最终能够兼容多种硬件;

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


分享名称:一些简单的硬件知识-创新互联
分享链接:http://ybzwz.com/article/ddjihj.html