内存
文章平均质量分 76
内存
Hehuyi_In
这个作者很懒,什么都没留下…
展开
-
postgresql_internals-14 学习笔记(五)Buffer Cache
调和内存(ns级)与磁盘(ms级)间的速度差异。pg不仅用自己的,也用os cache,所以它使用了“双缓存”,这也是很多文档推荐shared_buffer参数只设为内存25%(通常不超过16G)的原因。原创 2023-01-01 12:23:08 · 2248 阅读 · 0 评论 -
Linux 虚拟内存管理思维导图
画了冰山一角...b站有一些讲解内存管理的课程,讲得挺好的新竹交通大学:计算机操作系统设计与实现(Operating System Design and Implementation,作業系統設計與實作課程)_哔哩哔哩_bilibili原创 2022-03-05 22:40:29 · 1697 阅读 · 0 评论 -
Oracle 单进程可用PGA为4G限制导致的ORA-4030报错
一、 问题背景收到开发反馈,系统报表运行过程中报错,一看发现是ORA-4030,内存的问题查看alert日志,发现期间有大量ORA-4030报错,并且主要是pga相关的打开trace文件,可以看到报错进程使用内存接近4G但是查看pga参数设置,会发现设置的上限是20G,完全没到,并且期间总的PGA使用率也不高二、 报错原因MOS搜索发现Doc ID 1325100.1 文档,看到现象也是You are running a PL/SQL package or...原创 2021-07-21 20:26:25 · 2454 阅读 · 3 评论 -
SqlServer 内存篇(二)—— SqlServer内存管理模式及常见问题
以下概念按sqlserver 2005及2008中描述,2012中有改变,参考系列最后一篇。一、 SqlServer内存参数与其他数据库相比,sqlserver可调整的内存参数很少,只有以下几个:1. Min Server Memory(MB)定义sqlserver最小buffer pool值。注意以下两点:Min Server Memory是一个逻辑概念,...原创 2020-01-07 22:44:16 · 5749 阅读 · 1 评论 -
《Linux性能优化实战》笔记(十三)—— 如何“快准狠”找到系统内存的问题
一、 内存性能指标为了分析内存的性能瓶颈,首先你要知道,怎样衡量内存的性能,也就是性能指标问题。1.系统内存使用情况:比如已用内存、剩余内存、共享内存、可用内存、cache和buffer的用量等。2.进程内存使用情况:比如进程的虚拟内存、常驻内存、共享内存以及 Swap 内存等。虚拟内存,包括了进程代码段、数据段、共享内存、已经申请的堆内存和已经换出的内存等。 常驻内存(进程的内存使用率)是进程实际使用的物理内存,不过,它不包括 Swap 和共享内存。 共享内存,既包括与其他进程共同..原创 2020-09-21 01:35:26 · 1482 阅读 · 0 评论 -
《Linux性能优化实战》笔记(十二)—— 为什么系统的Swap变高了
一、Swap 原理1. swap简介Swap就是把一块磁盘空间或者一个本地文件(以下讲解以磁盘为例),当成内存来使用。它包括换出和换入两个过程。换出,就是把进程暂时不用的内存数据存储到磁盘中,并释放这些数据占用的内存。 换入,则是在进程再次访问这些内存的时候,把它们从磁盘读到内存中来。所以,Swap 其实是把系统的可用内存变大了。这样,即使服务器的内存不足,也可以运行大内存的应用程序。2. swap与内存阈值既然 Swap 是为了回收内存,那么 Linux 到底在什么时候需要回收内.原创 2020-09-20 23:15:52 · 1565 阅读 · 0 评论 -
《Linux性能优化实战》笔记(十一)—— 内存泄漏定位与处理
一、内存的分配和回收前面讲进程的内存空间时,我曾经提到过,用户空间内存包括多个不同的内存段,比如只读段、数据段、堆、栈以及文件映射段等,这些内存段正是应用程序使用内存的基本方式。参考《Linux性能优化实战》笔记(八)—— 内存是怎么工作的举个例子,你在程序中定义了一个局部变量,比如一个整数数组 int data[64] ,就定义了一个可以存储 64 个整数的内存段。由于这是一个局部变量,它会从栈中分配内存。栈内存由系统自动分配和管理,一旦程序运行超出了这个局部变量的作用域,栈内存就会被系统自.原创 2020-09-19 14:42:31 · 1710 阅读 · 0 评论 -
《Linux性能优化实战》笔记(十)—— 系统缓存命中率
一、 查看工具简介Linux系统中并没有直接提供查看系统缓存命中率的工具,所以这里我要介绍一下,cachestat 和 cachetop。cachestat 提供了整个操作系统缓存的读写命中情况。 cachetop 提供了每个进程的缓存命中情况。这两个工具都是 bcc 软件包的一部分,它们基于 Linux 内核的 eBPF(extended Berkeley Packet Filters)机制,来跟踪内核中管理的缓存,并输出缓存的使用和命中情况。除了缓存的命中率外,还有一个指标你可能也会很感原创 2020-09-19 13:23:18 · 3150 阅读 · 0 评论 -
《Linux性能优化实战》笔记(九)—— 查看内存使用情况、Buffer和Cache的区别
一、查看内存使用情况1.free 工具free 显示的是整个系统的内存使用情况(默认以字节为单位):两行分别是物理内存 Mem 和 Swap 的使用情况,而六列中,每列数据的含义分别为:第一列,total 是总内存大小 第二列,used 是已使用内存的大小,包含了共享内存 第三列,free 是未使用内存的大小 第四列,shared 是共享内存的大小 第五列,buff/cache 是缓存和缓冲区的大小 最后一列,available 是新进程可用内存的大小(未使用内存+可回收的..原创 2020-09-19 00:50:07 · 2333 阅读 · 0 评论 -
Reporting Services 占用内存过高问题
收到告警sqlserver服务器内存使用率过高,登录检查发现Reporting Services 占用内存超过13G,检查DB中正在执行的sql并没有发现ReportServer DB相关sql,业务方也说没有查到Reporting Services当前在执行什么。重启Reporting Services服务后故障恢复,查了下网上文章相关问题的分析和调整方法。一、 查询占用内存最高的Reporting Services信息Select Top 10 *From ReportServ.原创 2020-08-03 19:09:47 · 8173 阅读 · 0 评论