微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

64位或32位Linux系统?

我有一台4GB内存的服务器.在它上面,我安装了32位slackware Linux 12.1.当然,它并没有使用全部4GB的RAM.我很快就想将RAM增加到8GB,并且正在寻找系统使用它的方法.该系统用作数据库服务器,白天负载很高.

AFAICT,我有两个选择:保持32位并重建内核并失去一些性能.或者使用64位并重新安装所有内容.看看64位版本的slackware,我可以运行-current或Slamd64.

现在,问题是:

>我应该留在32位还是64位?
>如果我去64位,我应该使用-current还是Slamd64?

附:我希望从生产中实际使用任何这些配置的人那里得到答案,而不仅仅是复制/粘贴我可以通过Google找到的东西.

解决方法

大多数现代32位cpu支持PAE,允许它们处理超过4GB的物理内存,尽管单个进程一次只能看到4GB.内核将占用一些这样的地址空间. This Stackoverflow post讨论了PAE的工作原理.

许多操作系统(包括Linux和MS Windows)都提供了一个API,允许您在进程的虚拟地址空间中操作MMU和页面覆盖.此工具允许您为磁盘缓冲区使用额外的内存.但是,据我所知,唯一直接支持的DBMS平台是MS sql Server.

额外的内存将提高您的数据库读取性能(这可能会提高您的整体吞吐量),但写入性能将受到I / O的限制.如果您的数据库缓存命中率较低(例如低于95%),那么额外的内存可能会提高您的整体吞吐量.否则,您可能需要查看磁盘子系统(请参阅下面的1).

假设您需要或可以从更多内存中受益,最好的方法是转移到64位平台.现代Xeon或Opteron服务器将允许您安装最多32-144GB,具体取决于型号.这可能是您的最佳选择.

> SAN适用于事务性应用程序.对于大批量应用程序,您应该在数据库日志上进行直写式缓存,但是您可以在数据卷上使用回写式高速缓存.这将为您提供良好的日志阅读器性能,因为随机数据写入可以被控制器的电池备份缓存吸收,并且控制器可以优化磁盘写入以提高吞吐量.但是,这种安排具有可能使数据量不一致(损坏)的故障模式.在日志卷上使用直写可以缓解这种情况(因为日志不容易受到这些故障模式的影响).实际上,这会将您限制为恢复/前滚恢复模型,因此只有在您能够容忍(例如)4小时恢复窗口时才能使用它.

原文地址:https://www.jb51.cc/linux/396806.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐