HCIE Day 2
数据中心
什么数据中心:(这个定义非常笼统,我们一般认为成)
数据中心一般包含以下内容
- 计算
- 服务器
- 简单处理:服务器承载操作系统->操作系统承载APP->APP提供业务(server)
- 存储
- 存储设置
- 网络
- 交换机
- 路由器
- 防火墙
- 防毒墙
- 台式感知
操作系统
操作系统可以理解为是APP到硬件之间的中间件
APP在请求硬件资源的时候,就需要一种方式来,这个方式就是操作系统(OS)
比如我保存并发送一封邮件,需要调用计算资源和储存资源,这些资源就需要操作系统来帮我们调用
注意:可以没有操作系统,直接开发一个软件,自带翻译器,就可以直接调用资源(比如小的游戏机)
如果说一个操作系统的版本号小于一个编程语言(一个win10 19版本的 有个20年的编程软件),那么就需要安装一些插件来支持这个系统(也就是各种的库)
主流的操作系统
主流的操作系统一般是:win linux
其中server一般是指的服务器版本
架构
主流的架构一般是:ARM X86
我们一般说的x86_64是指的X86系统架构 64位内存位数
ARM是精简指令集
X86是复杂指令集
指令集
指令集一般分为两种精简指令集 复杂指令集
先准备个吃饭的例子
我们吃饭是这些步骤:拿筷子 夹菜 放嘴里 咀嚼 吞下
精简指令集
他会把所有的步骤分为各种小步骤
比如步骤1:拿筷子 步骤2夹菜 步骤3放嘴里 步骤4咀嚼 步骤5吞下
然后把步骤拿出来串起来,变成12345
优点:每次有任务出现,可以把步骤复用,比如我吃完饭要喝汤,其中放嘴里和吞下步骤给重新拿出来用,这样就节约了资源,同时由于分步骤的原因,对单个核心的性能要求就较低一些,同时可以减少代码的开发量
缺点:吃核心数,需要多核心协同工作
可以简单理解为:精简指令集核心多,效率才高。
例子:吃馒头,要吃10个,吃馒头这个步骤本身算力效率低,我们就可以来10个核心,然后分配到10个核心吃馒头,肯定要更快。(反正都是在一个同步时间就完成任务,我一个核心5GHZ,在一个同步时间内也只能吃一个馒头,要10个核心才行。但是我10个核心一个0.5GHZ,十个核心一起来吃,一个同步时间也完成了
复杂指令集
他会把所有步骤组合为一起,不分步骤,直接编译为一个整体
一气呵成
步骤被确定后就锁死,在不同的工作模式下就需要重新编程(只能推掉,不能复用)
优点:在运行一次性不复用的任务时,效率非常高,不吃核心数
缺点:每次有任务出现,底层都需要重新编译个新的操作/增加代码的开发量
目前主要问题是芯片性能到瓶颈了,单个核心主频上不去,多个核心复用又不适合复杂指令集,因此比较尴尬
软件架构
C/S
客户端<–>服务端
例子:微信,王者荣耀
B/S
网页端<–>服务端
例子:4399小游戏 还有你看的这篇博客
