首页
学习
活动
专区
工具
TVP
发布

涓流

专栏成员
98
文章
58875
阅读量
16
订阅数
从ES底层原理来看查询优化
ES 底层(或者说内核)是基于 Lucene,本文从 ES 查询流程以及 Lucene 底层的一些存储结构设计设计, 来分析 ES 的一些查询优化方向
leobhao
2024-06-27
2200
feeds流系统设计概述
什么是 Feeds 流? 从用户层面来说, 各种手机 APP 里面, 特别是社交类的, 我们可以看到关注的内容、好友的动态聚合成一个列表(最典型的就是微信朋友圈)都是 feeds 流的一种形式。
leobhao
2024-06-18
2000
计算机存储设计理论
不同的数据库存储系统都会设计不同的索引结构来优化查询/写入效率, 在讨论这些结构之前, 我们先从头回顾一下计算机存储的一些设计
leobhao
2024-06-04
2100
ES快照原理
快照模块是 ES 备份、迁移数据的重要手段。ES 快照支持增量备份,支持多种类型的仓库存储。
leobhao
2024-05-26
870
从进程开始了解GMP模型
进程是操作系统分配资源(CPU、内存、文件)、调度任务和执行的一个基本单位。它拥有独立的内存空间、已分配的资源和独立的执行上下文。 线程是CPU调度的基本单位,同一进程内的线程共享了进程的资源和内存空间。
leobhao
2024-04-01
1150
go context原理
在 go 语言开发中, context 用于提供上下文的联系, 在不同协程调用间建立取消和超时机制,也可以用于传递相关值。
leobhao
2024-04-01
1180
go pprof使用
工欲善其事必先利其器, java 中有 async-profile、 arthas、jstack/jmap/jstat 等一系列工具来辅助排查性能问题
leobhao
2024-04-01
1050
深入理解 go interface
在 go 里面通过 interface 实现了泛型、多态等面相对象特性, 那么在 go 的 interface 到底是什么
leobhao
2024-04-01
830
深入理解 go 反射
反射是可以让我们在程序运行时(runtime)访问、检测和修改对象本身状态或行为的一种机制。
leobhao
2024-04-01
820
go net/http标准库源码
可以看到 Go 实现的http服务步骤非常简单,首先注册路由,然后创建服务并开启监听即可。
leobhao
2024-04-01
730
mongoDB知识总结
MongoDB 是基于文档的 NoSql 存储引擎。MongoDB 的数据库管理由数据库、Collection(集合,类似MySql的表)、Document(文档,类似MySQL的行)组成,每个Document都是一个类JSON结构BSON结构数据。 MongoDB 的核心特性是:No Schema、高可用、分布式(可平行扩展),另外MongoDB自带数据压缩功能,使得同样的数据存储所需的资源更少。
leobhao
2024-04-01
1860
文件操作之 FileChannel 与 mmap
Java 中原生读写方式大概可以被分为三种:普通 IO,FileChannel(文件通道),mmap(内存映射)。
leobhao
2023-03-11
1.2K0
Linux零拷贝和Netty零拷贝
DMA 的全称叫直接存储器访问(Direct Memory Access),是一种允许外围设备(硬件子系统)直接访问系统主内存的机制。
leobhao
2023-03-11
2.4K0
Java线程池异常处理
ThreadPoolExecutor 的 execute 方法不用过多分析, 就是线程池的执行流程, 这里看看 submit:
leobhao
2023-03-11
3530
定时器算法
在日常开发中, 定时任务是一个比较关键的功能。 Java 中一般使用 JDK 中 Timer、ScheduledExecutorService 和调度框架 Quartz等。 通常用于实现延时任务, 周期性任务等, 一般会有两种需求:
leobhao
2023-03-11
5120
mysql优化概述
sync_binlog, binlog的刷新写入方式,这个参数不仅影响到binlog对MySQL所带来的性能损耗,而且还影响到MySQL中数据的完整性。参数设置说明如下:
leobhao
2023-03-11
5200
谈谈一个框架的扩展加载
在 SpringBoot 启动类上都会标注@SpringBootApplication这个注解,其中的最重要的组成是@EnableAutoConfiguration, 再进入会发现是 @Import (AutoConfigurationImportSelector.class)这个注解在起作用。
leobhao
2023-03-11
4090
ReentrantReadWriteLock读写锁
(1) tryAcquireShared 小于 0 代表没有获取到共享锁 (2) doAcquireShared 将当前节点进入阻塞队列中等待被唤醒,步骤2是挂起自己 (3) 被唤醒后就可以拿到共享锁了, 步骤三 (4) 然后 setHeadAndPropagate 唤醒其他线程
leobhao
2023-03-11
3380
mysql语句加锁分析
RU/RC 情况下加锁情况基本一致, 在加锁情况下脏读和不可重复读在任何一个隔离级别下都不会发生(因为读-写操作需要排队进行)
leobhao
2023-03-11
8530
首页 归档 分类 标签 作者 kafka原理总结
分区策略决定 producer 将消息怎么分发到 partition 中, 分区策略不合适可能导致数据倾斜, 有些时候我们需要实现顺序消息, 也需要将同一业务的消息都发送到同一个 partition 上。生产端将消息发送给 broker 之前主要经过拦截、序列化、分区(Partitioner)几个步骤。分区器主要读取 partition 配置(生产端配置partitioner.class, 默认值是 DefaultPartitioner)
leobhao
2023-03-08
4100
点击加载更多
社区活动
AI代码助手快速上手训练营
鹅厂大牛带你玩转AI智能结对编程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档