自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

编程战五渣

代码,它有脾气

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

转载 guava缓存的expireAfterWrite与refreshAfterWrite的区别

原文来自:https://my.oschina.net/scipio/blog/551475?p=expireAfterWrite是在指定项在一定时间内没有创建/覆盖时,会移除该key,下次取的时候从loading中取 expireAfterAccess是指定项在一定时间内没有读写,会移除该key,下次取的时候从loading中取 refreshAfterWrite是在指定时间内没有被创建...

2018-09-18 17:00:03 26993

转载 Java Guava Cache 使用

原文来自:https://blog.csdn.net/u012881904/article/details/79263787Guava -CaacheGuava缓存值CacheBuilder介绍-参考 Google -CachesExplained wiki 缓存框架Guava Cache部分源码分析概述缓存是日常开发中经常应用到的一种技术手段,合理的利用缓存可以极大的改善应用程序...

2018-09-18 14:26:37 3987

转载 并发编程工具之一:CountDownLatch 用法

原文来自:https://blog.csdn.net/Somhu/article/details/78614783CountDownLatch 用法CountDownLatch是java.util.concurrent包中一个类,CountDownLatch只要提供的机制是多个(具体数量等于初始化CountDownLatch时count的值)线程都达到了预期状态或者完成了预期工作时触发事件...

2018-09-14 15:52:45 13849 1

转载 使用ExecutorCompletionService 管理线程池处理任务的返回结果

在我们日常使用线程池的时候,经常会有需要获得线程处理结果的时候。此时我们通常有两种做法。1. 使用并发容器将callable.call() 的返回Future存储起来。然后使用一个消费者线程去遍历这个并发容器,调用Future.isDone()去判断各个任务是否处理完毕。然后再处理响应的业务。 import java.util.concurrent.BlockingQueue;im...

2018-09-14 15:18:29 719

转载 利用消息队列实现最终一致性

本文转自:http://skaka.me/blog/2016/04/21/springcloud1/不同于单一架构应用(Monolith), 分布式环境下, 进行事务操作将变得困难, 因为分布式环境通常会有多个数据源, 只用本地数据库事务难以保证多个数据源数据的一致性. 这种情况下, 可以使用两阶段或者三阶段提交协议来完成分布式事务.但是使用这种方式一般来说性能较差, 因为事务管理器需要在多个...

2018-09-11 10:19:29 6491

转载 select/poll/epoll

在linux 没有实现epoll事件驱动机制之前,我们一般选择用select或者poll等IO多路复用的方法来实现并发服务程序。在大数据、高并发、集群等一些名词唱得火热之年代,select和poll的用武之地越来越有限,风头已经被epoll占尽。本文便来介绍epoll的实现机制,并附带讲解一下select和poll。通过对比其不同的实现机制,真正理解为何epoll能实现高并发。select...

2018-09-09 00:42:44 340

原创 NIO相关基础篇

1.此篇文章主要讲解了操作系统的IO模型2.讲解了IO过程中用户程序到操作系统内核到硬件的过程相关文章转载自:https://mp.weixin.qq.com/s/q1G1-zV6Mhb72ukzTL7P5A请复制文章地址,在微信浏览器中打开...

2018-09-08 23:49:01 196

转载 深入分析Java的序列化与反序列化

原文转自:http://www.hollischuang.com/archives/1140序列化是一种对象持久化的手段。普遍应用在网络传输、RMI等场景中。本文通过分析ArrayList的序列化来介绍Java序列化的相关内容。主要涉及到以下几个问题:怎么实现Java的序列化为什么实现了java.io.Serializable接口才能被序列化transient的作用是什么怎么...

2018-09-07 11:47:32 136

转载 Protobuf 的 proto3 与 proto2 的区别

原文转自:https://solicomo.com/network-dev/protobuf-proto3-vs-proto2.html这是一篇学习笔记。在粗略的看了 Protobuf 的文档中关于 proto2 和 proto3 的说明后,记录下了几点 proto3 区别于 proto2 的地方。总的来说,proto3 比 proto2 支持更多语言但 更简洁。去掉了一些复杂的语法和特性...

2018-09-07 10:36:56 5421

原创 Windows Protobuf的运行环境

1.前往github Protocol Buffer的readme文件,找到下载地址,但是window是下需要下载额外的编译器    2.编译器下载地址:https://pan.baidu.com/s/1_LZMi0AqTJoeklind2bnPQ    3.执行命令 protoc.exe -I=proto的输入目录 --java_out=java类输出目录 proto的输入目录包括包括p...

2018-09-07 10:35:43 519

转载 单例模式与序列化那些事

本文将通过实例+阅读Java源码的方式介绍序列化是如何破坏单例模式的,以及如何避免序列化对单例的破坏。单例模式,是设计模式中最简单的一种。通过单例模式可以保证系统中一个类只有一个实例而且该实例易于外界访问,从而方便对实例个数的控制并节约系统资源。如果希望在系统中某个类的对象只能存在一个,单例模式是最好的解决方案。关于单例模式的使用方式,可以阅读单例模式的七种写法但是,单例模式真的能够实...

2018-09-07 10:29:23 192

转载 Java设计模式-单例模式

目录: 前言 一 单例模式简介 1.1 定义 1.2 为什么要用单例模式呢? 1.3 为什么不使用全局变量确保一个类只有一个实例呢? 二 单例的模式的实现 2.1 饿汉方式(线程安全) 2.2 懒汉式(非线程安全和synchronized关键字线程安全版本 ) 2.3 懒汉式(双重检查加锁版本) 2.4 懒汉式(登记式/静态内部类方式) 2.5 饿汉式(...

2018-09-07 10:27:59 144

空空如也

空空如也

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

TA关注的人

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