自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

sdaujsj1的博客

君子性非异也 善假于物也

  • 博客(31)
  • 收藏
  • 关注

原创 深入分析 Watcher 机制的实现原理(三)客户端接收服务端处理完成的响应及事件触发

客户端接收服务端处理完成的响应ClientCnxnSocketNetty.messageReceived服 务 端 处 理 完 成 以 后 , 会 通 过NettyServerCnxn.sendResponse 发送返回的响应信息,客户端会在 ClientCnxnSocketNetty.messageReceived 接收服务端的返回@Override protected void channelRead0(ChannelHandlerContext ctx, ByteBuf buf

2020-05-31 21:20:42 676

原创 深入分析 Watcher 机制的实现原理(二)服务端接收请求处理流程

服务端接收请求处理流程服务端有一个 NettyServerCnxn 类,用来处理客户端发送过来的请求private void receiveMessage(ByteBuf message) { checkIsInEventLoop("receiveMessage"); try { while (message.isReadable() && !throttled.get()) { // //Byte

2020-05-31 18:30:18 477

原创 深入分析 Watcher 机制的实现原理(一)客户端注册watcher

深入分析 Watcher 机制的实现原理ZooKeeper 的 Watcher 机制,总的来说可以分为三个过程:客户端注册 Watcher、服务器处理 Watcher客户端回调 Watcher客户端注册 watcher 有 3 种方式,getData、exists、getChildren;以如下代码为例来分析整个触发机制的原理客户端注册 Watcher在创建一个 ZooKeeper 客户端对象实例时,我们通过new Watcher()向构造方法中传入一个默认的 Watcher

2020-05-31 15:45:18 638

原创 zookeeper javaApi 事件监听

1. 数据存储事务日志快照日志运行时日志 bin/zookeeper.out2 基于 Java API 初探 zookeeper 的使用2.1 zookeeper 增删改查import org.apache.zookeeper.*;import org.apache.zookeeper.data.Stat;import java.io.IOException;import java.util.concurrent.CountDownLatch;/** * @author: xiep

2020-05-31 13:45:22 672

转载 docker-compose 安装

https://blog.csdn.net/pushiqiang/article/details/78682323

2020-05-30 21:32:05 110

转载 docker 搭建zookeeper集群

https://www.cnblogs.com/kingkoo/p/8732448.html

2020-05-30 20:19:28 103

原创 【工具类】MD5Utils

MD5Utilsimport org.apache.commons.codec.binary.Base64;import java.security.MessageDigest;public class MD5Utils { /** * @Description: 对字符串进行md5加密 */ public static String getMD5Str(String strValue) throws Exception { MessageDigest md5 = Messa

2020-05-29 15:37:45 758

原创 html5 api文档

html5 api文档http://www.html5plus.org/doc/h5p.html

2020-05-28 18:18:40 321

原创 【工具类】多文件压缩下载ZipUtil

ZipUtilimport java.io.*;import java.net.URLEncoder;import javax.servlet.http.HttpServletResponse;import org.apache.tools.zip.ZipEntry;import org.apache.tools.zip.ZipOutputStream;import org.slf4j.Logger;import org.slf4j.LoggerFactory;//import jav

2020-05-28 16:23:45 730

原创 技术书籍

推荐书籍:Java基础:《JAVA核心技术》(建议重头翻)《Effective JAVA》《JAVA编程思想》JAVA并发编程:《JAVA并发编程实战》(必读)《JAVA并发编程的艺术》《JAVA并发编程之美》(侧重源码)JAVA虚拟机:《深入理解java虚拟机》(必读)(面试题出处)MySQL:《sql必知必会》(基础)《高性能MYSQL》(必读)《MYSQL技术内幕:InnoDB存储引擎》(原理)Redis:《Redis深度历险:核心原理与应用实战》《Red

2020-05-27 23:19:05 133

原创 【工具类】jwt 从request头信息中获取jwt信息

XcOauth2Util 类package com.xuecheng.framework.utils;import lombok.Data;import org.apache.commons.lang3.StringUtils;import javax.servlet.http.HttpServletRequest;import java.util.Map;/** * Created by mrt on 2018/5/25. */public class XcOauth2Util {

2020-05-26 12:31:08 1532

原创 学成在线-第16天-讲义- Spring Security Oauth2 JWT RSA加解密

学成在线-第16天-讲义- Spring Security Oauth2 JWT1 用户认证需求分析1.1 用户认证与授权​ 截至目前,项目已经完成了在线学习功能,用户通过在线学习页面点播视频进行学习。如何去记录学生的学习过程呢?要想掌握学生的学习情况就需要知道用户的身份信息,记录哪个用户在什么时间学习什么课程;如果用户要购买课程也需要知道用户的身份信息。所以,去管理学生的学习过程最基本的要实现用户的身份认证。什么是用户身份认证?​ 用户身份认证即用户去访问系统资源时系统要求验证用户的身份信息,身

2020-05-25 21:03:40 2162

原创 zookeeper投票选举源码分析

一 leader 选举Leader 选举会分两个过程启动的时候的 leader 选举、 leader 崩溃的时候的的选举1. 服务器启动时的 leader选举每个节点启动的时候状态都是 LOOKING,处于观望状态,接下来就开始进行选主流程进行 Leader 选举,至少需要两台机器(具体原因前面已经讲过了),我们选取 3 台机器组成的服务器集群为例。在集群初始化阶段,当有一台服务器 Server1 启动时,它本身是无法进行和完成 Leader 选举,当第二台服务器 Server2 启动时,这个时候两

2020-05-25 01:30:26 342

原创 分布式协调框架zookeeper

一 什么是 RPCRPC(Remote Procedure Call,远程过程调用),一般用来实现部署在不同机器上的系统之间的方法调用,使得程序能够像访问本地系统资源一样,通过网络传输去访问远端系统资源;对于客户端来说, 传输层使用什么协议,序列化、反序列化都是透明的二 什么是 zookeeperzookeeper 是一个开源的分布式协调服务,由雅虎公司创建,是 google chubby 的开源实现。zookeeper 的设计目标是将哪些复杂且容易出错的分布式一致性服务封装起来,构成一个高效可靠的原

2020-05-24 23:40:14 200

转载 PicGo 图床配置

https://www.jianshu.com/p/5c8a0072f3fc

2020-05-24 17:40:18 155

原创 【工具类】CookieUtil

package com.xuecheng.framework.utils;import javax.servlet.http.Cookie;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import java.util.HashMap;import java.util.Map;/** * Created by admin on 2018/3/18. */

2020-05-19 16:35:23 246

原创 使用jna调用c语言动态库对接华视电子身份证阅读机

一些C语言的接口见上一篇文章同样把用到的动态库放到jdk的bin目录文件夹下Termb.javaimport com.sun.jna.Library;import com.sun.jna.Native;public interface Termb extends Library { Termb instanceDll = (Termb) Native.loadLibrary("Termb",Termb.class); int CVR_InitComm(int Port);

2020-05-18 09:48:24 785 2

原创 分布式

什么是分布式架构下的高可用设计避免单点故障a) 负载均衡技术(failover/选址/硬件负载/软件负载/去中心化的软件负载(gossip(redis-cluster)))b) 热备(linux HA)c) 多机房(同城灾备、异地灾备)应用的高可用性a) 故障监控(系统监控(cpu、内存)/链路监控/日志监控) 自动预警b) 应用的容错设计、(服务降级、限流)自我保护能力c) 数据量(数据分片、读写分离)分布式架构下的可伸缩设计垂直伸缩 提升硬件能力水平伸缩 增加服务器加速

2020-05-16 17:32:52 117

原创 使用jnative调用c语言动态库对接华视电子身份证阅读机

一 身份证阅读器SDK使用手册1. 定义应用函数开发包含下列文件:termb.dll API函数的动态联接库sdtapi.dll 安全模块通讯函数UnPack.dll 身份证相片解码库适用操作系统:Windows NT: 需要NT 3.1版或以后版本Windows: 需要 Windows 98、Windows 2000或以后版本适用开发语言:Visual C++ 5.0 及以后版本Visual Basic 5.0 及以后版本Delphi

2020-05-15 16:56:29 969

原创 spring源码解析

IOC:缓存的地方,得把它存起来(Map容器)DI:getter、setter、constructor(反射、invoker)AOP:为了增强原始Bean的功能(代理技术)Context是入口定位 用的 Reader 结尾的加载 BeanDefinition保存类信息,包括OOP关系注册 Factroy、Context 就是把用户所定义的Bean放到IOC容器中(Map)围绕Bean来展开BeanFactory来创建的reader loaddo开头的都是具体干活Cla

2020-05-15 00:25:08 180

原创 【瞎记】

虚拟机溢出调用链过长死循环无限递归zookeeper分布式锁临时节点 解决锁超时问题顺序解决解决惊群问题 每个客户端创建一个节点 只监听前一个节点

2020-05-15 00:10:07 93

转载 java 读取文件

https://www.cnblogs.com/JonaLin/p/11057398.html

2020-05-13 14:47:32 83

原创 idea 快捷鍵

我的idea选的eclipse的快捷键try catch alt+shift+z

2020-05-12 20:50:11 114

转载 jna

https://github.com/lovedabaozi/Jna

2020-05-12 19:42:21 151

转载 java 合并两个byte数组

https://blog.csdn.net/sjy_2010/article/details/84293926?utm_medium=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase&depth_1-utm_source=distribute.pc_relevant.none-task-blog-BlogCommendFromMachineLearnPai2-2.nonecase

2020-05-12 19:37:44 637

转载 JQ定时请求数据,并根据返回的数据停止请求

https://blog.csdn.net/ruoshuiyx/article/details/78581261

2020-05-08 12:25:50 184

转载 vue 引入element ui tab切换

https://www.cnblogs.com/wangweizhang/p/10250991.html

2020-05-07 00:23:32 378

原创 git查看啥时候创建的分支

$ git reflog show --date=iso master

2020-05-06 19:00:29 672

原创 pr笔记

前进一步:shift➕ctrl➕z颜色遮罩:https://jingyan.baidu.com/album/54b6b9c033f8406c583b47f8.html?picindex=4

2020-05-06 18:50:24 252

原创 【瞎记】rabbitmq慕课网笔记

第一步:消息入库第二步: 发送消息第三步:消息确认第四步:更改数据状态 标记已处理第五步:定时任务 抓取status=0的数据 重新投递消息对重试三次的 status改为3 表示失败 不再重试...

2020-05-02 19:38:57 392

原创 瞎记

健身烹饪摄影跳舞

2020-05-01 23:01:57 177

空空如也

空空如也

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

TA关注的人

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