Zookeeper—整理记录
ZooKeeper 概览 ZooKeeper 是一个开源的分布式协调服务,它的设计目标是将那些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原语集,并以一系列简单易用的接口提供给用户使用…
PostgreSQL—Explain查询计划
http://postgres.cn/docs/15/using-explain.html 在使用数据库时,经常会有这样的疑问:“我的表对应字段已经创建了索引,为什么这个SQL 语句执行还是这么慢?”…
PostgreSQL—自定义函数
PostgreSQL函数也称为PostgreSQL存储过程。 PostgreSQL函数或存储过程是存储在数据库服务器上并可以使用SQL界面调用的一组SQL和过程语句(声明,分配,循环,控制流程等)。 …
PostgreSQL—逻辑复制
测试采用 postgres:17beta2 版本的docker images 逻辑复制与流复制的区别 PostgreSQL 支持两种主要的复制模式:物理复制(也称为流复制)和逻辑复制。这两种复制模式有…
Java—绑定线程到指定CPU上(线程问题思考)
Java线程 在聊如何绑定之前,先铺垫一个相关的背景知识:Java线程的实现。 都知道 Thread 类的大部分方法都是 native 方法: 在 Java 中一个方法被声明为 native 方法,绝…
Minio—快速整理
MinIO 介绍 Minio 是个基于 Golang 编写的开源对象存储套件,虽然轻量,却拥有着不错的性能。 官方网站 https://min.io/product/enterpriseovervie…
LangChain+RAG—构建知识库(二)
后续的测试都是 LangChain + ollama + chroma 来进行RAG构建 Ollama安装 ollama 可以在本地快速启动并运行大型语言模型,支持很多种大模型,具体的可以在上面查看:…
LangChain+RAG—构建知识库(一)
大语言模型简介 模型简介 语言模型犹如一艘艘探索船,它们通过预测单词序列的概率,解码语言的奥秘。这些由人工神经网络构成的模型,经过海量文本数据的洗礼,不仅理解语言的本质,更能预测序列中的下一个单词。当…
PostgreSQL—监控
PostgreSQL的监控方案很多,功能强悍的包括zabbix、prometheus等,再搭配上grafana和echarts等可视化工具,逼格杠杠。还有针对PostgreSQL特定的监控如pg_to…
PostgreSQL—如何查找TOP SQL
数据版本为:postgres14 (不同版本之间的配置会有所变化) pg_stat_statements模块提供了一种跟踪服务器执行的所有 SQL 语句的计划和执行统计信息的方法。 该模块必须通过在p…
Kafka—整理记录
Kafka是最初由Linkedin公司开发,是一个分布式、支持分区的(partition)、多副本的(replica),基于zookeeper协调的分布式消息系统,它的最大的特性就是可以实时的处理大量…
Redis—Redisson客户端
Redis 是用单线程来处理多个客户端的访问,因此作为 Redis 的开发和运维人员需要了解 Redis 服务端和客户端的通信协议,以及主流编程语言的 Redis 客户端使用方法,同时还需要了解客户端…
Java—P6Spy数据库SQL记录
P6Spy是一个框架,它可以无缝地拦截和记录数据库活动,而无需更改现有应用程序的代码。一般我们使用的比较多的是使用p6spy打印我们最后执行的sql语句。常用的数据框架也会自带打印sql的功能,比如j…
Spring—WebFlux请求处理流程
在了解SpringMvc的请求流程源码之后,理解WebFlux就容易的多,毕竟WebFlux处理流程是模仿Servlet另起炉灶的。 MVC的具体参考以前的文章 http://www.enmalvi.…
一致性协议
常见的一致性协议 有二阶段提交(2PC)、三阶段提交(3PC)、Paxos、Raft等算法。 这是很多分布式集群相互通信的基础。 2PC 2PC即Two-Phase Commit,二阶段提交。广泛应用…
Java—动态线程池
Tomcat/Jetty 是目前比较流行的 Web 容器,两者接受请求之后都会转交给线程池处理,这样可以有效提高处理的能力与并发度。JDK 提高完整线程池实现,但是 Tomcat/Jetty 都没有直…