zoukankan      html  css  js  c++  java
  • Linux实战教学笔记02:计算机系统硬件核心知识

    第1章 互联网企业常见服务器介绍

    1.1 互联网公司服务器品牌

    - DELL(大多数公司,常用)
    - HP
    - IBM(百度在用)

    • 浪潮
    • 联想
    • 航天联志

    常见服务器品牌
    屏幕快照 2016-12-23 下午12.54.16.png-537kB

    1.1.1 Dell服务器品牌

    屏幕快照 2016-12-23 下午12.56.09.png-230.7kB

    屏幕快照 2016-12-23 下午1.26.31.png-691.9kB
    加上盖子
    屏幕快照 2016-12-23 下午1.27.30.png-383.1kB

    • DELL R620
      屏幕快照 2016-12-23 下午1.28.00.png-425.6kB

      1.1.2 IBM品牌

      1U 3550/m3 3550/m5
      2U 3650
      4U 3850
      8U 3950
      仅作了解,质量好,但价格贵,互联网公司不太常用
      IOE(IBM oracle emc)

    1.1.3 HP 品牌

    DL380G7/G8(2u)

    1.2 服务器主要零部件

    1.2.1 电源

    相当于人体的心脏,保障电源供应,要选择质量好的电源。生产中一般单个服务器核心业务最好使用双电源AB线路。如果集群(一堆机器做一件事情)的情况可以不用双电源。

    屏幕快照 2016-12-23 下午2.02.15.png-1913.1kB

    1.2.2CPU 处理器

    相当于人体的大脑,负责计算机的运算和控制,是服务器性能效率的最核心部件。 常见品牌:Intel,AMD

    屏幕快照 2016-12-23 下午2.05.04.png-1333.1kB

    • 一般的企业里的服务器,CPU颗数2-4颗,单颗CPU是4核。内存总量一般是16-256G(32G,64G)
    • 做虚拟化的宿主机(eg:安装vmware的主机),CPU颗数4-8颗,内存总量一般是48-128G,6-10个虚拟机。

    屏幕快照 2016-12-23 下午2.10.32.png-791.7kB

    1.2.3 内存

    CPU和磁盘之间的缓冲设备,是临时存储器(存放数据),断电数据丢失。 一般程序运行的时候会被调度到内存中执行,服务器关闭或程序关闭之后,数据自动从内存中释放掉。

    • 片===硬盘===程序
    • 播放片===被运行起来的程序===进程
    • 没完没了播放片==(住院)==一直在运行的程序===守护进程

    程序:c/php/java,代码文件,静态的,放在磁盘里的数据。
    进程:正在运行着的程序,进程运行就是系统把程序放在内存里执行
    守护进程(daemon):持续保持运行着的程序。

    程序和进程的区别:

    • 电影放在磁盘里就是程序
    • 看片放到内存里就相当于进程
    • 计算机重启,内存的数据会释放掉

    从开发角度对守护进程的解释:

    运行或者执行任何服务都脱离不开计算机的底层协议TCP/IP协议,而想要操作TCP/IP协议就需要用到计算机的底层语言C语言,但是C语言用起来很麻烦,通常要实现一个很小的功能都需要写上好几十甚至上百行代码,太繁琐。于是就有人想到,将一些可以实现某个功能的C语言代码封装起来,然后起一个新的名词,那么用这个新的名词来告诉计算机自动执行封装的那么一大堆C代码,这样就方便多了。于是,慢慢的这类型的新词汇多了以后,渐渐组成了现在我们常见的编程语言,比如:java,python,C#。而我们知道如果我们利用xshell来远程服务器的时候,需要通过ssh协议并访问服务器的22端口。之所以,能够联通,是因为服务器端始终有一个叫做sshd服务的进程在监听着22端口,这个服务就是通过python等类似语言继续封装出来的程序,由于它不断的在服务器的后台运行,始终守护且监听着服务器的22端口,所以我们就叫它们为守护进程。

    1.2.4 磁盘

    磁盘就是永久存放数据的存储器,磁盘上也是有缓存的(芯片)。
    常用的磁盘(硬盘)都是3.5英寸的(ide,sas,sata),常规的机械硬盘,读取(性能不高)性能比内存差很多,所以,在企业工作中,我们才会把大量的数据缓存到内存,写入到缓冲区,这是当今互联网网站的解决网站访问速度慢的方案

    磁盘接口或类型:IDE,SCSI,SAS,SATA,SSD(电子的),IDE,SCSI退出历史舞台。
    性能与价格:SSD(固态)>SAS>SATA

    磁盘的大小
    1byte=8bit 1K=1024byte 1M=1024K
    1G=1024M 1T=1024G 1PB=1024T
    字节(byte):8个二进制位为一个字节(B)
    市面上卖硬盘的都是按1000计算,号称500G硬盘=5001000B1000KB*1000MB

    1.2.5【磁盘原理案例】

    企业案例:提升用户体验的网站解决方案 看具体需求,然后选择方案

    1,门户(大网站)极端案例
    大并发写入案例(抢红包,微博)
    高并发,大数据量,写数据会把数据写到内存,积累一定的量后,然后再定时或者定量的写到磁盘(减少磁盘IO Input/Output 磁盘读写),最终还是会把数据加载到内存中再对外提供访问。
    屏幕快照 2016-12-23 下午4.46.42.png-491.7kB

    特点
    a,优点:写数据到内存,性能高速度块(微博,微信,SNS,秒杀)
    b,缺点:可能会丢失一部分在内存中还没有来得及存入磁盘的数据。
    解决数据不丢的方法:
    a,服务器主板上安装蓄电池,在断电瞬间把内存数据回写磁盘
    b,UPS(一组蓄电池)不间断供电(持续供电10分钟,IDC数据IPS 1小时)。UPS (Uninterruptible Power
    System/Uninterruptible Power
    Supply),即不间断电源,是将蓄电池(多为铅酸免维护蓄电池)与主机相连接,通过主机逆变器等模块电路将直流电转换成市电的系统设备。
    c,选双路电的机房,使用双电源,分别接不同路的电,服务器要放到不同的机柜,地区。

    2,中小企业案例

    对于并发不是很大,数据也不是特别大的网站,读多写少的业务,会先把数据写入到磁盘,然后再通过程序把写到磁盘的数据读入到内存里,再对外通过读内存提供访问服务。
    屏幕快照 2016-12-23 下午4.55.37.png-286kB

    屏幕快照 2016-12-23 下午4.58.51.png-572.3kB

    小结:
    门户极端案例:高并发,大数据
    先把数据写到内存,然后再定时或定量写到磁盘,最终还是会加载到内存
    特点
    a,高并发写入性能高
    b,可能会丢失一部分在内存中还没来得及存入磁盘的数据
    中小企业案例:
    并发时很大的网站会先把数据存到磁盘,然后再通过程序把数据读入到内存里,在对外提供访问服务
    温馨提示
    网站优化的核心就是想办法把数据放入内存提供服务,或者让用户写数据写到内存(这样最快)

    3,企业面试题:buffer和cache什么区别?
    看视频===>buffering把视频数据缓存到磁盘===>写数据到磁盘上或者写数据到内存中
    cache===>从磁盘或者内存读取数据
    简单解答:
    写入数据到内存里,这个数据的内存空间称为缓冲区(buffer),写入缓冲区。
    存读取数据,这个存数据的内存空间称为缓存区(cache),读取缓存区。
    由于99%的网站都是以读取为主,写入为辅,读写比例至少10:1,所以并发写入一般不是问题。

    提醒: 这里提到的内存和磁盘,是由多台机器组成的集群架构环境memcached(纯内存)/redis(内存加磁盘)

    屏幕快照 2016-12-23 下午5.15.21.png-1278.9kB

    2.1 企业级服务器应用

    1,常规正式工作场景(线上的生产环境)主选SAS(结合SATA和15000转/分,机械磁盘转数高的性能好)
    2,比较核心的业务SAS
    生产环境===>已经对外提供服务的环境
    3,不对外提供访问的服务器,例如,线下的数据备份,可选SATA(7200-10000转/分)
    SATA特点:容量大,价格便宜,但是速度比较慢。
    4,高并发访问,小数据量,可以选择SSD

    问:既然SSD最好,那是不是都选SSD?

    淘宝网企业案例:

    服务器会把sata和ssd结合起来用,热点存储,程序动态调度。

    • 开发团队发明了一套算法,把那些访问很集中的一些东西放在那个SSD盘上,因为SSD提供很好的读性能,我们就让这些80%左右的这种读从SSD上产生,剩下的图片我们把它放在传统那种SAS或者更低廉的一些SATA盘上,这样我们整个节点的性能非常好,单机可以支撑三千到四千IO,这是我们系统没有任何显示出访问慢,或者其他不好的表现。
    • 因为每台机器的成本又降得非常低,如果可以,比如说追求一个大的存储,我可以用全SSD,但是我SSD的成本相对要高很多,我可以用比较廉价的SAS或者SATA来存一些访问频度不是很高的,用SSD存访问频度高的文件,这样整体上的性能就协调的非常好,成本也非常低。整体上可以这么说,我们通过这样一年的优化,在原来硬件基础上投资50%实现了性能是原来两倍的一个架构。现在我们总体的这种TCO是原来的1/4左右。

    热点存储的思路非常好,在学习磁盘组成和原理的内容时,有关热点数据的内容,必须要仔细体会。现如今看来,对很多中小型公司还是很新颖的存储方式。顺便说下,大公司无论做什么都要考虑性价比问题,而不光是要把问题解决,因为,设备的奇数太大,做一点点就会节省非常多的成本。阿里,联想的大规模云计算其实归根结底都在解决性价比问题,否则,就无法推向市场,真正的应用到商业市场中。

    2.2 缓存

    记住一句话:缓存无处不在,电脑硬件,网站集群!
    屏幕快照 2016-12-23 下午5.42.52.png-358.9kB
    这里做个了解即可
    屏幕快照 2016-12-23 下午5.43.25.png-786kB

    ns 纳秒 1s = 10^9 ns
    us 微妙 1s = 10^6 us
    ms 毫秒 1s = 1000ms

    2.3 DELL阵列卡(RAID卡)

    基本作用
    你有很多土地。
    单独管理不方便。
    整合,然后管理。

    • 网站数据量很大的时候,单块盘装不下了,购买多块盘,又不想单个盘存放数据,就需要工具把所有的盘整合成一个大磁盘,再在这个大磁盘上在分区(虚拟磁盘)方数据
    • 另外一大功能,多块盘放在一起可以有冗余(备份)。
      RAID有很多种整合方式,RAID 0 1 5 10
      有RAID卡后,一般磁盘就会插到RAID卡上,而不是直接插到主板上了
      屏幕快照 2016-12-23 下午5.53.44.png-1414.8kB
      互联网公司服务器一般都会购买RAID卡(主板自带,独立RAID卡),RAID卡上也是有缓存的。
    • 冗余从好到坏:raid1,raid10,raid5,raid0
    • 性能从好到坏:raid0,raid10,raid5,raid1
    • 成本从低到高:raid0,raid5,raid1,raid10

    不同RAID级别的企业应用举例:
    根据数据的存储和访问的需求,去匹配对应的RAID级别。====>适用于互联网公司

    • 单台服务器,很重要,盘不多,系统盘raid1
    • 数据库/存储服务器,主库raid10,从库raid5/raid0(为了维护成本,raid10)
    • web服务器,如果没有太多数据的话,raid5,raid0(单盘)
    • 有多台,监控/应用服务器,raid0,raid5.

    2.3.1 raid0,1,5,10 简要特点描述

    • Raid 0:追求极致的数据传输速度的磁盘存储解决方案(最快)

    速度最快,但安全性最低,一块磁盘出了问题,所有的数据都会损坏且无法修复

    • Raid 1:追求极致的数据安全的磁盘存储解决方案(最安全)

    安全性最高,但磁盘利用率最低,只有50%。

    • Raid 5:追求数据安全和存储成本兼顾的磁盘存储解决方案(比Raid10成本低)

    数据读取比较快,但是写入速度一般。磁盘利用率高于Raid1

    • Raid 10:追求数据传输和数据安全兼顾的磁盘存储解决方案(比Raid5性能高)

    Raid10是Raid0和Raid1的组合体。Raid1这里就是一个冗余的备份阵列,而Raid0则负责数据的读写阵列。拥有极高的读写效率和数据安全保护。但是磁盘利用率低,价格比较贵。

    2.4光驱

    当下主要作用装系统
    企业应用:
    建议淘汰光驱,为老板省钱
    U盘安装系统,网络安装(ftp,http),无人值守批量安装系统(pxe+kickstart)

    2.5 主板

    屏幕快照 2016-12-23 下午6.06.29.png-2574.1kB

    2.5.1 机房机柜里的服务器摆放

    标签===>标记出每根线的用途
    屏幕快照 2016-12-23 下午6.08.14.png-1894.7kB

    屏幕快照 2016-12-23 下午6.08.56.png-1658.3kB

    专业布线:什么是专业的,请看图

    屏幕快照 2016-12-23 下午6.10.07.png-2593.3kB

    2.6 小结:

    企业面试题
    1,你用过的服务器型号有哪些?配置如何?
    2,程序和进程(守护进程)的区别?
    3,提升用户体验的网站解决方案
    4,buffer与cache的区别?
    5,描述Raid0 1的特点?

    金牌IT职业再教育培训机构,欢迎来校资源。QQ:215379068
  • 相关阅读:
    UVA 10618 Tango Tango Insurrection
    UVA 10118 Free Candies
    HDU 1024 Max Sum Plus Plus
    POJ 1984 Navigation Nightmare
    CODEVS 3546 矩阵链乘法
    UVA 1625 Color Length
    UVA 1347 Tour
    UVA 437 The Tower of Babylon
    UVA 1622 Robot
    UVA127-"Accordian" Patience(模拟)
  • 原文地址:https://www.cnblogs.com/skyhu365/p/10649486.html
Copyright © 2011-2022 走看看