2019年4月7日

摘要: 持久化消息和非持久化消息的发送策略 消息同步发送和异步发送 ActiveMQ支持同步、异步两种发送模式将消息发送到broker上。同步发送过程中,发送者发送一条消息会阻塞直到broker反馈一个确认消息,表示消息已经被broker处理。这个机制提供了消息的安全性保障,但是由于是阻塞的操作,会影响到客 阅读全文

posted @ 2019-04-07 23:35 FLGB 阅读(634) 评论(0) 推荐(0) 编辑


2019年4月3日

摘要: 消息中间件的初步认识 什么是消息中间件? 消息中间件是值利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成。通过提供消息传递和消息排队模型,可以在分布式架构下扩展进程之间的通信。 消息中间件能做什么? 消息中间件主要解决的就是分布式系统之间消息传递的问题,它能够屏 阅读全文

posted @ 2019-04-03 23:59 FLGB 阅读(354) 评论(0) 推荐(0) 编辑

摘要: aadada 阅读全文

posted @ 2019-04-03 23:58 FLGB 阅读(87) 评论(0) 推荐(0) 编辑

摘要: aaa 阅读全文

posted @ 2019-04-03 20:48 FLGB 阅读(96) 评论(0) 推荐(0) 编辑


2019年4月1日

摘要: 高并发下也可以使用HashTable 、Collections.synchronizedMap因为他们是线程安全的,但是却牺牲了性能,无论是读操作、写操作都是给整个集合加锁,导致同一时间内其他操作均为之阻塞。 ConcurrentHashMap则兼容了安全和效率问题。 ConcurrentHashM 阅读全文

posted @ 2019-04-01 22:58 FLGB 阅读(1775) 评论(0) 推荐(0) 编辑

摘要: HashMap的容量是有限的。当经过多次元素插入,使得HashMap达到一定饱和度时,Key映射位置发生冲突的几率会逐渐提高。 这时候,HashMap需要扩展它的长度,也就是进行Resize。 影响发生Resize的因素有两个: 1.Capacity HashMap的当前长度。HashMap的长度是 阅读全文

posted @ 2019-04-01 22:42 FLGB 阅读(210) 评论(0) 推荐(0) 编辑

摘要: HashMap是一个用于存储key-value的键值对集合,每个键值对都是一个Entry。这些键值对分散存储在一个数组中,这个数组就是HashMap的主干。 HashMap每个初始值都为null。 1.Put方法的原理 调用Put方法的时候发生了什么呢? 比如调用 hashMap.put("appl 阅读全文

posted @ 2019-04-01 22:31 FLGB 阅读(615) 评论(0) 推荐(0) 编辑

摘要: 单例模式第一版: 如上单例模式却不是线程安全的。两个线程同时满足 if(instance == null){}就会new两次 改进:单例模式第二版: 但是上述代码,也会存在线程安全问题。原因:可能会出现JVM指令重排 一般来说,对于instance = new Singleton1(),一般有三步, 阅读全文

posted @ 2019-04-01 22:18 FLGB 阅读(145) 评论(0) 推荐(0) 编辑


2019年3月31日

摘要: 1创建对象 String s ;创建引用,并未初始化,即引用未关联任何东西 String s2="asda"; 初始化 System.out.println(s2); System.out.println(s);//报错 用new 来初始化 String s = new String("sgjadf 阅读全文

posted @ 2019-03-31 23:13 FLGB 阅读(126) 评论(0) 推荐(0) 编辑

摘要: 对象导论: 1.1 抽象过程 所有的语言都有抽象机制,抽象是解决复杂问题的根本方法。例如:汇编语言是对底层机器的轻微抽象。命令式语言(如:FORTRAN、BASIC、C)又是对汇编语言的抽象。 java面向对象的五个特性: (1)万物皆对象 (2)程序是对象的集合,他们通过发送消息来告知彼此所要做的 阅读全文

posted @ 2019-03-31 19:48 FLGB 阅读(134) 评论(0) 推荐(0) 编辑


Copyright © 2024 FLGB
Powered by .NET 8.0 on Kubernetes