- 博客(67)
- 资源 (11)
- 收藏
- 关注

原创 RocketMQ CommitLog IndexLog ConsumerQueue 存储结构存储结构
RocketMQ CommitLog IndexLog ConsumerQueue 存储结构存储结构
2020-04-13 22:17:41
1341

原创 JDK8 多线程 JUC之CompletableFuture使用
package com.chezhibao.mockserver.mulitithread;import java.util.Random;import java.util.concurrent.CompletableFuture;import java.util.concurrent.CompletionStage;import java.util.concurrent.Executi...
2019-08-26 13:54:10
1050

原创 通过 jvisualvm dump文件 oql 查看springboot加载的数据库连接参数
首先贴出application.properties的内容如果想要查看这些参数在jvm加载的值是什么。可以通过 jvisualvm 的oql语句。首先要知道springboot通过是哪个类进行加载这些数据库连接池的参数的。如果忘记了类名,就到spring-boot-autoconfigure.jar的META-INF/spring.factoriesorg.springframework...
2018-12-26 16:29:02
2465

原创 springboot docker 阿里云docker仓库
将写了几周的项目push 到阿里云的docker仓库。 并且记录下来,方便以后查阅。 1.在pom文件中增加plugin <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <docker.image.prefix&g...
2018-06-28 16:44:09
1814

原创 thymeleaf常用标签 thymeleaf:字符串Strings常见的使用方法
判断是不是为空:null: <span th:if="${name} != null">不为空</span> <span th:if="${name1} == null">为空</span> 判断是不是为空字符串: “” <span th:if="${#strings.isEmpty(name1)}">
2018-06-04 11:51:19
24222
2

原创 springsecurity之springSecurityFilterChain
如果在web项目中增加springsecurity作为你的登录认证授权框架,那么第一步就需要在web.xml 增加如下配置 <filter> <filter-name>springSecurityFilterChain</filter-name> <filter-class>org.springframework.web.filt...
2018-06-03 23:55:43
6722
原创 领域驱动设计
领域驱动设计限界上下文划分领域边界,边界内领域模型保持一致,强调内聚,并与边界外的领域模型解耦。领域、子域上下文映射图多个系统之间会发生关系,存在交互,这也必然会在各自的Bounded Context上有所表现。上下文图(Context Map)便是表示各个系统之间关系的总体视图共享内核将两个团队共享的子集剥离出来形成共享内核双方进行持续集成客户/供应商不同系统之间存在...
2019-08-30 16:52:22
361
原创 maven docker push harbor
一.在m2 setting.xml的servers节点增加一个server节点<server> <!--maven的pom中可以根据这个id找到这个server节点的配置--> <id>docker-harbor</id> <username>your username</username...
2019-04-11 16:14:37
3773
转载 程序员应该如何写优雅代码,整洁代码,迭代优化 任重道远
如何让自己的代码更加优雅,如何让自己的代码越来越健壮,如何让自己跳出天天都在处理bug的怪圈。如何让自己过了2个月后看自己编辑的代码依然轻轻松松就知道它是干嘛的。一个开发了50年的老程序员Bob大叔告诉你就得这么干。内容整理自Robert C. Martin的《代码整洁之道》第一章 整洁代码1,整洁代码力求集中,每个函数、每个类和每个模块都全神贯注于一件事。2,整洁代码简...
2019-03-05 22:10:12
2774
1
转载 java--GC Root有哪些
GC管理的主要区域是Java堆,一般情况下只针对堆进行垃圾回收。方法区、栈和本地方法区不被GC所管理,因而选择这些区域内的对象作为GC roots,被GC roots引用的对象不被GC回收。详细: GC Root常说的GC(Garbage Collector) roots,特指的是垃圾收集器(Garbage Collector)的对象,GC会收集那些不是GC roots且没有被GC...
2019-02-23 14:42:16
1628
原创 记录一次老年代内存激增,导致full gc,系统停顿。第三方HTTP服务访问 Read Time out的排除记录
事情的经过是这样子: 中午12点正打算休息,其他组的开发人员反馈调用我们的系统异常问我们是不是中午升级了(还算留点情面)。我说没有啊,然后紧接着钉钉消息开始告警了。线下运营也开始打电话说系统特别卡,查询特别慢。也等不了定位问题了。先联系运维赶紧把服务逐一重启一下。重启完没到3分钟,又开始卡了。我开始慌了,脑子快速运转最近也没有重大上线啊。我赶紧打开elk日志,查下错误日志。果然有调...
2019-02-23 14:26:38
2065
原创 java元组工具类
关于方法的返回值,经常需要返回2个值或多个值的一个序列,比如数据表的一条记录,文件的一行内容等。除了使用数组Array、集合(List、Set、Map)这些容器类型之外,在Java中我们就必须创建一个Class来作为返回类型。但是javatuples是一个很简单的lib,它没有什么华丽的功能,就是提供了支持返回多个元素的一些类。当你纠结有没有必要创建一个少于7个属性的dto时候,就果断选择这个...
2019-01-29 15:41:25
1226
1
转载 两军问题和拜占庭将军问题的区块链解读(二)
转自:https://www.jianshu.com/p/29db1b94c677拜占庭将军问题是区块链技术中另一个经常被提到的模型。本篇将尽量用通俗的语言解释拜占庭将军问题的本质以及背后的经典算法,不当之处请指正。与两军问题一样,拜占庭将军问题也仅仅是提出了问题,并没有提出解决这个问题的方案。首先,我们需要了解什么是拜占庭将军问题:在中世纪,拜占庭帝国的几位将军各自带兵共同围困一...
2019-01-29 13:49:30
884
转载 两军问题和拜占庭将军问题的区块链解读(一)
转自:https://www.jianshu.com/p/c543794cd731说起区块链,有两个模型经常被提起,那就是两军问题和拜占庭将军问题。对于这两个模型,之前查看了一些资料,但个人理解得仍然不是很透。尽管如此,本篇尽量用通俗的语言解释一下这两个模型,不当之处请指正。首先要明确,这两个模型仅仅是用讲故事的方式提出了问题,但是并没有提出解决问题的方法。让我们先来了解一下这两个问题的具...
2019-01-29 13:48:23
1111
原创 neo4j 入门例子
下面的例子来自neo4j 自带samples,主要围绕【电影–演员–导演】展开的执行完的效果是CREATE (TheMatrix:Movie {title:'The Matrix', released:1999, tagline:'Welcome to the Real World'})//创建一个节点:TheMatrix&amp;amp;amp;amp;amp;amp;amp;amp;lt;黑客帝国&amp;amp;amp;amp;amp;amp;amp;amp;g
2019-01-23 22:42:27
3264
转载 gitbook 安装使用
概述GitBook 是使用 GitHub / Git 和 Markdown(或AsciiDoc)构建漂亮书籍的命令行工具(和Node.js库)。GitBook 可以将您的内容作为网站(可定制和可扩展)或电子书(PDF,ePub或Mobi)输出。GitBook.com 是使用 GitBook 格式创建和托管图书的在线平台。它提供托管,协作功能和易于使用的编辑器文章转载于 https:...
2018-10-22 22:47:53
332
原创 list与Set、Map区别 ArrayList与LinkedList的区别
1、List,Set都是继承自Collection接口,Map则不是2、List特点:元素有放入顺序,元素可重复 ,Set特点:元素无放入顺序,元素不可重复,重复元素会覆盖掉,(注意:元素虽然无放入顺序,但是元素在set中的位置是有该元素的HashCode决定的,其位置其实是固定的,加入Set 的Object必须定义equals()和hashcode方法 ,另外list支持for循环,也就是通过下...
2018-04-16 23:44:07
3362
转载 HashMap实现原理及源码分析
哈希表(hash table)也叫散列表,是一种非常重要的数据结构,应用场景及其丰富,许多缓存技术(比如memcached)的核心其实就是在内存中维护一张大的哈希表,而HashMap的实现原理也常常出现在各类的面试题中,重要性可见一斑。本文会对java集合框架中的对应实现HashMap的实现原理进行讲解,然后会对JDK7的HashMap源码进行分析。 1. 什么是哈希表在讨论哈希表之...
2018-04-16 23:09:25
248
原创 docker registry push pull
步骤1:搭建本地registry docker run -d p 192.168.1.111:5000:5000 -v ~/docker-regisry:/tmp/registry registry步骤2:TAG docker tag sshd1 192.168.1.111:5000/latest步骤3:push docker push 192.1...
2018-04-06 00:57:32
983
原创 阿里云 mysql数据库truncate所有表后 恢复过程
记录一次阿里云mysql数据库的所有表被truncate后数据库恢复的过程。谁遇到这种事情都会情不自禁的喊几声国骂。还好阿里云做了备份设置。每周二、周四、周六的全量备份。还有每6个小时的日志备份。步骤1:先下载一个故障点之前的全量备份,注意【恢复】按钮就不要点了。毕竟那个按钮操作完能得到什么结果我们是不可控的。步骤2:在本地安装一个mysql服务端步骤3:将下载下来的全量备份解压,拷贝yjwlxt...
2018-04-04 11:28:07
2469
转载 HTTP请求错误400、401、402、403、404、405、406、407、412、414、500、501、502解析
HTTP 错误 400 400 请求出错 由于语法格式有误,服务器无法理解此请求。不作修改,客户程序就无法重复此请求。 HTTP 错误 401 401.1 未授权:登录失败 此错误表明传输给服务器的证书与登录服务器所需的证书不匹配。 请与 Web 服务器的管理员联系,以确认您是否具有访问所请求资源的权限。 401.2 未授权:服务器的配置导致登录失败 此错误表明
2018-01-22 16:15:18
193
原创 线程停止
大多数停止一个线程的操作使用Thread.interrupt()方法,尽管方法的名称是“停止”的意思。但是这个方法不会终止一个正在运行的线程,还需要假如一个判断才可以完成线程的停止。利用异常可以停止线程package com.eroadsf.thread;public class MyThread extends Thread { @Override public void run()
2017-11-27 00:32:50
270
原创 HBaseAdminDemo 使用客户端api-demo
看到很多关于hbase client 代码都是过时,所以写了一个基于<dependency> <groupId>org.apache.hbase</groupId> <artifactId>hbase-shaded-client-project</artifactId> <version>1.3.1</version></de
2017-11-24 15:13:50
529
转载 java静态方法之线程安全问题
java静态方法之线程安全问题 静态方法和实例方法的区别是静态方法只能引用静态变量,静态方法通过类名来调用,实例方法通过对象实例来调用 每个线程都有自己的线程栈,栈与线程同时创建,每一个虚拟机线程都有自己的程序计数器PC,在任何时刻,一个虚拟机线程只会执行一个方法的代码,这个方法称为该线程的当前方法,如果这个方法不是native的,程序计数器就保存虚拟机正在执行的字节码指令的地址。 线程调用方
2017-11-19 19:54:39
2537
net.sf.jadclipse_3.3.0.jar jad.exe
2013-08-27
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人