百度360必应搜狗淘宝本站头条

redis 内存碎片 第2页

    腾讯面试:linux内存性能优化总结

    【1】内存映射Linux内核给每个进程都提供了一个独立且连续的虚拟地址空间,以便进程可以方便地访问虚拟内存;虚拟地址空间的内部又被分为内核空间和用户空间两部分,不同字长的处理器,地址空间的范围也不同;图示为32位和64位系统的虚拟地址空间;内存映射是将虚拟内存地址映射到物理内存地址,内核为...

    还有多少人搞不懂堆内存和栈内存的区别?

    这篇文章分享一个面试中经常被问到的知识点:堆内存和栈内存有什么区别?平时开发应该使用堆内存还是栈内存?要回答这个问题,我们首先需要知道什么是堆内存,什么是栈内存,它们的分配和回收有什么特点?先介绍下栈内存:栈内存是为线程留出的临时空间,每个线程都有一个固定大小的栈空间,而且栈空间存储的数据只能由当前...

    内存优化总结:ptmalloc、tcmalloc和jemalloc

    概述需求系统的物理内存是有限的,而对内存的需求是变化的,程序的动态性越强,内存管理就越重要,选择合适的内存管理算法会带来明显的性能提升。比如nginx,它在每个连接accept后会malloc一块内存,作为整个连接生命周期内的内存池。当HTTP请求到达的时候,又会malloc一块当前请求阶段的...

    ringbuffer 消息队列 内存池 性能优化利器

    简约而不简单的ringbuffer最近在研究srsLTE的代码,其中就发现一个有意思的数据结构------ringbuffer。虽然,这是一个很基本的数据结构,但时,它在LTE这种通信协议栈系统中却大行其道,也是很容易被协议开发人员忽略的。在整个通信协议的开发团队中,一般会有一个平台中间件的团队,他...

    详细了解 InnoDB 内存结构及其原理

    最近发现,文章太长的话,包含的信息量较大,并且需要更多的时间去阅读。而大家看文章,应该都是利用的一些碎片时间。所以我得出一个结论,文章太长不太利于大家的吸收和消化。所以我之后会减少文章的长度,2-3K字就差不多,也能够快速的阅读完。之前写过一篇文章「简单了解InnoDB原理」,现在回过头看,其实里...

    Redis遇到Hash冲突怎么办?

    这是小伙伴之前遇到的一个面试题,感觉也是一个经典八股,和大伙分享下。一什么是Hash冲突Hash冲突,也称为Hash碰撞,是指不同的关键字通过Hash函数计算得到了相同的Hash地址。Hash冲突在Hash表中是不可避免的,因为Hash表的地址空间有限,而可能的关键字数...

    内存碎片优化(内存池)

    学过内存池,跟着视频实现过c的内存池代码,也看过nginx的内存池,在自己的角度对内存池的概念,实现有一定的认知。但有一次面试,面试官问到内存池的实现原理,如果基于内存池用new对对象进行内存申请如何实现?第一次思考这个问题,当时却懵了,感谢这次经历,让我发现又一个知识点。1:引入思考(操作系统管...

    深入研究Redis大Key问题与解决方案

    前言本文原创,著作权归WGrape所有,未经授权,严禁转载一、什么是大KeyRedis是基于内存的Key-Value数据存储系统,如果Value大小超过阈值,那么此时存储这个Value的Key就是大key(下面统称为bigKey),至于阈值则根据不同场景需求不尽相同二、bigkey的危害1、数据倾斜...