目录
1 计算机系统
计算机(Computer):俗称电脑,是一种能接收和存储信息,并按照存储在其内部的程序对海量数据进行自动、高速地处理,然后把处理结果输出的现代化智能电子设备 计算机有很多形式,比如:生活中常见的家用电脑,笔记本,智能手机,平板电脑等,还有生产环境中提供重要业务支撑的各种服务器(Server),都算是计算机。 其中一个完整的计算机系统由硬件(Hardware)系统和软件(Software)系统两大部分组成
1.1计算机发展
计算机发展历史:
-
第一代计算机(1946-1957) 电子管时代
-
第二代计算机(1958-1964) 晶体管时代
-
第三代计算机(1965-1970) 集成电路时代
-
第四代计算机(1971以后) 大规模集成电路时代
1946年,世界上第一台计算机ENIAC(electronic numerical integrator and calculator 电子数字积分计算 机)在美国宾州大学诞生,是美国奥伯丁武器试验场为了满足计算弹道需要而研制成的。使用了17468只 电子管,占地170平方米,重达30吨,耗电174千瓦,耗资40多万美元。每秒可进行5000次加法或减法运算
冯·诺依曼体系结构
1946年美籍匈牙利数学家冯·诺依曼于提出存储程序原理,把程序本身当作数据来对待,程序和该程序 处理的数据用同样的方式储存。 冯·诺依曼体系结构冯·诺依曼理论的要点是
早期计算机系统的输入设备:穿孔纸带
-
数字计算机的数制采用二进制,bit 位, byte 字节 1 byte =8 bit
-
计算机应该按照程序顺序执行
-
计算机硬件由运算器、控制器、存储器、输入设备和输出设备五大部分
重点背诵
-
2^0=1=1b
-
2^1=2=10b
-
2^2=4=100b
-
2^3=8=1000b
-
2^4=16=10000b
-
2^5=32=100000b
-
2^6=64=1000000b
-
2^7=128=10000000b
-
2^8=256=100000000b
-
2^9=512=1000000000b
-
2^10=1024=10000000000b
-
2^11=2048=100000000000b
-
2^12=4096=1000000000000b
1.2 计算机分类
1.2.1 按规模划分
-
超级计算机:Super Computer,又称巨型计算机,应用于国防尖端技术和现代科学计算中。巨型机的运算速度可达每秒百万亿次以上, “天河一号”为我国首台千万亿次超级计算机。
-
大型计算机:具有较高的运算速度,每秒可以执行几千万条指令,而且有较大的存储空间。往往用于科学计算、数据处理或作为网络服务器使用,如:IBM z13 mainframe
-
小型计算机:指采用精简指令集处理器,性能和价格介于PC服务器和大型主机之间的一种高性能64 位计算机。在中国,小型机习惯上用来指UNIX服务器
-
微型计算机:指采用 X86 CPU 架构的PC服务器,中央处理器(CPU)采用微处理器芯片,体积小巧轻便,广泛用于商业、服务业、工厂的自动控制、办公自动化以及大众化的信息处理
服务器和客户机
-
服务器:即 Server,计算机的一种,通常是网络中为客户端计算机提供各种服务的高性能的计算机,服务器在网络操作系统的控制下,将与其相连的硬盘、磁带、打印机及昂贵的专用通讯设备提供给网络上的客户站点共享,也能为网络用户提供集中计算、信息发布及数据管理等服务。
-
客户机:即 Client,向服务器提出请求,需要服务器为之提供相应的服务和支持的计算机。
-
服务器按应用功能可分为: Web服务器、数据库服务器、文件服务器、中间件应用服务器、日志服务器、监控服务器、程序版本控制服务器、虚拟机服务器、邮件服务器、打印服务器、通讯服务器、ERP服务器等。
1.2.2 服务器按外形分类
PC服务器常见的三种外型:
-
塔式服务器
早期的服务器形式,目前较少使用 外形以及结构和平时使用的立式PC差不多 机箱空间大,主板扩展性较强,插槽较多 预留了足够的内部空间,以便日后进行硬盘和电源的冗余扩展,设计一般都考虑降噪
-
刀片式服务器
密度更高的服务器,称为刀片服务器。这种服务器组成一组,放在一个框里面,可以整框使用。如图所示为整框的刀片服务器,其中竖条是计算单元,可以单独拿出来。 在标准高度的机架式机箱内可插装多个卡式的服务器单元,实现高可用和高密度,更高的密度,集中管理,高性能,灵活扩展,按需配置 可以使用系统软件将这些母板集合成一个服务器集群。在集群模式下,所有的母板可以连接起来提供高速的网络环境,并同时共享资源,为相同的用户群服务
-
机架式服务器
按照统一标准设计,配合机柜统一使用,便于统计管理,高密度,节省空间,常用U为单位, 1U=1.75英寸=44.45毫米,机箱尺寸比较小巧,在机柜中可以同时放置多台服务器 机架式服务器的宽度为19英寸(48.26cm),厚度通常有1U,2U,3U,4U,5U,7U(图中为2U)几种标准的。 服务器 机柜的尺寸也是采用通用的工业标准,如:宽度600mm,深度1000mm,高度2000mm(42U) 现阶段是最主流的的服务器。
1.3 服务器硬件
1.3.1 服务器硬件---CPU ipmi NIC
CPU:Central Processing Unit,即中央处理器。由控制器和运算器构成,是整个计算机系统中最重要的部分。
-
主频:CPU的主频相当于我们胳膊的肌肉(力量),主频越高,力量越大
核心:双核,4核,6核
-
线程:光有胳膊(核心)和肌肉(频率)是干不了活的,还必须要有手(线程)才行。它是利用特殊的硬件指令,把单个物理核心模拟成两个核心(逻辑核心),让每个核心都能使用线程级并行计算,进而兼容多线程操作系统和软件,减少了CPU的闲置时间,提高CPU的运行效率。
-
架构:CPU架构,目前没有一个权威和准确的定义,简单来说就是CPU核心的设计方案。目前CPU大致可以分为X86、IA64、RISC等多种架构,而个人电脑上的CPU架构,其实都是基于X86架构设计的,称为X86下的微架构,常常被简称为CPU架构。
-
缓存:在内存条的读写忙不过来的时候,CPU就可以把这部分数据存入缓存中,以此来缓解CPU的运算速度与内存条读写速度不匹配的矛盾,所以缓存是越大越好。
1.3.2 服务器硬件---主板
主板mainboard,安装在机箱内,是计算机最基本的也是最重要的部件之一 主板一般为矩形电路板,上面安装了组成计算机的主要电路系统,一般有BIOS芯片、I/O控制芯片、键盘和面板控制开关接口、指示灯插接件、扩充插槽、主板及插卡的直流电源供电接插件等元件.
1.3.3 服务器硬件---内存
内存是介于CPU 和外部存储之间,是CPU 对外部存储中程序与数据进行高速运算时存放程序指令、数据和中间结果的临时场所,它的物理实质就是一组具备数据输入输出和数据存储功能的高速集成电路,内存是CPU能直接寻址的存储空间,由半导体器件制成。内存的特点是存取速度快。 计算机中所有程序的运行都是在内存中进行的,因此内存的性能对计算机的影响非常大
外存:硬盘,U盘,软盘,光盘
内存和外存的区别:
-
内存断电后数据丢失
-
外存断电后数据可以保存
DDR3与DDR4
DDR内存则是一个时钟周期内传输两次数据,能够在时钟的上升期和下降期各传输一次数据,因此称为双倍速率同步动态随机存储器。
性能 | DDR3 | DDR4 |
---|---|---|
传输速度 | 800到2133 MT / s | 2133 MT / s到4266 MT / s |
大小容量 | 512MB到24GB | 2GB到128GB |
功率 | 最大:1.5v/最小1.35v | 最大1.2v/最小1.05v |
1.3.4 服务器硬件---硬盘
小可转大,大不可转小
结构分类: 机械硬盘HDD(Hard Disk Drive) 固态硬盘SSD(Solid State Drives )
常见的磁盘接口
-
IDE:Integrated Drive Electronics,电子集成驱动器,早期家用电脑常用接口 SCSI:Small Computer System Interface,小型计算机系统接口,早期的服务器常用接口
-
SATA:Serial ATA (Advanced Technology Attachment高技术配置),家用电脑常用的接口
-
SAS:Serial Attached SCSl,是目前服务器上主流的接口 光纤通道:Fiber Channel,高性能服务器上采用的接口
-
M.2:固态硬盘接口,性能更强 。
机械硬盘:
-
存储介质(Media)——盘片
盘片的基板是金属或玻璃材质制成,为达到高密度高稳定的质量,基板要求表面光滑平整,不可有任何暇疵
-
读写磁头(Read Write Head) ——磁头
磁头是硬盘读取数据的关键部件,它的主要作用就是将存储在硬盘盘片上的磁信息转化为电信号向外传输
-
马达( Spindle Motor & Voice Coil Motor )
马达上装有一至多片盘片,以7200,10000,15000 RPM等定速旋转,为保持其平衡不可抖动,所以其质量要求严谨,不产生高温躁音
机械硬盘基本参数:
-
容量:容量是硬盘最主要的参数。单位有MB、GB、TB,常见容量:500GB,1T,2T,3T,4T,6T
-
转速:转速是指硬盘盘片每分钟转动的圈数,单位为rpm。常见:7200rpm,10000rpm,15000rpm
-
传输速率:传输速率(Data Transfer Rate)。硬盘的数据传输率是指硬盘读写数据的速度,单位为兆字节每秒(MB/s),常见:6Gb/s,12b/s
-
缓存:硬盘缓存的目的是为了解决系统前后级读写速度不匹配的问题,以提高硬盘的读写速度
-
磁盘尺寸:3.5"/2.5"/1.8"
-
是否支持热插拔
SSD硬盘:
SSD,即固态硬盘,泛指使用NAND Flash组成的固态硬盘。其特别之处在于没有机械结构,以区块写入和抹除的方式作读写的功能,因此在读写的效率上,非常依赖读写技术上的设计SSD读写存取速度快,性能稳定,防震性高,发热低,耐低温,电耗低,无噪音。因为没有机械部分,所以长时间使用也出现故障几率也较小。缺点:价格高,容量小,相对普通机械硬盘性价比低
1.3.5 服务器硬件---网卡
服务器都在主板上集成了网卡,传输速率为1Gbps,即千兆网卡
特殊应用需要高端网卡,如光纤网卡,Infiniband网卡等,传输速率能达到10Gbps、20Gbps,即万兆网卡
1.3.6 服务器硬件---远程管理卡
远程管理卡ILO和内网的关系:在NCSI模式下的区别。 NCSI模式是什么?:NIC(Network Interface Card网卡)与IPMI(ILO)端口复用技术。
IPMI:智能平台管理接口(Intelligent Platform Management Interface),IPMI支持远程监视,不需要计算机操作系统的许可,IPMI是在连接到主板或服务器的单独硬件上运行
NCSI模式下:两个网络共用一根物理网线,逻辑上是分开的两套网络,互不干扰。 非NCSI模式:并无关系,各自使用不同的物理网线。
dell 服务器的 叫idrac 口 固定地址为 https://192.168.0.120 用户名:root 密码:calvin(如下图)
若无固定的管理口可以自行设置但是需要重启服务器慎重操作。
将笔记本电脑的地址改为同一网段后,直接使用浏览器访问,可以查看相关的硬件日志等信息。
dell 叫 idrac口
惠普 叫 ilo
国内 ipmi口 曙光 浪潮 联想 华为
Tips:华为管理口的地址是192.168.1.100
浪潮服务器
dell服务器
1.3.7 服务器硬件---阵列卡
Raid卡用来实现RAID的建立和重建,检测和修复多位错误,错误磁盘自动检测等功能。RAID芯片使 CPU的资源得以释放,阵列卡把若干硬盘驱动器按照一定要求组成一个整体、由阵列控制器管理的系统 阵列卡可以用来提高磁盘子系统的性能及可靠性 支持的多种RAID级别,RAID0,1,5等 阵列卡提供缓存及电池保护。
raid0 原理: 存储:加快 倍数和盘数量有关 读取:加快 倍数和盘数量有关 无冗余功能
raid1 原理:
存储:速度不变 读取:2倍 冗余备份功能,只能坏一块
raid5原理: 最少三块硬盘,最多掉一块盘的数据 读写性能也提高了,
raid10原理
1.4 机房
什么是IDC机房
简单的说IDC数据中心就是指大型机房。就是电信部门利用已有的互联网通信线路、带宽资源,建立标准化的电信专业级机房环境,为企事业单位、政府机构、个人提供服务器托管、租用业务以及相关增值等方面的全方位服务。
数据中心机房建设是一个系统工程,它由主机房(包括网络交换机、服务器群、存储器、数据输入、输出配线、通信区和网络监控终端等)、基本工作间(包括办公室、缓冲间、走廊、更衣室等)、第一类辅助房间(包括维修室、仪器室、备件间、存储介质存放间、资料室)、第二类辅助房间(包括低压配电、UPS电源室、蓄电池室、精密空调系统用房、气体灭火器材间等)、第三类辅助房间(包括储藏室、一般休息室、洗手间等)组成的。
1.4.1 机柜
服务器机柜在机柜的深度、高度、承重等方面均有要求。高度有2.2米、2.0米、1.8米、1.6米、1.4米、1.2米、1米等高度;宽度为800mm、700mm或600mm三种;深度为800mm、900mm和1000mm三种。
固定导轨可拆卸导轨有的服务器会送你托架,有些是通用的,有些是同一厂商同一机型才能使用。
1.4.2 PDU
PDU说白了就是插座
PDU主要功能
(1)浪涌保护:最大耐冲击电流:20KA或更高。
(2)限制电压:≤500V或更低,通过专业检测后,可用作设备端精细电涌防护。
(3)报警保护:具有LED数字式电流显示与带报警功能的全程电流监控。
(4)滤波保护:带有精细滤波保护,输出超稳定的纯净电源。
(5)过载防护:提供两极超负荷保护,可有效防止过载所产生的问题。
(6)防误操作:PDU主控开关ON/OFF带保护栅,可防止意外关闭。
1.4.3 列头柜
列头柜从字面意义上就知道是位于一列机柜端头的柜子。其实列头柜只是一个比较形象的设备管理与分配机柜的定义,它的摆放位置很多情况下是位于一列机柜的一个端头,但实际上它可以位于一列机柜的任何位置上,甚至单独放置。
1.4.4 ups蓄电池
ups是不间断电源供给(UPS即不间断电源)
UPS电源是许多机房的动力保证,保证了供电的连续性,保证了供电系统的安全性,UPS电源时刻发挥着重要的安全保障作用,蓄电池是UPS重要组成部分,蓄电池作为动力提供的最后保障,无疑是UPS电源中的最后一道保险,其质量的好坏直接关系到UPS是否正常工作。
有些大型企业比如三大运营商的数据中心会配有柴油发电机。
1.4.5 空调系统
1.5 操作系统和Linux
1.5.1 操作系统功能
OS: Operating System 操作系统,是一种特殊的软件(程序),用来控制调度分配硬件
OS分类:
-
服务器OS:CentOS,Ubuntu,Windows Server,
-
桌面OS:Windows 10,Mac OS,
-
移动设备OS:Andriod,IOS,鸿蒙
操作系统相关概念
接口: Interface,来源于电气工程学科,指的是播座与插头的连接口,起到将电与电器连接起为的功能。后来延伸到软件工程里指软件包向外提供的功能模块的函数接口。所以接口是用来连接两个东西、信号转换和<屏蔽细节操作系统通过接口的方式,建立了用户与计算机硬件的沟通方式。用户通过调用操作系统的接口来使用计算机的各种计算服务。为操作系统一般会提供两个重要的接口,来满足用户的一些一般性的使用需求:
命令行:实际是一个叫shell的终端程序提供的功能,该程序底层的实质还是调用一些操作系统提供的函数
窗口界面:通过图形窗口程序接收来自操作系统的消息,比如:鼠标、键盘动作,进而做出一些响应
服务器三大操作系统
Windows:
Linux:GNU/Linux
Unix:1969年 Ken Thompson
1.5.2 Unix的诞生
1966年从加州大学伯克利分校毕业的Ken Thompson(肯.汤普森)加入了贝尔实验室。参与了Multics系统的研发。 他基于Multics开发了“star travel”游戏。不幸的是,1969年由于贝尔实验室退出Multics项目,这同时 意味着Ken将没有机器可以再玩这个游戏了。面对此情此景,Ken作为一个创造者的本性立即体现了出 来,于是他决定自己写一个操作系统来满足他玩游戏的需要,Ken找到了一台废弃已久的老式计算机 PDP-7,并在这台只有16K内存的机器上重写了他的游戏。在这个过程中,Ken有了一个主意,要开发 一个全新的操作系统。利用PDP-7上的汇编语言,Ken只花了一个月就编写完了操作系统的内核,在这 不到一个月的时间中,他一周一个内核,一个文件系统,一个编辑器和一个编译程序的完成
文件系统:
一种管理文件的软件或者程序(一串执行特定任务的代码)管理文件的代码
常见的文件系统:
Windows:ntfs fat32(单个文件不支持大于4g,传文件到u盘4G以内)
Linux:xfs ext4 ext43等
编译器:101010 101010
1969 Unix 雏形 UNICS
1970 unix 发布
1973 正式命名为 Unix(丹尼斯·里奇用 C语言重写了UNIX,从此Unix和C语言成为CP)
1977 BSD Berkeley Software Distribution 伯克利大学 1979 System V架构 版权声明 HP-UNIX IBM AIX “不对学生提供源码” 收回版权 1984年 Minix操作系统 Andrew S. Tanenbaum 荷兰阿姆斯特丹自由大学计算机科学系
1.5.3 GUN
GNU:GNU is Not Unix
1984年由Richard Stallman发起并创建目标是编写大量兼容于Unix系统的自由软件
官方网站:The GNU Operating System and the Free Software Movement
GPL:GNU General Public License自由软件基金会:Free Software Foundation允许用户任意复制、传递、修改及再发布基于自由软件修改再次发布的软件,仍需遵守GPLLGPL:Lesser General Public License,LGPL相对于GPL较为宽松,允许不公开全部源代码
GNU操作系统:Hurd:Hird(Hurd of Interfaces Representing Depth) of Unix-Replacing Daemons官网:http://www.gnu.org/software/hurd/hurd.htmlrichard Stallman 为了无止境寻找完美内核,而忘记了HURD的原本目的:能用的操作
到目前为止还没有把操作系统完成。
1.5.4 linux的历史
1991年的10月5日Linus Benedict Torvalds在comp.os.minix 新闻组上发布消息,正式向外宣布他自行编写的完全自由免费的内核诞生(Freeminix-like kernel sources for 386-AT) — FREAX,含义是怪诞的、怪物、异想天开类Unix的内核,在GPL下发布。
最早版本: https://mirrors.edge.kernel.org/pub/linux/kernel/Histori
Linux操作系统:
完整的类UNIX操作系统Linux内核+ GNU工具=Linux/GNU
如:CentOS,Ubuntu,Andro
Linux的内核版本组成
-
主版本号
-
次版本号
-
末版本号
-
打包版
-
厂商版本
1.5.5 RHEL
RedHat 红帽公司
马克·埃文尤英早在卡内基梅隆大学读书的时候就戴着他祖父的红色曲球帽. 马克在大学常把 自己的软件命名为Red Hat — Red hat 1, Red Hat 2 用来区别他人的软件. 所以当他开始自己的Linux项 目, 自然就会命名为Red Hat Linux。马克非常乐于帮助同学解决计算机问题 “你的朋友可能会说, 去跟 我的朋友Marc交流. 谁是Marc? 他是红帽男孩. ” 所以, 至少在他们最亲密的朋友当中, 红帽子成为了技术 专家的同义词
1993年,Bob Young 建立ACC公司,营销Linux和UNIX的支持软件和书籍杂志 1995年,Bob Young 收购了Marc Ewing的业务,合并后的ACC公司成为新的Red Hat软件公司,发布 了Red Hat Linux 2.0 2018年10月29日,IBM宣布将以约340亿美元收购开源软件和技术主要供应商红帽公司
红帽发行版本 Red Hat Linux 1.0 (Mother's Day) 1994年11月03日 Red Hat Linux 2.0 1995年09月20日 Red Hat Linux 3.0 (Picasso) 1996年05月01日 Red Hat Linux 4.0 (Colgate) 1996年10月08日 Red Hat Linux 5.0 (Hurricane) 1997年12月01日 Red Hat Linux 6.0 (Hedwig) 1999年04月26日 Red Hat Linux 6.2 (Zoot) Red Hat Linux 6.2E 2000年04月03日 Red Hat Linux 7.0 (Guinness) 2000年03月27日 Red Hat Linux 7.2 (Enigma) Red Hat Enterprise Linux 2 2001年10月22日 Red Hat Linux 8.0 (Psyche) 2002年09月30日 Red Hat Linux 9.0 (Shrike) 2003年03月31日 Red Hat Enterprise Linux 3.0(Taroon) Fedora 1 (Yarrow) 2003年10月22日 Red Hat Enterprise Linux 4.0 2005年02月15日 Red Hat Enterprise Linux 5.0(Tikanga) 2007年03月14日 Red Hat Enterprise Linux 6.0(Santiago) 2010年11月10日 Red Hat Enterprise Linux 7.0(Maipo) 2014年06月10日 Red Hat Enterprise Linux 8.0 2019年05月07日
1.5.6 CentOS
2004年,Gregory Kurtzer和CentOS的其他创始成员基于开源的RHEL创建了CentOS,将Enterprise Linux引入了社区。
2014年,红帽宣布正式赞助CentOS。CentOS的几个核心团队入职Red Hat专门负责其开发。并在Red Hat 在理事会中占了三席,但是其社区属性得到保留,交易结果是一部分包括将CentOS商标和IP转移到Red Hat 以安全保存。 CentOS 8于2019年9月交付,紧随RHEL 8之后,CentOS Stream的发布和发布是对下一个次要更新中即将 发布内容预览版本。可以说是RHEL的beta频道。
2019,巨头IBM花重资收购了Red Hat。并承诺Red Hat忠于其开源根基不会改变,声称" Red Hat对开源 的使命和坚定承诺将保持不变。
2020年12月8日IBM宣布将惯例支持到2029年CentOS 8,提前在2年内就终结,唯一的升级途径是Centos Stream—AKA,RHEL的Beta发布,并建议不再生产环境中使用。预示着CentOS可能会正式死亡。CentOS已死,但是CentOS精神将会永存。随后以CentOS创始人之一Gregory Kurtzer为首,8小时内250人啸聚网络,计划以创建Rocky Linux(Rocky为已经逝世的另外一个CentOS创始人)取代CentOS。Rocky Linux与RHEL兼容目前已经创建了Github Rocky Linux项目组织(github.com/rocky-linux/rocky)和官网 (rockylinux.org)
1.5.7 开源 Open Source
1998 年的 2 月 5 日,一场小型聚会在美国加州的 VA 研究中心举行,与会的人包括了 一众信息技术领 域的知名学者和工程师。正是在这场会上,大家同意了 Christine Peterson 女士提出的用“开放源代码” (Open Source)一词来替代容易在英语人士中引起歧义的“自由软件”(Free Software)一词,表达的 是同样的软件和意思,但更方便理解更容易获取更多支持。从那一天开始,“开源”正式诞生。
开源 Open Source
-
软件和源代码提供给所有人,自由分发软件和源代码,free 自由,不是免费的意思
-
能够修改和创建衍生作品
软件分类:
商业:收费,源码也不公开
共享:免费使用,但源码不公开
自由:源代码公开
开源的好处:
-
控制性:查看代码并改进
-
教学性:可以直接使用源代码作为例子教学
-
安全性:检查敏感代码
-
稳定性:在创始人放弃后依然可以继续使用
1.5.8 LINUX为什么那么伟大
-
开源
-
提供功能强大的且可编写脚本的命令行界面
-
是一个模块化的操作系统
-
体积轻便
-
没有令人困惑的桌面
1.5.9 国产操作系统
中标麒麟操作系统采用强化的Linux内核,分成桌面版、通用版、高级版和安全版等,满足不同客户的要求,已经广泛的使用在能源、金融、交通、政府、央企等行业领域。中标麒麟增强安全操作系统采用银河麒麟KACF强制访问控制框架和RBA角色权限管理机制,支持以模块化方式实现安全策略,提供多种访问控制策略的统一平台,是一款真正超越“多权分立”的B2级结构化保护操作系统产品。
中标麒麟增强安全操作系统从多个方面提供安全保障,包括管理员分权、最小特权、结合角色的基于类型的访问控制、细粒度的自主访问控制、多级安全等多项安全功能,从内核到应用提供全方位的安全保护。
中标麒麟安全操作系统符合Posix系列标准,兼容联想、浪潮、曙光等公司的服务器硬件产品,兼容达梦、 人大金仓数据库、湖南上容数据库(SRDB) 、Oracle9i/10g/11g和Oracle 9i/10g/11g RAC数据库、IBM Websphere、DB2 UDB数据、MQ、Bea Weblogic、BakBone备份软件等系统软件。
诚然,如中标麒麟等国产操作系统目前还不够成熟,软件生态也比较匮乏,但是还需要更多包容。
1.6 数据库基础知识
文件管理系统的缺点
-
编写应用程序不方便
-
数据冗余不可避免
-
应用程序依赖性
-
不支持对文件的并发访问
-
数据间联系弱
-
难以按用户视图表示数据
-
无安全控制功能
数据库系统发展阶段
-
萌芽阶段:文件系统
使用磁盘文件来存储数据
-
初级阶段:第一代数据库
出现了网状模型、层次模型的数据库
-
中级阶段:第二代数据库
关系型数据库和结构化查询语言
-
高级阶段:新一代数据库
“关系-对象"型数据库
专业名词
-
Database:数据库是数据的汇集,它以一定的组织形式存于存储介质上
-
DBMS:是管理数据库的系统软件,它实现数据库系统的各种功能。是数据库系统的核心
-
DBA:负责数据库的规划、设计、协调、维护和管理等工作
-
应用程序:指以数据库为基础的应用程序
MySQL历史
-
1979年:TcX公司Monty Widenius,Unireg
-
1996年:发布MySQL1.0,Solaris版本,Linux版本
-
1999年: MySQL AB公司,瑞典
-
2003年:MySQL 5.0版本,提供视图、存储过程等功能
-
2008年:Sun 10亿美元收购MySQL
-
2009年:Oracle 75亿美元收购sun
-
2009年: Monty成立
redis
1.7 系统缓存
1.7.1 buffer与cache:
buffer:缓冲也叫写缓冲,一般用于写操作,可以将数据先写入内存再写入磁盘,buffer一般用于写缓冲,用于解决不同介质的速度不一致的缓冲,先将数据临时写入到里自己最近的地方,以提高写入速度,CPU会把数据先写到内存的磁盘缓冲区,然后就认为数据已经写入完成看,然后由内核在后续的时间在写入磁盘,所以服务器突然断电会丢失内存中的部分数据。
cache:缓存也叫读缓存,一般用于读操作,CPU读文件从内存读,如果内存没有就先从硬盘读到内存再读到CPU,将需要频繁读取的数据放在里自己最近的缓存区域,下次读取的时候即可快速读取。
Redis (Remote Dictionary Server)在2009年发布,开发者Salvatore Sanfilippo是意大利开发者,他本想为自己的公司开发一个用于替换MySQL的产品Redis,但是没有想到他把Redis开源后大受欢迎,短短几年,Redis就有了很大的用户群体,目前国内外使用的公司众多,比如:阿里,百度,新浪微博,知乎网,GitHub,Twitter等。
Redis是一个开源的、遵循BSD协议的、基于内存的而且目前比较流行的键值数据库(key-valuedatabase),是一个非关系型数据库,redis提供将内存通过网络远程共享的一种服务,提供类似功能的还有memcached,但相比memcached,redis还提供了易扩展、高性能、具备数据持久性等功能。