内存分配
内存分配器一直是性能优化的重头戏,其结构复杂、内容抽象,涉及的数据结构繁多,相信很多人都曾被它搞疯了。
本文将从内存的基本知识入手,到一般的内存分配器,进而延伸到 Go 内存分配器,对其进行全方位深层次的讲解,希望能让你对进程内存管理有一个全新的认识。
物理内存 VS 虚拟内存
在研究内存分配器之前,让我们先看一下物理内存和虚拟内存的背景知识。
剧透一下,内存分配器实际上...
Go
Go is an open source programming language that makes it easy to build simple, reliable, and efficient software.
Hello World
下载
本次测试环境为 macos,选择了 *.dmg 直接下载安装即可。
下载地址
测试
$ go version
go ve...
Spring
使用 spring 中的缓存。
例子
User.java
用于测试的实体。
public class User {
private Long id;
private String name;
//Getter & Setter
//toString()
}
UserService.java
用...
Jedis
Jedis is a blazingly small and sane redis java client.
功能
Sorting
Connection handling
Commands operating on any kind of values
Commands operating on s...
Codis
Codis is a proxy based high performance Redis cluster solution written in Go.
It is production-ready and widely used at wandoujia.com and many companies.
使用的好处
Redis获得动态扩容/缩容的能力,增减redis实例...
Slim
Slim Slim is collection of surprisingly space efficient data types, with corresponding serialisation APIs to persisting them on-disk or for transport.
索引的一点背景知识
索引可以被认为是业务数据(用户文件)之外的一些”额外”的...