当前位置: 首页 > news >正文

百度建立网站需要花多少钱视频教学网站开发需求分析

百度建立网站需要花多少钱,视频教学网站开发需求分析,网站建设比较好的多少钱,建立网站的市场价格虽然说 MySQL 的数据是存储在磁盘里的#xff0c;但是也不能每次都从磁盘里面读取数据#xff0c;这样性能是极差的。为此#xff0c;Innodb 存储引擎设计了一个缓冲池#xff08;Buffer Pool#xff09;#xff0c;来提高数据库的读写性能。 有了缓冲池后#xff1a; …虽然说 MySQL 的数据是存储在磁盘里的但是也不能每次都从磁盘里面读取数据这样性能是极差的。为此Innodb 存储引擎设计了一个缓冲池Buffer Pool来提高数据库的读写性能。 有了缓冲池后 当读取数据时如果数据存在于 Buffer Pool 中客户端就会直接读取 Buffer Pool 中的数据否则再去磁盘中读取。当修改数据时首先是修改 Buffer Pool 中数据所在的页然后将其页设置为脏页最后由后台线程将脏页写入到磁盘。 一、Buffer Pool 有多大 Buffer Pool 是在 MySQL 启动的时候向操作系统申请的一片连续的内存空间默认配置下 Buffer Pool 只有 128MB 。 可以通过调整 innodb_buffer_pool_size 参数来设置 Buffer Pool 的大小一般建议设置成可用物理内存的 60%~80%。 二、Buffer Pool 缓存什么 在 MySQL 启动的时候InnoDB 会为 Buffer Pool 申请一片连续的内存空间然后按照默认的16KB的大小划分出一个个的页 Buffer Pool 中的页就叫做缓存页。此时这些缓存页都是空闲的之后随着程序的运行才会有磁盘上的页被缓存到 Buffer Pool 中。 Buffer Pool 除了缓存「索引页」和「数据页」还包括了 undo 页插入缓存、自适应哈希索引、锁信息等等。 为了更好的管理这些在 Buffer Pool 中的缓存页InnoDB 为每一个缓存页都创建了一个控制块控制块信息包括「缓存页的表空间、页号、缓存页地址、链表节点」等等。 控制块也是占有内存空间的它是放在 Buffer Pool 的最前面接着才是缓存页如下图 上图中控制块和缓存页之间灰色部分称为碎片空间。 查询一条记录就只需要缓冲一条记录吗 不是的。 当我们查询一条记录时InnoDB 是会把整个页的数据加载到 Buffer Pool 中因为通过索引只能定位到磁盘中的页而不能定位到页中的一条记录。将页加载到 Buffer Pool 后再通过页里的页目录去定位到某条具体的记录。 三、如何管理 Buffer Pool Innodb 通过三种链表来管理缓页 Free List 空闲页链表管理空闲页Flush List 脏页链表管理脏页LRU List管理脏页干净页将最近且经常查询的数据缓存在其中而不常查询的数据就淘汰出去。 InnoDB 对 LRU 做了一些优化我们熟悉的 LRU 算法通常是将最近查询的数据放到 LRU 链表的头部而 InnoDB 做 2 点优化 将 LRU 链表 分为young 和 old 两个区域加入缓冲池的页优先插入 old 区域页被访问时才进入 young 区域目的是为了解决预读失效的问题。当**「页被访问」且「 old 区域停留时间超过 innodb_old_blocks_time 阈值默认为1秒」**时才会将页插入到 young 区域否则还是插入到 old 区域目的是为了解决批量数据访问大量热数据淘汰的问题。 可以通过调整 innodb_old_blocks_pct 参数设置 young 区域和 old 区域比例。 四、脏页什么时候会被刷入磁盘 引入了 Buffer Pool 后当修改数据时首先是修改 Buffer Pool 中数据所在的页然后将其页设置为脏页但是磁盘中还是原数据。 因此脏页需要被刷入磁盘保证缓存和磁盘数据一致但是若每次修改数据都刷入磁盘则性能会很差因此一般都会在一定时机进行批量刷盘。 可能大家担心如果在脏页还没有来得及刷入到磁盘时MySQL 宕机了不就丢失数据了吗 这个不用担心InnoDB 的更新操作采用的是 Write Ahead Log 策略即先写日志再写入磁盘通过 redo log 日志让 MySQL 拥有了崩溃恢复能力。 下面几种情况会触发脏页的刷新 当 redo log 日志满了的情况下会主动触发脏页刷新到磁盘Buffer Pool 空间不足时需要将一部分数据页淘汰掉如果淘汰的是脏页需要先将脏页同步到磁盘MySQL 认为空闲时后台线程会定期将适量的脏页刷入到磁盘MySQL 正常关闭之前会把所有的脏页刷入到磁盘 在我们开启了慢 SQL 监控后如果你发现**「偶尔」会出现一些用时稍长的 SQL**这可能是因为脏页在刷新到磁盘时可能会给数据库带来性能开销导致数据库操作抖动。 如果间断出现这种现象就需要调大 Buffer Pool 空间或 redo log 日志的大小。 五、参考 小林 coding
http://www.zqtcl.cn/news/29021/

相关文章:

  • 网站后台账户如何做会计分录wordpress 图片浏览器
  • 如何用ppt形式做网站商丘做网站哪家好
  • 青岛网站制作设计企业网站营销实现方式
  • 建设项目验收网站公示网站建设报价word文档
  • 专门做汽车配件保养的网站wordpress分类链接地址
  • 有什么网站可以免费看电影如何安装网站程序
  • 最简单的做网站的软件服务号网站建设
  • 上海建设工程交易服务中心淄博网站快照优化公司
  • 专业做相册书的网站什么是软件开发
  • 电子商务网站建设产品长春网站建设厂家
  • 企业网站搭建外贸网站英文版
  • 体验好的网站网页制作与网站开发从入门到精通
  • 昆山seo网站优化软件falsh网站模板下载
  • 深圳做企业网站的公竞价外包推广专业公司
  • 有什么免费企业网站是做企业黄页的天津做无痛人流费用五洲网站
  • 网站站长需要具备什么素质音乐网站开发目的
  • 厦门海沧区建设局网站北京做手机网站的公司
  • 个人怎么做网站优化交易网站开发文档
  • 东营网站建设培训学校网页设计实训报告800字
  • 网站主要栏目搜索引擎的三个技巧
  • 图片模板 网站源码北京旅行社网站建设公司
  • 电子商务网站建设与维护课件什么样的网站需要icp经营性备案
  • 天津视频网站开发团队怎样在公司的网站服务器上更新网站内容
  • 一个微信可以做两个网站支付宝做电销有什么资料网站
  • 做纸箱在什么网站找客户深圳住建网站
  • 网站建设设计公司类网站织梦模板 带手机端百合网网站建设与策划
  • 建个免费的销售网站做ui的网站
  • 郑州网站建设技术托管网页设计作业欣赏
  • 网站建设杭州公司wordpress如何导入主题
  • 柏乡县网站建设网站被**泛解析后的解决方法