自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Dongguabai 的博客

【欢迎关注公众号:冬瓜白】记录不知道的事,技术不分高低难易;掉不尽的底子玩不尽的味

  • 博客(13)
  • 资源 (2)
  • 论坛 (1)
  • 收藏
  • 关注

原创 本地调试 Eureka 源码

安装 gradle-2.10首先本地要安装 gradle-2.10。下载地址:https://gradle.org/releases/配置环境变量:#Gradle 配置GRADLE_HOME=/Users/dongguabai/develope/gradle/gradle-2.10export GRADLE_HOMEexport PATH=$PATH:$GRADLE_HOME/bin下载源码并导入 IDEA首先将相关源码 clone 下来:➜ gitee git clo

2021-04-28 17:18:42 15

原创 IDEA 错误: 找不到或无法加载主类 解决方法

最近不知道怎么回事经常出现这个问题。这里记录一下解决方案。首先可以观察一下 target/classes 下是否正常编译出了主类的 class,找到了还有这个异常,可以尝试清除 IDEA缓存:项目重新

2021-04-25 02:15:45 32

原创 深入理解 ZK 中的 “大多数” 机制

在 ZK 中我们最常提到的就是“大多数”,一搜一大堆:那么这个“大多数”到底是什么意思呢?理科生本不该纠结文字游戏,但是这个“大多数”是本文要探讨的关键。先抛出几个问题,让大伙知道我在纠结啥。问题以一篇博客中的描述为例:广播模式:leader写入数据时会发起提议,当大多数follower都同意之后,leader就会更新数据并广播给其他follower。https://www.cnblogs.com/wlwl/p/10715065.html我对这段描述的理解是,写数据需要大多数 Follo

2021-04-24 16:02:50 17

原创 开启 Zookeeper 四字命令(is not executed because it is not in the whitelist)

有时候我们需要使用四字命令查看 ZK 的一些信息,如果没有配置开启,救会出现这样的异常:➜ bin echo mntr | nc localhost 2181mntr is not executed because it is not in the whitelist.➜ bin telnet localhost 2181Trying ::1...Connected to localhost.Escape character is '^]'.echo mntr | nc localh

2021-04-24 11:18:12 14

原创 本地调试 ZooKeeper 源码

首先将源码 clone 下来:➜ gitee git clone https://github.com/apache/zookeeper.git导入到 IDEA 中:单机模式拷贝配置文件可以将 conf/zoo_sample.cfg 复制到自定义目录。这里直接拷贝到当前conf目录下,并命名为 zoo1.cfg:tickTime=2000initLimit=10syncLimit=5dataDir=/Users/dongguabai/Desktop/temp/zoo

2021-04-23 22:50:15 17

原创 关于 Filter 路径的问题(Filter不生效)

有时候一些路径的规则会遗忘,这里记录一下。比如项目配置的 context-path 是:server.servlet.context-path=/workbench在 Filter 中配置:那么这个 Filter 实际上是拦截的 /workbench/logout,这是要注意的点。当然通过request.getRequestURI() 获取的参数是/workbench/logout。...

2021-04-23 10:44:14 24

转载 java server 参数_java serversocket参数详解

ServerSocket有以下3个选项。SO_TIMEOUT:表示等待客户连接的超时时间。SO_REUSEADDR:表示是否允许重用服务器所绑定的地址。SO_RCVBUF:表示接收数据的缓冲区的大小。SO_TIMEOUT : 表示接收数据时的等待超时时间 。 单位为毫秒,默认值为0 , 表示永远等待。设置该选项:public void setSoTimeOut(int timeout) throws SocketException读取该选项:public int getSoTime.

2021-04-13 17:07:39 14

原创 一种可能不太常见的 MyBatis 引发的 SQL 执行成功却返回失败的场景(可能引发事务失效)

今天突然想到了一个特例,在此记录一下。就是可能出现 SQL 执行成功,但是 MyBatis 函数返回失败的场景,即SQL执行的结果与函数返回的结果不一致,如果在一个事务中,从而导致其他操作回滚的情况。其实过程很容易理解。比如这个例子:这个 SQL 执行是没问题的,但是程序肯定会抛出异常:从数据库中查询,可以发现数据的确是被删除了。但是程序确抛出了异常,这样就会导致其他同一个事务中的操作被回滚。...

2021-04-12 11:28:00 19

原创 关于 JDK 1.7 HashMap 并发情况下可能发生的死循环与数据丢失

这是一个老生常谈的内容了,最近复习发现博客中居然没有记录这块,今天特地记录下。HashMap 本身是线程不安全的,如果线程并行插入元素,可能会同时触发扩容。这里会新建一个更大的数组,并调用 transfer 方法对元素进行转移,转移的逻辑也很很好理解,就是遍历原来 table 中每个位置的节点,并对每个元素进行重新 hash,在新的 newTable 找到位置,并插入。transfer 方法如下: /** * Transfers all entries from current t.

2021-04-11 21:31:38 28

转载 java settcpnodelay_TCP连接中启用和禁用TCP_NODELAY有什么影响?

参考tcp(7): TCP protocolTCP_NODELAYIf set, disable the Nagle algorithm. This means that segments are always sent as soon as possible, even if there is only a small amount of data. When not set, data is buffered until there is a sufficient amount to send

2021-04-11 17:36:31 21

转载 Linux strace 命令

简介strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通 过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。输出参数含义root@ubuntu:/usr# strace cat /dev/null execve("/bin/cat", ["cat", "/dev/null"], [/* 2

2021-04-09 13:07:46 8

原创 wait/notify 一个细节

notify的确是可以唤醒,但是要注意的是唤醒后还是要抢锁才能进行坐后面的事情,例子如下:package linkedlist.questions;import java.io.IOException;import java.util.Date;import java.util.concurrent.TimeUnit;/** * @author Dongguabai * @description * @date 2021-04-08 17:00 */public class Te

2021-04-08 17:14:48 9

转载 ZooKeeper 为什么不提供一个永久性的Watcher注册机制

不支持用持久Watcher的原因很简单,如果Watcher的注册是持久的,那么必然导致服务端的每次数据更新都会通知到客户端——这在数据变更非常频繁的场景下,ZooKeeper无法保证性能。那么你或许还会问,“服务端的每次数据更新都会通知到客户端”,这不正式用户希望达到的效果么?没错!在平时的答疑过程中,很多同学也会问相同的问题。但我们仔细考虑这个问题,就可以发现,很多时候,我们需要的是最新数据,而不是每次变更!仔细想想看。: )...

2021-04-08 09:41:25 9

IDEA查看Java运行代码的汇编指令工具

IDEA查看Java运行代码的汇编指令工具,将文件导入jre/bin中后,在IDEA中进行相关配置,即可查看汇编指令,具体方法可参看:https://blog.csdn.net/Dongguabai/article/details/82818120

2018-09-22

skywalking 6.5、6.6、6.6 es7 版本 tar 包

skywalking 6.5、6.6、6.6 es7 版本下载包,官方下载太慢。要注意如果连接 ES 7 记得下载 es7 版本

2021-02-04

Dongguabai的留言板

发表于 2020-01-02 最后回复 2020-03-02

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人 TA的粉丝

提示
确定要删除当前文章?
取消 删除