- 博客(63)
- 资源 (1)
- 收藏
- 关注
原创 三次握手与四次挥手
所谓三次握手(Three-way Handshake),是指建立一个 TCP 连接时,需要客户端和服务器总共发送3个包。三次握手的目的是连接服务器指定端口,建立 TCP 连接,并同步连接双方的序列号和确认号,交换 TCP 窗口大小信息。在 socket 编程中,客户端执行 connect() 时。将触发三次握手。第一次握手(SYN=1, seq=x):客户端发送一个 TCP 的...
2018-08-09 21:32:04 131
原创 Java NIO - Buffer基本function介紹flip()、rewind()、clear()、compact()、mark()、reset()
http://breezebobo.blogspot.com/2013/07/java-nio-bufferfunctionflip.html
2018-08-02 23:55:20 296
原创 SQL四种语言:DDL,DML,DCL,TCL
1.DDL(Data Definition Language)数据库定义语言statements are used to define the database structure or schema.DDL是SQL语言的四大功能之一。用于定义数据库的三级结构,包括外模式、概念模式、内模式及其相互之间的映像,定义数据的完整性、安全控制等约束DDL不需要commit.CREATEALTERDR...
2018-07-02 11:26:04 176
原创 JVM 内存设置
Java整个堆大小设置,Xmx 和 Xms设置为老年代存活对象的3-4倍,即FullGC之后的老年代内存占用的3-4倍永久代 PermSize和MaxPermSize设置为老年代存活对象的1.2-1.5倍。年轻代Xmn的设置为老年代存活对象的1-1.5倍。老年代的内存大小设置为老年代存活对象的2-3倍。...
2018-06-29 13:16:03 138
原创 堆内存快照( Java Heap Dump )
有以下方法l触发 Heap Dump。· 使用$JAVA_HOME/bin/jmap -dump 命令来触发, JMap 是 JDK 自带的一个调试程序, 例如 jmap -dump :format=b,fi le=/home/longhao/heamdump.out;。 · 使用$JAVA_HOME/bi叫cosole 这个 JDK 自动调试工具的 MBean 子功能, 通过选择...
2018-06-28 14:52:55 3457
原创 分布式事务 TCC-Transaction 源码分析 —— TCC 实现(转)
原文链接 https://cloud.tencent.com/developer/article/1049345
2018-06-22 19:17:26 301
原创 在Spring Boot中使用Spring Session解决分布式会话共享问题 (转)
分享一篇关于 分布式 Spring Cloud Session 分布式共享的文章 原文地址 https://www.jianshu.com/p/e4191997da56
2018-06-21 16:35:00 398
原创 Java线程池ThreadPoolExecutor使用和分析 转
原文连接 http://www.cnblogs.com/trust-freedom/p/6594270.html
2018-06-16 23:25:40 109
原创 图解Git 转
转一篇 说的挺透彻的 GIT 图解 https://marklodato.github.io/visual-git-guide/index-zh-cn.html#reset
2018-06-07 14:43:33 92
原创 Tomcat 的连接数与线程池
一、Nio、Bio、APR1、Connector的protocolConnector在处理HTTP请求时,会使用不同的protocol。不同的Tomcat版本支持的protocol不同,其中最典型的protocol包括BIO、NIO和APR(Tomcat7中支持这3种,Tomcat8增加了对NIO2的支持,而到了Tomcat8.5和Tomcat9.0,则去掉了对BIO的支持)。BIO...
2018-06-04 10:05:37 100
原创 转 Spring Security 与 OAuth2(完整案例)
转一篇不错的 SPRING CLOUD OAUTH2 https://www.jianshu.com/p/227f7e7503cb
2018-06-01 00:14:59 363
原创 微服务架构的分布式事务解决方案 转
微服务架构的分布式事务解决方案https://www.roncoo.com/article/detail/124243
2018-05-29 23:17:20 235
原创 动态查询同个属性
Query orQuery =newQuery();Criteria orCriteria =newCriteria();List<Criteria> orExpression =newArrayList<>();for(Map<String,Object> accounts : attributes){Criteria expression =newCrite...
2018-05-17 15:38:44 160
原创 进程间的几种通信方式的比较和线程间的几种通信方式
几种进程间的通信方式(1) 管道(pipe):管道是一种半双工的通信方式,数据只能单向流动,而且只能在具有血缘关系的进程间使用。进程的血缘关系通常指父子进程关系。(2)有名管道(named pipe):有名管道也是半双工的通信方式,但是它允许无亲缘关系进程间通信。(3)信号量(semophore):信号量是一个计数器,可以用来控制多个进程对共享资源的访问。它通常作为一种锁机制,防止某...
2018-05-14 11:02:20 481
原创 转发 Java并发编程:JMM和volatile关键字
转发一篇挺基础的 关于并发编程的基础认知 Java并发编程:JMM和volatile关键字
2018-05-11 18:26:36 193
原创 基于redis分布式锁实现“秒杀”
转载 来自于 http://blog.5ibc.net/p/28883.html业务场景所谓秒杀,从业务角度看,是短时间内多个用户“争抢”资源,这里的资源在大部分秒杀场景里是商品;将业务抽象,技术角度看,秒杀就是多个线程对资源进行操作,所以实现秒杀,就必须控制线程对资源的争抢,既要保证高效并发,也要保证操作的正确。一些可能的实现刚才提到过,实现秒杀的关键点是控制线程对资源的...
2018-03-07 23:08:45 79
原创 JVM加载class文件的原理机制
转发来自于 http://www.hollischuang.com 类装载器是寻找类或接口字节码文件进行解析并构造JVM内部对象表示的组件,在java中类装载器把一个类装入JVM,需要经过以下步骤: 1、装载:查找和导入Class文件 2、链接:其中解析步骤是可以选择的 (a)检查:检查载入的class文件数据的正确性 (b)准备:给类的静态变量分配存储空间 (c)解析:将符...
2017-12-12 15:37:15 150
原创 ubuntu mysql 初始化配置
1. 升级apt-getapt-get update说明没有你不是root用户,则需要用sudo命令sudo apt-get update 2. 安装 mysql-client-core-5.6apt-get install mysql-client-core-5.6如果不是root用户请执行sudo apt-get install my...
2017-11-25 01:29:46 3630
原创 volatile适用场景
一直对volatile 这个使用的场景觉得迷惑,今天看道了一片关于volatile的博文,分享一下。volatile适用场景volatile适用于不需要保证原子性,但却需要保证可见性的场景。一种典型的使用场景是用它修饰用于停止线程的状态标记。如下所示12345678910111213boolean isRunning...
2017-11-06 23:46:38 202
原创 如何备份和恢复在Linux中SVN信息库
Subversion是流行的版本管理系统,广泛用于应用开发。作为系统管理员,您必须知道备份的重要性。因此,保持本地服务器上的所有SVN仓库,以及远程系统上备份。本文将帮助你备份,并通过命令行Linux系统上恢复svn库。1.备份SVN仓库Subversion提供了管理SVN仓库svnadmin工具。我们还可以使用svnadmin的命令SVN信息库的备份。$ svnadmin d...
2017-10-27 15:32:32 176
原创 spring cloud stream reference
spring cloud stream reference https://docs.spring.io/spring-cloud-stream/docs/current/reference/htmlsingle/#multiple-binders
2017-10-10 16:01:59 86
原创 Spring Cloud Stream(转)
[翻译]Spring Cloud Streamhttp://blog.csdn.net/phyllisy/article/details/51352868
2017-09-25 10:42:31 78
原创 GIT提交与获取时超慢的原因
vi /etc/ssh/sshd_config,在末尾加上:UseDNS novi /etc/ssh/ssh_config,注释掉下面两行参数:#GSSAPIAuthentication yes#GSSAPIDelegateCredentials no只要重启下SSH服务就能看到效果了:/etc/init.d/ssh restart...
2017-08-25 17:36:23 3565
原创 深入理解Eureka之源码解析(转)
深入理解Eureka之源码解析转发来自于 方志朋 博主地址:http://blog.csdn.net/forezp。
2017-07-10 13:44:01 166
原创 objc[3648]: Class JavaLaunchHelper is implemented in both
"objc: Class JavaLaunchHelper is implemented in both ..." 已经解决jdk 1.8 bug 造成的http://stackoverflow.com/questions/43003012/objc3648-class-javalaunchhelper-is-implemented-in-both临时解决下 ...
2017-05-04 00:55:43 239
原创 使用淘宝 NPM 镜像
大家都知道国内直接使用 npm 的官方镜像是非常慢的,这里推荐使用淘宝 NPM 镜像。淘宝 NPM 镜像是一个完整 npmjs.org 镜像,你可以用此代替官方版本(只读),同步频率目前为 10分钟 一次以保证尽量与官方服务同步。你可以使用淘宝定制的 cnpm (gzip 压缩支持) 命令行工具代替默认的 npm:$ npm install -g cnpm --registry=ht...
2017-01-10 22:46:20 474
原创 How to Install the Latest Versions of NodeJS For Ubuntu
Use the NodeSource PPA. For details look at the installation instructions. First, choose the Node.js version you need and add the sources for it:# for Node.js v4curl -sL https://deb.nodesource.c...
2017-01-10 14:12:14 135
原创 Java多态经典实例
public class A { public String show(D obj) { return ("A and D"); } public String show(A obj) { return ("A and A"); } } public class B extends A{ ...
2017-01-09 22:52:28 223
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人