06 2021 档案

Rocketmq 总结 (一) -- NameServer
摘要:一 概述 NameServer的主要作用是, 1 路由功能。生产者查询NameServer,根据Topic选择它要发送的MessageQueue。 2 通过和每个broker发送心跳,更新注册信息,剔除失效broker 二 主要成员变量 public class RouteInfoManager { 阅读全文

posted @ 2021-06-26 14:57 MaXianZhe 阅读(217) 评论(0) 推荐(0)

Redis之集群知识点总结(二)-- 源码分析
摘要:一 集群的数据结构 ClusterNode clusterNode 结构保存了一个节点的当前状态,比如节点的创建时间、节点的名字、节点 当前的配置纪元、节点的IP地址和端口号等等。除此之外,clusterNode结构的 link 属性是一个clusterLink结构,该结构保存了连接节点所需的有关信 阅读全文

posted @ 2021-06-24 16:49 MaXianZhe 阅读(120) 评论(0) 推荐(0)

Zk选举源码分析
摘要:首先说明下 zk的源码版本是3.5.5 代码入口在 QuorumPeerMain.main 如果要以分布式方式启动,走的方法是 QuorumPeerMain#runFromConfig quorumPeer = getQuorumPeer();//new 一个QuorumPeer,可以把Quorum 阅读全文

posted @ 2021-06-17 21:01 MaXianZhe 阅读(267) 评论(0) 推荐(0)

Mysql之datetime和timestamp的区别
摘要:1 最大的区别就是 datetime存的是什么查询时就是什么,而timestamp会根据时区进行转换 2 这两个字段都查询时都可以使用between 。。。 and 。。。 3 所以ymm的项目中用的都是datetime 阅读全文

posted @ 2021-06-17 09:56 MaXianZhe 阅读(170) 评论(0) 推荐(0)

Zk是怎么解析zoo.cfg配置文件的
摘要:如果要让zk以集群模式启动,就必须在zoo.cfg中这样配置 dataDir=/data/zookeeper dataLogDir=/data/zookeeper/version-2 # the port at which the clients will connect clientPort=21 阅读全文

posted @ 2021-06-15 20:10 MaXianZhe 阅读(373) 评论(0) 推荐(0)

ES_显式写mapping
摘要:PUT nba { "settings":{ "number_of_shards": 1, "number_of_replicas": 0 }, "mappings":{ "properties":{ "name_cn":{ "type":"text" }, "name_en":{ "type":" 阅读全文

posted @ 2021-06-10 17:15 MaXianZhe 阅读(43) 评论(0) 推荐(0)

Pigeon源码分析(六) -- 服务下线流程
摘要:当服务提供端下线时,先看正常的流程。一般来说都是通过kill -15 结束jvm进程,此时会执行钩子函数 public final class ProviderBootStrap { private static Logger logger = LoggerLoader.getLogger(Serv 阅读全文

posted @ 2021-06-08 15:40 MaXianZhe 阅读(127) 评论(0) 推荐(0)

Pigeon源码分析(五) -- 服务端netty部分
摘要:服务端netty的channelHandler有这么多 public class NettyServerPipelineFactory implements ChannelPipelineFactory { private NettyServer server; private static Cod 阅读全文

posted @ 2021-06-07 17:20 MaXianZhe 阅读(94) 评论(0) 推荐(0)

Pigeon源码分析(四) -- 服务端接收请求过程
摘要:客户端发送tcp请求给服务端,最终所有服务端的逻辑都存在于服务端的netty中,进一步说就是channelHandler中 public class NettyServerPipelineFactory implements ChannelPipelineFactory { private Nett 阅读全文

posted @ 2021-06-03 19:27 MaXianZhe 阅读(162) 评论(0) 推荐(0)

Pigeon源码分析(三) -- 客户端发送tcp底层源码分析
摘要:经过之前的分析,我们知道,一个请求显示经过层层的责任链,最后才会发出去。而决定发送到消息格式是在责任链中的一环完成的 InvokerProcessHandlerFactory # init() public static void init() { if (!isInitialized) { if 阅读全文

posted @ 2021-06-02 20:00 MaXianZhe 阅读(107) 评论(0) 推荐(0)

Hbase客户端示例
摘要:public interface HBaseOperations { <T> T get(String tableName, String rowKey, String familyName, ResultMapper<T, Result> mapper); <T> T get(String tab 阅读全文

posted @ 2021-06-01 17:36 MaXianZhe 阅读(191) 评论(0) 推荐(0)

Pigeon源码分析(二) -- 客户端调用源码分析
摘要:先看客户端调用的例子 public static void main(String[] args) throws Exception { InvokerConfig<EchoService> invokerConfig = new InvokerConfig<>(EchoService.class) 阅读全文

posted @ 2021-06-01 16:54 MaXianZhe 阅读(103) 评论(0) 推荐(0)

导航