后端共128篇

面试题:Redis 中的内存碎片化是什么?如何进行优化?

Redis 中的内存碎片化 内存碎片化是指内存中存在大量不连续的小块空闲内存,这些空闲内存虽然总量足够,但由于不连续,无法被有效利用。Redis 作为一个基于内存的数据库,内存碎片化会直接影响...
程序百科的头像-程序百科程序百科38天前
03110

面试题:如何调整 Linux 操作系统的内核参数来优化 Nginx?

在面试中,如果被问到如何通过调整 Linux 内核参数来优化 Nginx 性能,可以从以下几个方面进行回答: 1. 文件描述符限制 Nginx 需要处理大量并发连接,因此需要增加文件描述符的限制。 调...
程序百科的头像-程序百科程序百科46天前
03310

面试题:Redis 的 Lua 脚本功能是什么?如何使用?

Redis Lua 脚本 是 Redis 提供的一种功能,允许用户在 Redis 服务器端执行 Lua 脚本。通过 Lua 脚本,可以将多个 Redis 命令组合成一个原子操作,从而在保证性能的同时实现复杂的业务逻辑。 1. ...
程序百科的头像-程序百科程序百科37天前
02610

面试题:你在项目中使用的 Redis 客户端是什么?

在 Java 项目中,常用的 Redis 客户端有以下几种: 1. Jedis Jedis 是一个广泛使用的 Redis 客户端,提供了同步的 API,支持连接池和 Pipeline 等特性。 特点: 同步阻塞:所有操作都是同步的,...
程序百科的头像-程序百科程序百科38天前
0389

面试题:Redis 中的 Geo 数据结构是什么?

Redis 的 Geo 数据结构是一种基于 Sorted Set(有序集合)实现的地理位置存储和查询功能。它允许存储经纬度坐标,并支持计算两个位置之间的距离、查找某个位置附近的其他位置等...
程序百科的头像-程序百科程序百科38天前
0279

面试题:Redis 中的 Ziplist 和 Quicklist 数据结构的特点是什么?

Redis 中的 Ziplist 和 Quicklist 是两种用于优化内存使用和提高性能的数据结构,分别用于实现列表(List)和哈希表(Hash)等数据类型。以下是它们的特点和设计原理。 1.&...
程序百科的头像-程序百科程序百科38天前
0289

面试题:如何使用 Redis 快速实现布隆过滤器?

布隆过滤器(Bloom Filter)是一种概率数据结构,用于快速判断一个元素是否存在于集合中。它的特点是: 空间效率高:使用较少的内存存储大量数据。 查询速度快:时间复杂度为 O(k),k 是哈希函...
程序百科的头像-程序百科程序百科38天前
0389

面试题:如果让你统计每个接口每分钟调用次数怎么统计?

统计每个接口每分钟的调用次数是监控系统性能和排查问题的重要手段。以下是设计一个接口调用次数统计系统的详细思路: 1. 需求分析 功能需求: 统计每个接口每分钟的调用次数。 支持实时查询和...
程序百科的头像-程序百科程序百科46天前
0309

面试题:Redis 的 hash 是什么?

Redis 的 Hash 是一种数据结构,用于存储键值对(field-value pairs)的集合。它类似于编程语言中的字典(Dictionary)或映射(Map),适合存储对象或实体的属性。 1. Hash 的基本特...
程序百科的头像-程序百科程序百科37天前
0469

面试题:HashMap 是不是线程安全的?如果让你来实现一个线程安全的 HashMap 你要怎么设计?如果不用加锁你要怎么设计?

1. HashMap 是不是线程安全的? 回答:HashMap 不是线程安全的。在多线程环境下,多个线程同时操作 HashMap 可能会导致数据不一致或死循环等问题。例如,当一个线程在扩容时,另一个线程同时进...
程序百科的头像-程序百科程序百科46天前
0239