- 博客(6)
- 收藏
- 关注
原创 Redis Zset(有序集合)底层实现原理解析
跳表(skiplist):用于高效的范围查询和排序。字典(hash table):用于快速查找特定元素的分数。这两个数据结构相互配合,使得 Zset 既能快速查找元素分数,又能高效地按分数排序访问数据。小数据量时,Zset 使用ziplist(压缩列表)存储,节省空间但性能较低。大数据量时,Zset 使用skiplist + dict 组合,保证查询效率。跳表用于排序操作,提供 O(log N) 级效率。哈希表用于成员分数查找,提供 O(1) 级效率。
2025-03-10 19:48:29
866
原创 如何在 Linux 系统中开放防火墙端口
在 Linux 服务器上运行应用程序时,有时需要手动开放防火墙端口,以便外部设备能够访问服务。本文将介绍如何在 Linux 系统(主要针对firewalld和iptables)中开放端口。
2025-03-02 21:51:10
329
原创 Go 语言中 print、printf 和 println 的区别
是常用的输出函数,但它们之间有一些细微的区别。虽然它们都用于向标准输出打印信息,但它们的行为和使用场景不同。本文将详细介绍这些函数的差异。会自动使用空格分隔多个参数,但没有格式化选项。首先,了解 Go 语言中的。这两个函数有更强的格式化能力,尤其是。
2025-02-28 00:19:53
296
原创 Vscode goimports安装失败
但是,这样还是没有安装goimports,想要安装goimports可以在命令行输入以下命令将。在代码开始时加入上述代码,这会让 Go 通过国内的代理服务器来获取依赖。,这通常能提高下载速度并减少网络问题。可以使用国内的 Go 代理,如。
2025-02-27 23:57:57
197
原创 深入理解 JVM:原理与作用
JVM 是一个虚拟计算机,它运行 Java 程序并管理其内存、执行代码、提供垃圾回收机制等。在 Java 程序的编译和执行过程中,JVM 充当了重要角色。Java 源代码经过 Java 编译器(javac)编译后,会生成平台无关的字节码文件(.class文件)。这些字节码并不是直接在操作系统上运行,而是由 JVM 解析执行。简而言之,JVM 让 Java 程序具备了平台无关性,Java 程序可以在安装了 JVM 的任何操作系统上运行,而不需要重新编译。JVM 是 Java 语言能够实现跨平台的关键所在。
2025-02-27 22:35:38
879
原创 Spring Boot 中 @RestController 和 @Controller 的区别
和都是 Spring MVC 中的核心注解,但它们的使用场景和功能有所不同。适用于需要返回视图的传统 Web 应用。适用于直接返回数据的 RESTful API 开发。是的增强版,已经包含了的功能,使用起来更加简洁。
2025-02-19 01:29:01
325
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人