yangjianxv
作者yangjianxv·2016-12-26 13:01
部门总经理·成方金融科技有限公司

性能指标之资源指标-CPU-谁占用了CPU-函数级-tProf

字数 2203阅读 7891评论 2赞 4

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

4

添加新评论2 条评论

overtopovertop系统工程师互联网公司
2016-12-29 16:14
另外想追问一下,您提到“sync命令则可用来强制将内存缓冲区中的数据立即写入磁盘中”,请问内存缓冲区中数据是先写入jfs log设备,还是直接写入jfs?要想保证jfs完整性,是不是需要像oracle一样,在jfs log中记录有redo和undo信息?

yangjianxv@overtop 首先需要说明的是,例子中提到的log,是应用的log,不是OS的log。 内存缓冲区中数据是直接刷入存储设备。至于存储设备是放在buffer上,还是直接进磁盘那是存储的事情了。 操作系统在内存中会分配一些page(分页)做缓存。aix上叫非计算内存或者持久内存,linux上对标的是buffer/cache。这类内存分页的作用只是起到减少磁盘IO的作用。如果这个page的内容和磁盘上的那个block一模一样,随时可以被清理。如果这个内存page的内容被修改过,则需要刷入磁盘。没有类似oracle的redo undo。这一点需要从oracle的机制来解释为什么OS的缓存没有这一套。oracle 的redo是为了交易前滚,undo是为了交易回滚,而os的buffer不需要这一套。

2016-12-30 14:37
overtopovertop系统工程师互联网公司
2016-12-29 15:50
很清楚,赞!有时候,关机前,敲几个sync,将数据从内存往磁盘上刷一刷,会比较放心。
Ctrl+Enter 发表

本文隶属于专栏

作者其他文章

X社区推广