硬盘

2. 影响mysql性能的因素

我的梦境 提交于 2020-03-08 17:32:57
影响mysql性能的几个方面: 1. 服务器硬件 2. 服务器操作系统 3. 数据库存储引擎 4. 数据库参数配置 5. 数据库结构设计和SQL语句 服务器硬件: 1. CPU: CPU密集型的应用,应选用频率更高的CPU而不是更多的CPU WEB类的应用,CPU核心数量比频率重要 2. 内存: 内存越多越好,内存对读、写都有作用 内存频率越高速度越快,应选择主板支持的最大内存频率,单条容量尽可能大 3. 磁盘: 传统机器硬盘:1.存储容量 2.传输速度 3.访问时间 4.主轴转速 5.物理尺寸 RAID(磁盘冗余阵列): 1.RAID 0,2块以上的硬盘组成,没有冗余和错误修复能力 2.RAID 1,磁盘镜像,2块硬盘组成,有冗余 3.RAID 5,分布式奇偶性校验阵列,3块以上的硬盘组成,任意一个盘数据失效时可以重建,更多盘数据失效时无法重建 4.RAID 10,分片镜像,RAID 0和RAID 1组合,4块以上的硬盘组成,对比RAID 5重建更简单,速度更快 固态存储SSD或PCI-E卡: 比机械硬盘有更好的随机读写性能 比机械硬盘能更好的支持并发 比机械硬盘更容易损坏 适用于存在大量随机I/O的场景 适用于解决单线程负载的I/O瓶颈 网络存储SAN和NAS: SAN的随机读写慢,不如本地RAID磁盘 NAS设备使用网络连接,通过基于文件的协议如NFS或SMB来访问

day13:Linux 磁盘分区、挂载

时光怂恿深爱的人放手 提交于 2020-03-08 14:29:33
一、分区基础知识   1、分区的方式      1) mbr 分区:       a.最多支持四个主分区       b.系统只能安装在主分区       c.扩展分区要占一个主分区       d.mbr 最大只支持 2TB,但拥有最好的兼容性      2) gtp 分区:       a.支持无限多个主分区(但操作系统可能限制,比如 windows 下最多 128 个分区)       b.最大支持 18EB 的大容量(1EB=1024 PB,1PB=1024 TB )        c.windows7 64 位以后支持 gtp   2、 windows 下的磁盘分区      二、Linux 分区          1、 原理介绍      a、Linux 来说无论有几个分区,分给哪一目录使用,它归根结底就只有一个根目录,一个独立且唯一的文件结构 , Linux 中每个分区都是用来组成整个文件系统的一部分。      b、Linux 采用了一种叫“载入”的处理方法,它的整个文件系统中包含了一整套的文件和目录, 且将一个分区和一个目录联系起来。这时要载入的一个分区将使它的存储空间在一个目录下获得。   2、 硬盘说明      1)、Linux 硬盘分 IDE 硬盘和 SCSI 硬盘,目前基本上是 SCSI 硬盘      2)、对于 IDE 硬盘,驱动器标识符为“hdx~

Python-基础-程序执行原理(六)

安稳与你 提交于 2020-03-08 09:37:03
1. 计算机中的三大件 计算机中包含有较多的硬件, 但是一个程序要运行, 有 三个核心 的硬件 , 分别是 : CPU ( 中央处理器,是一块超大规模的集成电路 负责 处理数据 / 计算 内存 临时 储存数据,断电会消失 速度快 空间小(单位价格高) 硬盘 永久 储存数据 速度慢 空间大(单位价格低) 总结 : CPU 负责程序执行 内存 比硬盘速度快,但关机消失,内存小 硬盘 速度比内存慢,但永久储存,储存大 2. 程序执行的原理 硬盘的速度是慢的,所以,要先到内存的里面,再到cpu 程序 运行之前, 程序是 保存在硬盘 中的 当运行一个程序时 - 操作系统会首先让 CPU 把程序复制到 内存 中 - CPU 执行 内存 中的 程序代码 程序要执行, 首先要加载到内存 2.1 Python 程序执行原理 操作系统会首先让 CPU 把 Python 解释器 的程序复制到 内存 中 Python 解释器 根据语法规则, 从上向下 让 CPU 翻译 Python 程序中的代码 CPU 负责执行翻译完成的代码 提示:建立 软连接 的目的,是为了方便大家,不用记住使用的解释器是 哪个具体版本 3. 程序的作用 程序就是 用来处理数据 的 3.1 QQ程序的启动过程 QQ 在运行之前, 是保存在 硬盘 中的 运行之后, QQ程序就会被加载到 内存 中 3.2 QQ程序的登录过程

VM 下增加磁盘空间

£可爱£侵袭症+ 提交于 2020-03-08 07:49:50
随着 Linux 虚拟机的不断使用,在VMware中经常遇到 预先装好的 linux 虚拟机的硬盘空间过小 的问题,造成很多软件不能安装, 而重新装一个,又挺麻烦。于是,上网搜了下关于 vmware 硬盘扩容的方法。 总结如下: 1、挂载点必须是一个目录。 2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。 一:首先使用VMware工具扩容分配的硬盘空间: 1 、 vmware 提供一个命令行工具, vmware-vdiskmanager.exe ,位于 vmware 的安装目录下,比如 C:\Program Files\VMware\VMware Workstation\vmware-vdiskmanager.exe. 在 windows 下运行 cmd ,转到 vmware 的安装目录 vmware-vdiskmanager.exe 可以查看帮助 2. 对于扩容,可以输入下列命令: vmware-vdiskmanager -x 50Gb "D:\VMware\WinXP\myLinux.vmdk" 注: 要扩容的系统这时不能在运行 ,参数 "-x" 表示要扩展虚拟机硬盘空间,紧随其后的数字是要扩展到的大小 ( 本例为扩展到 50GB ,这是一个磁盘总量,包含了原先的磁盘容量 ) 。 最后是指定要操作的虚拟机磁盘的具体文件

LINUX学记笔记10

不打扰是莪最后的温柔 提交于 2020-03-08 06:41:46
7.2 LVM逻辑卷管理器 前面学习的硬盘设备管理技术虽然能够有效地提高硬盘设备的读写速度以及数据的安全性,但是在硬盘分好区或者部署为RAID磁盘阵列之后,再想修改硬盘分区大小就不容易了。换句话说,当用户想要随着实际需求的变化调整硬盘分区的大小时,会受到硬盘“灵活性”的限制。这时就需要用到另外一项非常普及的硬盘设备资源管理技术了—LVM(逻辑卷管理器)。LVM可以允许用户对硬盘资源进行动态调整。 逻辑卷管理器是Linux系统用于对硬盘分区进行管理的一种机制,理论性较强,其创建初衷是为了解决硬盘设备在创建分区后不易修改分区大小的缺陷。尽管对传统的硬盘分区进行强制扩容或缩容从理论上来讲是可行的,但是却可能造成数据的丢失。而LVM技术是在硬盘分区和文件系统之间添加了一个逻辑层,它提供了一个抽象的卷组,可以把多块硬盘进行卷组合并。这样一来,用户不必关心物理硬盘设备的底层架构和布局,就可以实现对硬盘分区的动态调整。 物理卷处于LVM中的最底层,可以将其理解为物理硬盘、硬盘分区或者RAID磁盘阵列,这都可以。卷组建立在物理卷之上,一个卷组可以包含多个物理卷,而且在卷组创建之后也可以继续向其中添加新的物理卷。逻辑卷是用卷组中空闲的资源建立的,并且逻辑卷在建立后可以动态地扩展或缩小空间。这就是LVM的核心理念。 7.2.1 部署逻辑卷 一般而言

如何给非理科生讲明白什么是云计算、大数椐(上)

跟風遠走 提交于 2020-03-07 20:49:49
旧事重提 云计算和大数椐都提的比较早,如云计算 早在7年前的2010中国(深圳)IT领袖峰会上,BAT三位大佬就分别谈了自己对云计算的看法。 李彦宏表示云计算其实就是新瓶装旧酒,没有新东西。从早先客户端与服务器的关系,到后来基于互联网的Web界面服务,在到云计算,本质上都是一样的。李彦宏是从纯技术的角度来看的,想必熟悉做技术的同学在当时的时间 点也会这么看。 而马化腾则认为云计算是一个比较有技术性,比较超前的概念。他同意未来云计算拥有很大的想象空间,但认为现在还为时过早,要过几百年、一千年后才确实有可能(实现)。当然马化腾当时说的云计算应该和我们现在BAT各家提供的服务不一样的。 与前两位不同的是,马云表示对云计算充满了信心,充满了希望。他所理解的云计算是一种数据存储、处理并分享的机制,阿里巴巴拥有大量消费数据、交易数据,这些数据于阿里而言,于社会而言都是非常有用的。他称云计算是阿里又找到的一个新的矿产。 当然,这种看法没有孰是孰非,现在也分别有了阿里云,百度云,腾讯云。态度不同结果也不同,阿里最先开展云业务,阿里巴巴公布2017财年全年财报,其中,阿里云该财年营收规模达到66.63亿元人民币,同比上年增长121%,连续两年实现三位数增长。相比下来,腾讯云与百度云就要逊色一些。在国际权威IT调研与咨询服务公司Gartner17年发布的云供应商魔力象限中,只有阿里云进入了领导者象限

关于SDWebimage的内部实现原理

混江龙づ霸主 提交于 2020-03-07 19:35:59
SDWebimage的内部实现原理各路大神都已经剖析的很透彻了 我也来发一下希望大家共同讨论学习 1. 入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 URL 开始处理图片。 2. 进入 SDWebImageManager-downloadWithURL:delegate:options:userInfo: 交给 SDImageCache 从缓存查找图片是否已经下载 queryDiskCacheForKey:delegate:userInfo: 3. 先从内存图片缓存查找是否有图片,如果内存中已经有图片缓存, SDImageCacheDelegate 回调 imageCache:didFindImage:forKey:userInfo: 到 SDWebImageManager 。 4.SDWebImageManagerDelegate 回调 webImageManager:didFinishWithImage: 到 UIImageView+WebCache 等前端展示图片。 5. 如果内存缓存中没有,生成 NSInvocationOperation 添加到队列开始从硬盘查找图片是否已经缓存。 6. 根据 URLKey

SDWebImage内部实现过程

試著忘記壹切 提交于 2020-03-07 19:34:25
入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 URL 开始处理图片。 进入 SDWebImageManager-downloadWithURL:delegate:options:userInfo:,交给 SDImageCache 从缓存查找图片是否已经下载 queryDiskCacheForKey:delegate:userInfo:. 先从内存图片缓存查找是否有图片,如果内存中已经有图片缓存,SDImageCacheDelegate 回调 imageCache:didFindImage:forKey:userInfo: 到 SDWebImageManager。 SDWebImageManagerDelegate 回调 webImageManager:didFinishWithImage: 到 UIImageView+WebCache 等前端展示图片。 如果内存缓存中没有,生成 NSInvocationOperation 添加到队列开始从硬盘查找图片是否已经缓存。 根据 URLKey 在硬盘缓存目录下尝试读取图片文件。这一步是在 NSOperation 进行的操作,所以回主线程进行结果回调 notifyDelegate:。

SDWebImage内部实现过程

我是研究僧i 提交于 2020-03-07 19:32:45
1. 入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 URL 开始处理图片。 2. 进入 SDWebImageManager-downloadWithURL:delegate:options:userInfo:,交给 SDImageCache 从缓存查找图片是否已经下载 queryDiskCacheForKey:delegate:userInfo:. 3. 先从内存图片缓存查找是否有图片,如果内存中已经有图片缓存,SDImageCacheDelegate 回调 imageCache:didFindImage:forKey:userInfo: 到 SDWebImageManager。 4. SDWebImageManagerDelegate 回调 webImageManager:didFinishWithImage: 到 UIImageView+WebCache 等前端展示图片。 5. 如果内存缓存中没有,生成 NSInvocationOperation 添加到队列开始从硬盘查找图片是否已经缓存。 6. 根据 URLKey 在硬盘缓存目录下尝试读取图片文件。这一步是在 NSOperation 进行的操作,所以回主线程进行结果回调

SDWebImage

纵饮孤独 提交于 2020-03-07 18:56:32
SDWebImage内部实现过程 入口 setImageWithURL:placeholderImage:options: 会先把 placeholderImage 显示,然后 SDWebImageManager 根据 URL 开始处理图片。 进入 SDWebImageManager-downloadWithURL:delegate:options:userInfo:,交给 SDImageCache 从缓存查找图片是否已经下载 queryDiskCacheForKey:delegate:userInfo:. 先从内存图片缓存查找是否有图片,如果内存中已经有图片缓存,SDImageCacheDelegate 回调 imageCache:didFindImage:forKey:userInfo: 到 SDWebImageManager。 SDWebImageManagerDelegate 回调 webImageManager:didFinishWithImage: 到 UIImageView+WebCache 等前端展示图片。 如果内存缓存中没有,生成 NSInvocationOperation 添加到队列开始从硬盘查找图片是否已经缓存。 根据 URLKey 在硬盘缓存目录下尝试读取图片文件。这一步是在 NSOperation 进行的操作,所以回主线程进行结果回调