君子如兰君子如兰

所有文章 第2页

Java

Twitter Snowflake 唯一ID生成算法

1

guonanjun 发布于 2018-06-04

分布式系统中,有一些需要使用全局唯一ID的场景,这种时候为了防止ID冲突可以使用UUID,但是UUID有一些缺点,首先他相对比较长,另外UUID一般是无序的。有些时候我们希望能使用一种简单一些的ID,并且希望ID能够按照时间有序生成。而twitter的snowflake解决了这种...

阅读(793)评论(0)赞 (0)

Java

JVM内存结构

5

guonanjun 发布于 2018-03-18

Java虚拟机在执行Java程序的过程中会把它所管理的内存划分为若干个不同的数据区域。Java虚拟机所管理的内存将会包括以下运行时数据区域,如图所示: 1、 程序计数器 程序计数器(Program Counter Register)是一块较小的内存空间,它可以看作是当前线程所执行...

阅读(967)评论(0)赞 (0)

软件开发

【转载】TCP的三次握手和四次挥手

3

guonanjun 发布于 2018-03-07

TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的、基于字节流的传输层通信协议。TCP工作在网络OSI七层模型中的第四层-传输层,下面一张图展示OSI七层模型及每一层的作用和对应的协议。 TCP是传输层协议,在进行数据传输之...

阅读(1145)评论(0)赞 (0)

算法

基本算法解析(冒泡排序、选择排序、插入排序和快速排序)

4

guonanjun 发布于 2018-02-27

1、冒泡排序 冒泡排序的基本思想是,对相邻的元素进行两两比较,顺序相反则进行交换。这样,每一趟将最小(或最大)的元素“浮”到顶端,最终达到完全有序。 初始数组:5 1 4 2 3 图解如下: public static void bubbleSort(int[] arr) { f...

阅读(885)评论(0)赞 (0)

软件开发

JWT介绍和优缺点及适用场景分析

1

guonanjun 发布于 2018-02-03

1. 什么是JWT JSON Web Token(JWT)是一个非常轻巧的规范。这个规范允许我们使用JWT在用户和服务器之间传递安全可靠的信息。 2. JWT的构成 JWT由3个部分组成,第一部分我们称它为头部(header),第二部分我们称其为载荷(payload, 类似于飞机...

阅读(5297)评论(0)赞 (0)