logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

【Redis】Redis 底层数据结构、五种数据类型

当我们执行命令setbit key 7 0的时候,相当于把字符0x33变成了0x32,这样字符串的值就变成了”22”。而value则比较复杂,为了在同⼀个dict内能够存储不同类型的value,这就需要⼀个通⽤的数据结构,这个通用的数据结构就是robj,全名是redisObject。String的内部存储结构⼀般是sds(Simple Dynamic String,可以动态扩展内存),但是如果⼀个

文章图片
#redis#数据结构#数据库 +2
【JVM】Java工具(Arthas,APM,Java Agent,JMX)

Arthas主要使用了Java Agent技术,这种技术可以让运行中的Java程序执行Agent中编写的代码。Arthas使用了Agent中的动态加载模式,可以选择让某个特定的Java进程加载Agent并执行其中的监控代码。监控方面主要使用的就是JMX提供的一些监控指标,同时使用字节码增强技术,对某些类和某些方法进行增强,从而监控方法的执行耗时、参数等内容。

文章图片
#jvm#java#开发语言
【JVM】运行时数据区 StringTable练习

对于Java方法,程序计数器记录的是正在执行的虚拟机字节码指令的地址。如果是本地方法,则不记录,程序计数器的值为undefined。程序计数器的大小并不是固定的,也不直接等同于CPU的位数。它的大小足以支持记录当前执行的指令位置,这通常与具体的JVM实现有关,并不直接反映物理CPU的位数。内存溢出指的是内存中某一块区域的使用量超过了允许使用的最大值,从而使用内存时因空间不足而失败,虚拟机一般会抛出

文章图片
#jvm#java
到底了