<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[九曜]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/qq_44961149</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; qq_44961149]]></copyright><item><title><![CDATA[MQ消息队列中间件基础与RocketMQ]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/108534120</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/108534120</guid><author>qq_44961149</author><pubDate>Fri, 04 Jul 2025 14:47:17 +0800</pubDate><description><![CDATA[MQ全称为Message Queue，消息队列是应用程序和应用程序之间的通信方法。
消息队列是一种“先进先出”的数据结构。
消息中间件
场景：异步、削峰、解耦
异步：
任务异步处理：将不需要同步处理的并且耗时长的操作由消息队列通知消息接收方进行异步处理。提高了应用程序的响应时间。

解耦
应用程序解耦合：MQ相当于一个中介，生产方通过MQ与消费方交互，它将应用程序进行解耦合

削峰填谷
如订单系统，在下单的时候就会往数据库写数据。但是数据库只能支撑每秒1000左右的并发写入，并发量再高就容易宕机。低峰期的时]]></description><category></category></item><item><title><![CDATA[网络协议（TCP/IP、HTTP、HTTPS）]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/108670918</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/108670918</guid><author>qq_44961149</author><pubDate>Fri, 04 Jul 2025 14:47:13 +0800</pubDate><description><![CDATA[网络
TCP报头
TCP和UDP的⽐较
TCP向上层提供⾯向连接的可靠服务 ，UDP向上层提供⽆连接不可靠服务。 虽然 UDP 并没有 TCP 传
输来的准确，但是也能在很多实时性要求⾼的地⽅有所作为 对数据准确性要求⾼，速度可以相对较慢
的，可以选⽤TCP
面向连接和非面向连接的服务的特点是什么？
面向连接的服务，通信双方在进行通信之前，要先在双方建立起一个完整的可以彼此沟通的通道，在通信过程中，整个连接的情况一直可以被实时地监控和管理。
非面向连接的服务，不需要预先建立一个联络两个通信节点的连接，需要通]]></description><category></category></item><item><title><![CDATA[动态调整线程池核心参数]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/132448818</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/132448818</guid><author>qq_44961149</author><pubDate>Wed, 23 Aug 2023 11:32:10 +0800</pubDate><description><![CDATA[采用的是apollo配置，监听apollo配置是否修改，如果有变动，则调用线程池的修改参数方法。]]></description><category></category></item><item><title><![CDATA[jdbc集成phoneix hbase]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/132448389</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/132448389</guid><author>qq_44961149</author><pubDate>Wed, 23 Aug 2023 11:19:17 +0800</pubDate><description><![CDATA[【代码】jdbc集成phoneix hbase。]]></description><category></category></item><item><title><![CDATA[缓存的变更（JVM本地缓存-＞Redis分布式缓存）]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/132447694</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/132447694</guid><author>qq_44961149</author><pubDate>Wed, 23 Aug 2023 10:56:42 +0800</pubDate><description><![CDATA[在一次需求修改中，下游的服务附加提出了，针对某个业务数据缓存的生效时间的要求。]]></description><category></category></item><item><title><![CDATA[langchain ChatGPT AI私有知识库]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/132446350</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/132446350</guid><author>qq_44961149</author><pubDate>Wed, 23 Aug 2023 10:11:06 +0800</pubDate><description><![CDATA[原理就是把文档变为向量数据库，然后搜索向量数据库，把相似的数据和问题作为prompt，
输入到大模型，再利用GPT强大的自然语言处理、推理和分析等方面的能力将答案返回给用户]]></description><category></category></item><item><title><![CDATA[【fastjson和Jackson的时间日期的反序列化的差异】]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/131793023</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/131793023</guid><author>qq_44961149</author><pubDate>Tue, 18 Jul 2023 17:49:21 +0800</pubDate><description><![CDATA[注解，您可以使用它来指定日期字段的格式。所以，fastjson需要指定日期格式是因为它的默认解析行为是基于Java的默认日期格式，而Jackson具有更灵活的日期解析机制，可以自动识别日期格式，但也可以通过注解进行更精确的控制。因为fastjson有默认的时间格式，在序列化时遇到不常见的时间格式，如纳秒级的2023-07-04T10:00:00.0000000不能正常解析，如果需要解析，需要采用@JsonFormat指定格式。如果日期字符串的格式与默认格式不匹配，fastjson将无法正确解析日期。]]></description><category></category></item><item><title><![CDATA[【Docker】离线安装、普通用户执行docker命令、镜像归档打tar包，及加载tar包镜像]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/125280224</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/125280224</guid><author>qq_44961149</author><pubDate>Tue, 14 Jun 2022 16:13:23 +0800</pubDate><description><![CDATA[离线安装、普通用户执行docker命令、镜像归档打tar包，及加载tar包镜像]]></description><category></category></item><item><title><![CDATA[HTTP工具类CloseableHttpClient]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/120025585</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/120025585</guid><author>qq_44961149</author><pubDate>Wed, 03 Nov 2021 10:59:58 +0800</pubDate><description><![CDATA[import org.apache.http.*;
import org.apache.http.client.HttpRequestRetryHandler;
import org.apache.http.client.config.RequestConfig;
import org.apache.http.client.entity.UrlEncodedFormEntity;
import org.apache.http.client.methods.CloseableHttpResponse;
imp]]></description><category></category></item><item><title><![CDATA[nginx负载均衡docker部署]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/121116506</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/121116506</guid><author>qq_44961149</author><pubDate>Wed, 03 Nov 2021 10:52:52 +0800</pubDate><description><![CDATA[一、nginx负载均衡docker部署
3.1 创建文件夹
在home用户目录下 创建redis的相关文件夹
mkdir -p /home/jun/docker/nginx
cd /home/jun/docker/nginx
创建三个目录
mkdir shell  #构建、启动、停止等脚本
mkdir dockerfile  #dockerfile目录
mkdir volumes  #挂载配置、日志、数据文件

3.2 准备dockerfile文件
cd /home/hd/docker/nginx/dock]]></description><category></category></item><item><title><![CDATA[rabbitmq主从docker部署]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/121116406</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/121116406</guid><author>qq_44961149</author><pubDate>Wed, 03 Nov 2021 10:48:35 +0800</pubDate><description><![CDATA[rabbitmq主从docker部署

Dockerfile
FROM centos:7.7.1908
COPY erlang-20.3.6-1.el7.centos.x86_64.rpm /home
COPY rabbitmq-release-signing-key.asc /home
COPY rabbitmq-server-3.7.5-1.el7.noarch.rpm /home
 
# 创建者 
MAINTAINER HuiDian &lt;www.smartdot.com.cn&gt;
# 设置系]]></description><category></category></item><item><title><![CDATA[redis-docker-单机主从哨兵部署]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/121115677</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/121115677</guid><author>qq_44961149</author><pubDate>Wed, 03 Nov 2021 10:43:24 +0800</pubDate><description><![CDATA[redis-docker-单机主从哨兵部署
一、redis单机
调整系统参数
sudo vi /etc/rc.local

加入
echo never &gt; /sys/kernel/mm/transparent_hugepage/enabled 

sudo vi /etc/sysctl.conf

加入
vm.overcommit_memory = 1

在用户目录下 创建redis的相关文件夹
mkdir -p /home/jun/docker/redis
cd /home/jun/docker/r]]></description><category></category></item><item><title><![CDATA[ELK主从集群部署（生产只有两套。。。）]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/120162510</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/120162510</guid><author>qq_44961149</author><pubDate>Tue, 07 Sep 2021 17:39:18 +0800</pubDate><description><![CDATA[概述




机器IP
节点名称
服务




114
node-1
数据、主节点（安装elasticsearch、logstash、kabana）


115
node-2
数据节点（安装elasticsearch)



如果logstash无法收集所有的ES服务日志，哪node-2也需要配置logstash
logstash收集所有的日志方法还是挺多的，如消息队列等等

主要思路：ElastiSearch天生就是分布式的 ，它知道如何通过管理多节点来提高扩容性和可用性。 这也意味着你的应用无需关注这个]]></description><category></category></item><item><title><![CDATA[第三方单点登录接入接口方案（参与）]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/120024854</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/120024854</guid><author>qq_44961149</author><pubDate>Tue, 31 Aug 2021 19:33:35 +0800</pubDate><description><![CDATA[我的指导人的文章：https://blog.youkuaiyun.com/zhou920786312/article/details/119546135
————————————————
第三方单点登录接入接口方案
说明
一、问题
目前我们有一套自己的oa系统，oa系统有个门户页面，我们需要在这个门户上单点集成其他系统。每个其他系统都有自己的单点登陆方式，比如其他系统1使用token集成单点，其他系统2使用session集成单点。
思考
如果我们对每一个其他系统都做适配的话，以后接入进来的系统，我们都需要开发，这样不仅]]></description><category></category></item><item><title><![CDATA[二维码设计与校验有效性]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/120024690</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/120024690</guid><author>qq_44961149</author><pubDate>Tue, 31 Aug 2021 19:17:38 +0800</pubDate><description><![CDATA[二维码

移动端扫码求职登记，做有效性校验

1.客户需要在PC端自定义设置二维码的过期时间，生成二维码，打印二维码和控制二维码的过期时间
2.用户移动端扫码进行有效时间验证
3.由于需要控制二维码是否过期，可能提前过期等，过期时间需要存储在数据库表中，方便校验
综上所述：我们只需要一个生成组装二维码的值的方法 一个校验时间的方法即可
生成二维码编码

客户设置相关过期时间等参数信息传给后端生成code，并且存储进数据库表（编码，二维码名，过期时间，扩展：字段链接，是否提前过期）
后端生成二维码方法：构建二]]></description><category></category></item><item><title><![CDATA[consul基础理论知识]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/115861338</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/115861338</guid><author>qq_44961149</author><pubDate>Mon, 19 Apr 2021 14:18:20 +0800</pubDate><description><![CDATA[Consul是HashiCorp公司推出的开源软件，通过 GO 语言编写，提供服务注册和发现、配置、多数据中心的高可用方案等能力，分布式一致方面采用 raft 算法 实现，并且很容易和 Spring Cloud 等微服务框架集成，使用起来非常的简单，具有简单、易用、可插排等特点。简而言之，Consul 提供了一种完整的服务网格解决方案
Consul功能
●服务发现：Consul的客户端可以向Consul注册服务，例如api服务或者mysql服务，其他客户端可以使用Consul来发现服务的提供者。Consul]]></description><category></category></item><item><title><![CDATA[MySQL升级8.0与主从复制]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/115485523</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/115485523</guid><author>qq_44961149</author><pubDate>Wed, 07 Apr 2021 16:14:46 +0800</pubDate><description><![CDATA[升级8.0

备份数据库配置文件


cd /etc
cp my.cnf my.cnf.back


停止连接数据库的应用，进行数据库备份（若有数据需要备份）

2.1、备份数据库（3选择1，不用）

创建目录  mkdir  /home/hd/package/mysqlback
备份数据库  备份实例上所有的数据库
mysqldump -u root -p --all-databases &gt; /home/user/package/mysqlback/all_db.sql

2.2、备份整个数据目录（]]></description><category></category></item><item><title><![CDATA[raft协议笔记-一致性协议]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/115400439</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/115400439</guid><author>qq_44961149</author><pubDate>Fri, 02 Apr 2021 17:28:24 +0800</pubDate><description><![CDATA[Raft协议是一种一致性算法，用于在分布式系统中保持整个系统的一致性。

是分布式系统开发首选的共识算法
Raft算法是经过一切以领导者为准的方式，实现一系列值的共识和各节点日志的一致。
用于管理日志一致性的协议。
将分布式一致性分解为多个子问题：

Leader选举(Leader election)
日志复制(Log replication)
安全性(Safety)
日志压缩(Log compaction)



在了解 Raft 之前需要了解一下什么状态机:
论文指出，Raft 是一种用来管理日志复制的]]></description><category></category></item><item><title><![CDATA[Gossip协议笔记--谣言、流行病协议]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/115398350</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/115398350</guid><author>qq_44961149</author><pubDate>Fri, 02 Apr 2021 15:30:31 +0800</pubDate><description><![CDATA[gossip是一个去中心化思路的分布式通信协议,主要用在分布式数据库系统中各个副本节点同步数据之用，这种场景的一个最大特点就是组成的网络的节点都是对等节点，是非结构化网络，这区别于结构化网络。
Gossip Protocol原本用于分布式数据库中节点同步数据使用，后来被广泛用于数据库复制、信息扩散、集群成员身份确认、故障探测等，应用实例有Redis集群、springcloud consul等。
问题
● 如何在多个不可靠、变化缓慢的网络中将多个节点实现并保持数据一致性的方法
目标
● 设计一种高效且强大的算]]></description><category></category></item><item><title><![CDATA[spring使用策略模式，实现多种场景登录方式（策略模式）]]></title><link>https://blog.youkuaiyun.com/qq_44961149/article/details/112360220</link><guid>https://blog.youkuaiyun.com/qq_44961149/article/details/112360220</guid><author>qq_44961149</author><pubDate>Fri, 08 Jan 2021 14:21:13 +0800</pubDate><description><![CDATA[spring使用策略模式，实现多种场景登录方式
@Autowired注解可以帮我们自动注入我们想要的 Bean。
如果只是简单使用@Autowired会遇到spring IOC容器中一个接口有多个实现的情况，spring无法识别具体的实现类，如果不是策略模式，我们可以进行具体的指定@Qualifier和@primary来避免bean冲突的情况。但在策略模式中是不行的。
而除了这个基本功能之外， @Autowired 还有更加强大的功能，还可以注入指定类型的数组，List/Set 集合，甚至还可以是 Map ]]></description><category></category></item></channel></rss>