自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(8)
  • 收藏
  • 关注

原创 分布式锁实现之Zookeeper

使用Zookeeper实现分布式锁的一种方法1,锁的的基本概念2,基于zk实现分布式锁的原理图3,主要代码示例4,项目源码git地址:1,锁的的基本概念开发中锁的概念并不陌生,通过锁可以实现在多个线程或多个进程间在争抢资源时,能够合理的分配置资源的所有权。在单体应用中我们可以通过 synchronized 或ReentrantLock 来实现锁。但在分布式系统中,仅仅是加synchronized 是不够的,需要借助第三组件来实现。比如一些简单的做法是使用 关系型数据行级锁来实现不同进程之间的互斥,但大型

2020-10-18 13:40:05 147

原创 springcloud-zookeeper

记录一下使用springcloud注册zookeeper一、创建父工程cloud-zk二、创建子工程loadBalanced-comsumer三、创建子工程loadBalanced-provider四、创建providerApp五、创建comsumerApp六、启动zookeeper服务七、启动ProviderApp服务八、启动comsumerApp服务一、创建父工程cloud-zk创建mav...

2019-12-30 00:06:19 123

原创 NIO学习总结

NIO学习总结1.阻塞 VS 非阻塞1.阻塞概念:应用程序在获取网络数据的时候,如果网络传输数据很慢,就会一直等待,直到传输完毕为止2.非阻塞概念:应用程序直接可以获取已经准备就绪好的数据,无需等待。2.同步 VS 异步1.同步时,应用程序会直接参与IO读写操作,并且我们的应用程序会直接阻塞到某一个方法上,直到数据准备就绪:或者采用轮训的策略实时检查数据的就绪状态,如果就绪则...

2019-08-20 23:46:11 104

原创 Netty入门

Netty入门Netty应用场景1.分布式开源框架中dubbo、Zookeeper,RocketMQ底层rpc通讯使用就是netty。2.游戏开发中,底层使用netty通讯。为什么选择netty在本小节,我们总结下为什么不建议开发者直接使用JDK的NIO类库进行开发的原因:NIO的类库和API繁杂,使用麻烦,你需要熟练掌握Selector、ServerSocketChannel、...

2019-08-20 00:02:22 75

原创 Charset API

Java字符集编码器与解码器应用示例直接上代码:package com.supercoder;import java.nio.ByteBuffer;import java.nio.CharBuffer;import java.nio.charset.CharacterCodingException;import java.nio.charset.Charset;import jav...

2019-08-19 23:12:42 222

原创 NIO学习笔记2

分散读取与聚集写入分散读取(scattering Reads)将通道中的数据分散到多个缓冲区中聚集写入(gathering Writes)将多个缓冲区的数据聚集到通道中一个Channel可以同时支持多个Buffer有序传输(例如文件分段读取一个大文件)代码示例:public static void main(String[] args) throws IOExceptio...

2019-08-19 22:55:39 101

原创 NIO学习笔记

NIO学习专题什么是NIOBuffer的概述操作Buffer示例make与rest用法直接缓冲区与非直接缓冲区别通道(Channel)概述通道与直接缓冲区使用示例什么是NIO1、Java NIO(New IO)是一个可以替代标准Java IO API的IO API(从Java 1.4开始), Java NIO提供了与标准IO不同的IO工作方式。2、Java NIO: Channels a...

2019-08-18 22:30:54 114

原创 Java对象与内存控制

Java程序的变量1.Java程序的变量大体可分为成员变量和局部变量: a)形参:在方法签名内定义的局部变量,由方法调用者为其赋值,随方法结束消亡; b)方法内局部变量:在方法内定义,且必须在方法内为其显式初始化,从初始化开始生效, 至方法结束而消亡。 c)代码块内的局部变量:类同方法内局部变量,初始化生效,代码块结束消亡。变量的初始化定义变量(包括实例变量和类变量)时指定初始...

2019-08-13 23:18:32 81

空空如也

空空如也

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

TA关注的人

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