从 Flickr 的 DB 服务器配置说起 Swap

转载 2008年09月28日 22:30:00
 网址:

又读了一遍这个 PPT: Federation at Flickr: Doing Billions of Queries Per Day ,发现还是值得咀嚼一下,尽管这"甘蔗"已经被吃过了。

针对主机环境的实践参考

Flickr 数据库的硬件配置一般用 16G 内存,6块 15K 硬盘,RAID 10,在 EM64T 下跑 RHEL 4,运行在 Deadline I/O 调度器 模式 。回写 Cache 用控制器电池而不用磁盘的 Cache。Swappiness 设置为 0 . 。

大内存数据库服务器的 Swap 设置问题

上面提到了 Flickr 是把 Swappiness 设置为 0 ,简单的通过:

echo 0 > /proc/sys/vm/swappiness 

个别情况下这样也可能没起作用,因为实际上对 Swap 的调用是由如下的公式计算得到的:

swap_tendency = mapped_ratio/2 + distress + vm_swappiness; 

其中 vm_swappiness 默认值是 60.

Linux Kernel 2.6 的诡异行为,当有大量物理内存空闲的时候,Linux 仍会傻乎乎的调用 Swap 空间,这导致有的时候系统性能很差。有人建议如果是 INNODB 的引擎的话,可以用 O_DIRECT 的方式强制直接调用物理内存。但似乎副作用很大(存疑)。

如果关闭 Swap (swapoff -a)的话,又会遇到 OOM 的问题。这是绝对不推荐的。

还有人用的方式是把 Swap 建立到 RAM 盘上。

Swap 的自动校正其实是个老问题,几年前可能超过 4g 的 Linux 服务器都不多,而现在动辄几十 G 的内存配置,应用场景发生了很大变化,Kernel 的算法思路肯定也要调整一些了吧(尽管几年来不断看到有小的 Patch 出来,可好像 RHEL 的 Kernel 还是老样子)。

我在这里抛砖引玉,大家实际应用中应该也遇到类似问题吧? 有什么建议? 还是干脆就不管? 默认情况下其实也能跑...

从 Flickr 的 DB 服务器配置说起 Swap

原贴:http://www.dbanotes.net/arch/flickr_db_swap.html 从 Flickr 的 DB 服务器配置说起 Swap作者: Fenng | 可以转载, 转载时务...
  • chinalinuxzend
  • chinalinuxzend
  • 2008年08月06日 12:42
  • 640

从Internet说起

​ 我的电脑还没连网,也想过要和Internet连上。听说,网上黄毒众多,还有些革命的器械在传达,这些说法把我吓住了。前些时分有人建议对收集加以限制,我很赞同。说真实的,哪能允许信息...
  • m_mm122
  • m_mm122
  • 2016年10月15日 21:26
  • 179

从 +new Date 说起,Javascript的一元操作符

http://zhouhua.github.io/2013/07/09/UnaryOperator/ 更多 在偶然打开d3 的源代码的时候,我看到了这样一段代码。 ...
  • caolaosanahnu
  • caolaosanahnu
  • 2014年06月16日 09:02
  • 419

从神经网络说起:深度学习初学者不可不知的25个术语和概念

从神经网络说起:深度学习初学者不可不知的25个术语和概念(上)  关键词:大数据 神经网络 来源:网络整理 作者:IOTER 2017-06-11 05:54 人工智能...
  • sallyyoung_sh
  • sallyyoung_sh
  • 2017年06月12日 12:38
  • 318

flickr 的全局主键生成方案

flickr提供了一个扩展的更好的方案: 他们把 user_index 抽出一个专门用作生成
  • zhangxtn
  • zhangxtn
  • 2015年12月05日 07:57
  • 1192

机器学习基础(八)——感知机(iterative optimization)

感知机的迭代优化(iterative optimization)求解的更新公式如下:wt+1←wt+1sgn(wTtxn)≠ynynxn w_{t+1}\leftarrow w_t+1_{\text{...
  • lanchunhui
  • lanchunhui
  • 2016年03月24日 14:30
  • 648

游戏中的脚本语言介绍1

1.什么是脚本语言首先,脚本语言和其它程序设计语言一样,拥有自己的语法规范,循环流程控件。其次,脚本语言是一种嵌入型的语言,一般不单独执行,需要嵌入到宿主语言中(例如lua嵌入到c++中)执行。脚本语...
  • liangneo
  • liangneo
  • 2010年11月21日 13:20
  • 2526

如何从游戏中建立脚本!

      在一个网络游戏中,插入一个脚本,能代替鼠标的运动,检测怪物和特定NPC的位置。最好就是指定一个坐标,能让自己的角色去到那儿,一个通用的程序,而不是专门为这个游戏设计的程序,而是通过脚本就能...
  • ivwsso
  • ivwsso
  • 2005年05月21日 22:48
  • 785

ping命令执行过程一

一、简介 这里打算从U-Boot的ping命令说起。ping命令是用于测试网络是否和目标网络畅通简单工具, 在U-Boot中ping命令的使用方法是: ping   比如我电脑的IP...
  • zjy900507
  • zjy900507
  • 2017年12月17日 11:53
  • 116

iOS 面试时可能会提到的知识点,整理下!

1、frame bouns  区别  在view中画出区别2、代理、单例  手写代码 3、设计模式   延迟加载    监听     kvo    mvc 4、深拷贝 浅拷贝  区别  举例开发工...
  • jekkihun
  • jekkihun
  • 2014年06月10日 14:53
  • 916
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:从 Flickr 的 DB 服务器配置说起 Swap
举报原因:
原因补充:

(最多只允许输入30个字)