jemalloc

是谢添啊5 天前
数据库·redis·内存占用·jemalloc·memory usage
不同版本的 Redis 的键值对内存占用情况示例「1」与「3」两条命令分别设置了键值对,虽然 key 只相差 1 个字符,但在 Redis 6.0 与 Redis 7.0 中使用 memory usage [key] 命令计算出的内存使用字节数有明显差异。
vivo互联网技术11 天前
rockdb·jemalloc·内存分配管理·glibc ptmalloc
RocksDB 内存超限问题剖析作者:来自 vivo 互联网服务器团队- Zeng Luobin在使用 RocksDB 存储引擎的过程中,有部分开发者遇到了内存使用超出预期的情况。本文针对这一问题展开了深入分析,从内存使用原理、RocksDB 内存管理机制、常见内存使用问题等方面进行了详细探讨,并提出了相应的解决方案和优化建议,希望能够帮助开发者更好地理解和优化 RocksDB 的内存使用情况,提升系统性能和稳定性。
山有木兮啊2 个月前
c++·jemalloc
jemalloc替换标准库 malloc等函数的三种方式使用LD_PRELOAD可以做到无侵入式替换,只需要在运行程序前设置env ,export LD_PRELOAD=/path/to/jemalloc 注:编译jemalloc时不设置--with-jemalloc-prefix
烛秋6 个月前
c++·内存泄漏·jemalloc·编译优化·gcc8
GCC8 编译优化 BUG 导致的内存泄漏最近我们又接手了一套老系统,老系统的迭代效率和稳定性较差,我们打算做重构改造,但重构周期较长,在改造完成之前还有大量的需求迭代。因此我们打算先从稳定性和迭代效率出发做一些微小的升级,其中一项效率提升便是升级编译工具 和 GCC 版本。 老系统使用 Autotools 编译工具链,而我们新服务通常采用 bazel,bazel 在构建速度、依赖描述、工具链等方面有很大优势。我们决定将老系统的编译工具迁移到 bazel,同时也从 GCC4 升级到 GCC8。
橘色的喵6 个月前
信号·堆栈·ld_preload·preload·sigusr1·jemalloc·堆栈打印
使用`LD_PRELOAD`和`jemalloc`实现C/C++信号的内存堆栈信息收集本文介绍如何结合LD_PRELOAD与jemalloc,在接收到SIGUSR1信号时打印程序的堆栈信息。详细步骤包括编译和配置jemalloc,编写信号处理程序,并通过LD_PRELOAD加载共享库的方法。