- 博客(10)
- 收藏
- 关注

原创 谈谈对 java线程池(Executors、ExecutorService、ScheduledExecutorService)和(Callable、Future、CyclicBarrier)的理解
线程池概念 线程池是实现多线程的一种用法,可以维护多个线程,优化创建和销毁线程的开销达到系统优化性能的目的。 线程池的优点 (1) 降低资源消耗。通过重复利用已创建的线程降低线程创建和销毁造成的消耗; (2) 提高响应速度。当任务到达时,任务可以不需要等到线程创建就能立即执行; (3) 提高线程的可管理性。线程是稀缺资源,如果无限制的创建,不仅会消耗系统资源,还会降低系统的稳定性,使用线程池可以进...
2019-03-11 09:52:14
912
原创 docker一键安装gitlab简易教程
前提:操作基于centos7,已安装docker 步骤如下: 1、拉取镜像 docker pull gitlab/gitlab-ce:latest 2、映射 sshd,将改掉22端口(防止后面gitlab跑容器的时候报22端口占用异常) 将其中的 #Port 22 注释去掉,将数字 22 更改为 13772(随意一个) vim /etc/ssh/sshd_config 修改后保存 3、开放1...
2019-04-01 00:18:14
529
转载 SnowFlake雪花算法生成分布式id
来自Twitter的雪花算法SnowFlake /** * 雪花算法SnowFlake * Created on 2019/3/14. * * @author Twitter */ public class IdSnowFlake { public static void main(String[] args) { IdSnowFlake flake = new...
2019-03-15 00:01:44
472
原创 3步简单 配置MyBatis Generator自动创建代码
基于maven项目,前提数据库已有数据表 1、pom项目添加mybatis-generator-maven-plugin插件依赖 注意该要放在节点下,放在加载插件失败 <build> <finalName>ssmDemo</finalName> <plugins> <plugin> <gr...
2019-03-14 23:53:57
228
原创 java 线程池(Executors、ExecutorService、ScheduledExecutorService)和(Callable、Future、CyclicBarrier)实践篇
一、FixedThreadPool、CachedThreadPool、SingleThreadExecutor、ScheduledThreadPool 简单使用(不推荐) public void fixedThreadPool1(){ int size = 5; ExecutorService threadPool = Executors.newFixedThrea...
2019-03-11 09:54:06
706
原创 Java IO系统 字符流(Reader/Writer)字节流(InputStream/OutputStream)读写操作 心得笔记
IO系统结构思维导图 第一部分 字符流 1、字符流读String 缓存流 常用 (StringReader/BufferedReader) /** * 字符流读String 缓存流 常用 */ public static void readFileStringbuf() throws Exception{ Reader reader = new ...
2019-03-08 10:16:33
368
原创 Singleton 单例模式(饿汉式,懒汉式,双重锁式和内部类式),多种实现方式
单例模式原理 通过私有化构造函数,通过静态公共方法/枚举方式返回对象。 注意:确保实例只有一个,尤其是多线程环境。 饿汉式 /** * 饿汉式(早new对象准备好,担心饿死) * @author:eddyjoe * @date:2019/3/7 */ public class HungrySingle { /**为严谨,加final指向的引用不能再做修改*/ private...
2019-03-07 18:11:03
448
原创 IntelliJ IDEA java配置及快捷键
一、idea配置git git客户端安装不多说了,基本都是下一步 注意下面这个地方(建议勾选第二个,为了后面idea可以通过命令窗口操作git): setting配置git Version Control > Git Terminal命令窗操作git 配置maven Build, Execution, Deployment > Build Tools > Mave...
2019-03-07 14:32:56
9773
原创 Rocketmq原理
一、 MQ背景 消息队列作为高并发系统的核心组件之一,能够帮助业务系统解构提升开发效率和系统稳定性。主要具有以下优势: 削峰填谷(主要解决瞬时写压力大于应用服务能力导致消息丢失、系统奔溃等问题) 系统解耦(解决不同重要程度、不同能力级别系统之间依赖导致一死全死) 提升性能(当存在一对多调用时,可以发一条消息给消息系统,让消息系统通知相关系统) 蓄流压测(线上有些链路不好压测,可以通过堆积一定量消息...
2019-03-05 15:50:56
868
原创 TCP的三次握手和四次挥手,以及为什么要三次握手,而不是二次?
对话模型诠释三次,两次,四次握手场景 三次握手: “喂,你听得到吗?” “我听得到呀,你听得到我吗?” “我能听到你,今天balabala……” 两次握手: “喂,你听得到吗?” “我听得到呀”“喂喂,你听得到吗?” “草,我听得到呀!!!!” “你TM能不能听到我讲话啊!!喂!”“……” 四次握手: “喂,你听得到吗?” “我听得到呀,你听得到我吗?” “我能听到你,你能听到我吗?” “……不想...
2019-02-26 15:34:10
2898
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人