自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 【Neo4j】Neo4j基本概念与操作

Neo4j图数据库基础与应用摘要 Neo4j是NoSQL类型的图数据库,由节点(Node)、关系(Relationship)、标签(Label)和属性(Property)组成核心数据结构。它采用Cypher查询语言,支持CREATE/MATCH/DELETE等基本CRUD操作,以及MERGE、OPTIONAL MATCH等高级查询功能。语法特点包括:用括号表示节点,方括号表示关系;支持路径查询和聚合函数;可通过WITH实现链式查询。数据库管理方面支持创建索引和约束来优化性能和数据完整性。Neo4j特别适合处

2025-11-03 11:27:25 313

原创 【Redis】高可用

Redis高可用性主要通过主从集群和哨兵机制实现。主从集群通过全量同步、增量同步等技术保证数据一致性,但存在异步复制导致的数据丢失风险。哨兵机制则通过监控、选主和通知三大功能,自动处理节点故障和主从切换,降低人工干预需求。同时通过主观下线和客观下线机制提高故障判断准确性,结合参数调优可有效避免脑裂等问题,确保Redis集群的高可用性。

2025-08-22 16:40:42 943

原创 【Redis】原理

Redis原理摘要 Redis采用高效的数据结构实现其键值存储系统,核心特点包括: RedisObject:所有数据都封装为RedisObject,包含类型、编码方式等元信息。 动态字符串(SDS):优化C语言字符串,支持O(1)长度获取和动态扩容,提供embstr和raw两种编码方式。 整数集合(IntSet):有序存储整数,支持自动类型升级,适用于小型整数集合。 字典(Dict):核心数据结构,采用链地址法解决哈希冲突,支持渐进式rehash以平滑扩容/收缩。 内存管理:通过引用计数和LRU机制实现内存

2025-08-22 16:37:42 1017

原创 【算法】蓄水池抽样算法

摘要: 蓄水池抽样算法用于从未知长度的数据流中均匀采样k个元素,适用于大数据实时处理。核心思路是: 初始将前k个元素存入结果数组 对第i(i>k)个元素,生成随机数j∈[0,i),若j<k则替换结果数组第j位 通过概率分析证明每个元素最终被采样的概率均为k/n 算法扩展包括加权版本(按权重概率采样)和分布式版本(多节点协同采样)。Go代码实现展示了基础算法及其变种。

2025-07-13 18:18:52 808

原创 【Redis】持久化

Redis提供了两种持久化方案:RDB快照和AOF日志。 RDB快照通过保存内存数据到磁盘实现持久化,可通过停机、配置或命令触发。优点是恢复速度快,但无法记录执行期间修改的数据,且可能占用双倍内存。 AOF日志记录所有写命令,支持三种写回策略(Always、Everysec、No),并提供重写机制优化文件大小。优点是数据完整性高,但恢复速度较慢。 RDB适合快速恢复,AOF适合数据安全,两者可结合使用以平衡性能与可靠性。

2025-07-13 03:27:06 677

原创 【Redis】数据类型和操作

Redis数据类型与操作摘要 Redis提供了多种数据类型及相应操作命令: 通用命令:包括KEYS(查找键)、EXISTS(检查键)、DEL(删除键)、EXPIRE/TTL(过期时间)、RENAME(重命名)、TYPE(类型查询)、FLUSHDB/FLUSHALL(清空数据)等。 数据类型与特性: String:基本数据类型,最大512M,支持文本/数字/二进制数据,常用作缓存、计数器。 List:双向链表结构,支持40亿+元素,适用于消息队列、任务列表。 Hash:键值对集合,适合存储对象类型数据,如用户

2025-07-13 03:24:01 438

原创 【Redis】应用

Redis作为高性能缓存数据库,在分布式系统中有着广泛应用。文章介绍了Redis实现session机制、缓存策略和全局唯一ID的方法。 在session机制方面,Redis解决了传统Web服务session在分布式环境中的共享问题,并具备高性能、高可用等优势。 缓存策略部分详细分析了Cache Aside模式,强调"先更新数据库再删除缓存"的重要性,并对比了其他策略的适用场景。同时探讨了缓存穿透、击穿和雪崩的解决方案,如布隆过滤器、互斥锁和多级缓存等。 全局唯一ID实现方面,Redis自

2025-07-13 03:21:54 1584

原创 【算法】对于KMP算法的一些理解

KMP算法是一种高效的字符串匹配算法,通过预处理模式串生成next数组来优化匹配过程。其核心思想是利用最长公共前后缀信息,在失配时快速调整模式串位置,减少无效匹配。next数组记录了每个位置失配时应回溯的位置,相当于模式串与自身的错位匹配。算法实现分为两部分:计算next数组和进行实际匹配,两者结构相似,都遵循"匹配则前进,失配则回溯"的原则。KMP算法的时间复杂度为O(n+m),比暴力匹配的O(nm)显著提升。

2025-07-12 17:28:21 363

原创 【网络】网络编程相关基础

网络背景知识,网络编程基础,简单使用UDP/TCP

2023-08-30 17:34:32 527 1

原创 【网络】应用层HTTP/HTTPS协议

应用层http,https介绍

2023-08-29 18:43:58 563 3

原创 【网络】传输层UDP/TCP协议

传输层UDP协议和TCP协议的介绍

2023-08-27 17:06:52 389

原创 【网络】数据链路层MAC帧与其他部分协议

介绍数据链路层中以太网帧,MAC地址以及简介ARP协议和NAT

2023-08-26 17:01:14 320

原创 【网络】网络层IP协议

网络层IP协议

2023-08-25 15:09:32 349 1

原创 【IO多路转接】Epoll

IO多路转接之Epoll

2023-08-24 18:15:55 157 1

原创 【IO多路转接】Select,Poll

IO多路转接之Select和Poll

2023-08-24 14:24:43 111 1

原创 【C++】函数重载、引用、类和对象

C++,类和对象,引用,函数重载

2023-02-09 16:45:04 434

原创 【C++】日期类实现(实现简易万年历)

C++,日期类实现,简易日期计算器,简易万年历

2023-02-08 21:14:19 2000

原创 常见的九种排序算法(C语言实现)

选择排序,冒泡排序,插入排序,希尔排序,堆排序,归并排序,快速排序,计数排序,基数排序,C语言

2023-01-25 22:00:18 1435

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除