笔记
正在积累的二狗子
这个作者很懒,什么都没留下…
展开
-
2021-06-03
源码导入goland 最近开始学习go语言,想着导入一个开源项目研究一下,边查询资料边搭建环境 Windows环境变量配置 在E:\learn\go\git_local\go_workspace_1目录下创建src,pkg,bin三个文件夹 设置系统变量GOPATH=E:\learn\go\git_local\go_workspace_1 设置系统变量GOPROXY=https://goproxy.cn 导入源码到goland中 在建好的src下执行git clone github项目 goland中原创 2021-06-03 09:24:48 · 126 阅读 · 0 评论 -
Redis变慢问题原因总结
Redis问题排查学习笔记 生产上使用Redis经常发生变慢,最近在学习Redis总结下可能产生变慢的原因 Redis变慢的可能原因 全量查询 操作bigkey,排序,并集,交集等操作 大量key集中过期 内存超过maxmemory Redis数据量过大,RDB文件与AOF重写都会造成fork进程耗时严重 AOF写日志策略为always,导致每次写盘才返回 Redis实例机器内存不足,操作系统发生swap,需要从磁盘读取数据性能肯定受到影响 进程CPU绑定不合理:网络中断程序与Redis实例绑定在不同的原创 2020-11-17 21:48:02 · 468 阅读 · 0 评论 -
JDK1.7多线程死循环问题分析笔记
最近看了jdk1.7的HashMap代码发现一段可能引发的死循环逻辑,在多线程扩容阶段,特此记录一下 /** * Transfers all entries from current table to newTable. */ void transfer(Entry[] newTable, boolean rehash) { int newCapacity = newTable.length; // 遍历旧数组得到每一个key再根据新数组的长度重新计算下原创 2020-11-08 14:59:40 · 238 阅读 · 0 评论 -
单机zookeeper处理过程
接上文单机Zookeeper服务端启动过程 这篇文章主要是讲解单机版zk接收到命令后服务端的处理流程 1.上文提到启动过程会调用startup方法org.apache.zookeeper.server.NIOServerCnxnFactory#startup public synchronized void startup() { //session跟踪器 if (sessionTracker == null) { createSessionTracker();原创 2020-10-05 10:26:29 · 149 阅读 · 0 评论 -
单机Zookeeper服务端启动过程
单机zookeeper服务端启动过程 准备 去Github把zookeeper源码down下来,我当时下载的是3.6.1版本的zk源码,单机版zk启动流程还算简单,下面讲解下此过程。 1.查看启动脚本zkServer.cmd @echo off REM Licensed to the Apache Software Foundation (ASF) under one or more REM contributor license agreements. See the NOTICE file distr原创 2020-10-03 16:23:06 · 297 阅读 · 0 评论