1. UUID 128位占用空间较多
    2. (重要)UUID是无序的在插入数据时会造成索引重排,如果是有序的主键直接在B+树的最后插入数据即可

指令重排造成双重检验方式的单例模型线程不安全问题

指令重排造成双重检验方式的单例模型线程不安全问题
要不断打磨,技术才会不断进步 之前写过单例模式的几种实现方式,原文链接http://www.full-stacker.com/archives/256 之前犯了个严重的错误,一直以为双重判断方式的实现是线程安全的,但真实却不是这样的。。。。 先看下双重判断方式的实现代码: package com.fullstacker.study.designpattern……继续阅读 »

骐骏 2年前 (2019-05-02) 733浏览 0评论 0个赞

生产者消费者模式

生产者消费者模式
生产者消费者模式应该是一个经常聊的模式了,现在经常使用的MQ是这个模式的一个常见场景了。不多赘述,直接上一个简单的代码实现。 数据实体: package com.fullstacker.study.designpattern.consumer; public final class Data { private String id……继续阅读 »

骐骏 5年前 (2017-04-27) 1222浏览 0评论 0个赞

Master-worker模式

Master-worker模式
master-worker模式是常用的并行模式。就像软件公司的工作模式一样,客户将需求提给项目经理,项目经理将需求分解,然后分配给各个开发人员,开发人员开发完成后将结果反馈给项目经理,由项目经理向客户交付。在这种工作模式之中,项目经理扮演的角色就是Master,开发人员的角色就是worker。master-worker模式的核心思想是,系统有两个进程协作工作……继续阅读 »

骐骏 5年前 (2017-04-19) 1201628浏览 0评论 0个赞

Future模式

Future模式
Future模式,如字面意思,就是要在将来的某个时刻获取到结果,有点类似于ES6中的Promise。 一个简单的栗子: 定义一个数据接口: package com.fullstacker.study.designpattern.future; public interface Data { String getRequest(); } ……继续阅读 »

骐骏 5年前 (2017-04-11) 191浏览 0评论 0个赞