该文被密码保护。 阅读全文
posted @ 2018-08-14 17:39 好想雨的云 阅读(5) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-08-14 13:46 好想雨的云 阅读(6) 评论(0) 推荐(0) 编辑
摘要: 在项目运行过程中,可能会出现内存溢出,内存溢出的原因多种多样,而在内存溢出后,我们如何查找和分析内存溢出的原因呢?这里来说一说我遇到的次遇到的内存溢出经历。 大致情况是这样的:应用在启动后,过一段时间(这个时间不确定),内存忽然爆满,然后频繁的YGC,一会过后,老年代爆满,然后是频繁的FGC,最终撑 阅读全文
posted @ 2018-08-13 23:33 好想雨的云 阅读(384) 评论(0) 推荐(0) 编辑
摘要: 引起内存溢出的原因有很多种,列举一下常见的有以下几种: 1.内存中加载的数据量过于庞大,如一次从数据库取出过多数据;2.集合类中有对对象的引用,使用完后未清空,使得JVM不能回收;3.代码中存在死循环或循环产生过多重复的对象实体;4.使用的第三方软件中的BUG;5.启动参数内存值设定的过小 内存溢出 阅读全文
posted @ 2018-08-13 23:17 好想雨的云 阅读(3825) 评论(0) 推荐(1) 编辑
摘要: 一、 ArrayList底层实现原理 对比 和Vector不同,ArrayList中的操作不是线程安全的!所以,建议在单线程中才使用ArrayList,而在多线程中可以选择Vector或者CopyOnWriteArrayList。 总结:(01) ArrayList 实际上是通过一个数组去保存数据的 阅读全文
posted @ 2018-08-12 18:47 好想雨的云 阅读(1472) 评论(1) 推荐(0) 编辑
摘要: public interface Serializable {} 该接口没有任何实现方法,是一种标志,instance of Serializable 会判断object类型 一、序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化。 把字节序列恢复为对象的过程称为对象的反序列化。 对 阅读全文
posted @ 2018-08-12 11:51 好想雨的云 阅读(370) 评论(0) 推荐(0) 编辑
摘要: 一、 抽象类和接口的特点 包含抽象方法的类称为抽象类,但并不意味着抽象类中只能有抽象方法,它和普通类一样,同样可以拥有成员变量和普通的成员方法。注意,抽象类和普通类的主要有三点区别: 1)抽象方法必须为public或者protected(因为如果为private,则不能被子类继承,子类便无法实现该方 阅读全文
posted @ 2018-08-12 11:06 好想雨的云 阅读(862) 评论(0) 推荐(0) 编辑
摘要: 问题: 1 阅读全文
posted @ 2018-08-11 09:06 好想雨的云 阅读(293) 评论(0) 推荐(0) 编辑
摘要: 文章目录 1、 CPU指令对CAS的支持(CPU的cas指令是原子的) 或许我们可能会有这样的疑问,假设存在多个线程执行CAS操作并且CAS的步骤很多,有没有可能在判断V和E相同后,正要赋值时,切换了线程,更改了值。造成了数据不一致呢?答案是否定的,因为CAS是一种系统原语,原语属于操作系统用语范畴 阅读全文
posted @ 2018-08-06 23:40 好想雨的云 阅读(1477) 评论(0) 推荐(0) 编辑
摘要: 概要 文章是《深入理解Java内容模型》读书笔记,该书总共包括了3部分的知识。 第1部分,基本概念 包括“并发、同步、主内存、本地内存、重排序、内存屏障、happens before规则、as-if-serial规则、数据依赖性、顺序一致性模型、JMM的含义和意义”。 第2部分,同步机制 该部分中就 阅读全文
posted @ 2018-08-06 23:18 好想雨的云 阅读(147) 评论(0) 推荐(0) 编辑
摘要: 1、 使用RabbitMQ实现延迟任务 阅读全文
posted @ 2018-08-06 21:58 好想雨的云 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 一、 RabbitMQ的五种工作场景: 1、 单发单收 2、 单发送多接收 +++++++++++++++++++++前面两种没有使用exchange++++++++++++++++++ 3、 Publish/Subscribe(广播)--ExchangeType:fanout 使用场景:发布、订阅 阅读全文
posted @ 2018-08-06 20:59 好想雨的云 阅读(305) 评论(0) 推荐(0) 编辑
摘要: ThreadLocal好处 Java并发编程的艺术解释好处是:get和set方法的调用可以不用在同一个方法或者同一个类中。 问答形式总结: 1、 ThreadLocal类的作用 ThreadLocal的作用是提供线程内的局部变量,这种变量在多线程环境下访问时能够保证各个线程里变量的独立性。 Thre 阅读全文
posted @ 2018-08-05 22:48 好想雨的云 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 原文地址: 全面理解Java内存模型(JMM)及volatile关键字 关联文章: 深入理解Java类型信息(Class对象)与反射机制 深入理解Java枚举类型(enum) 深入理解Java注解类型(@Annotation) 深入理解Java类加载器(ClassLoader) 深入理解Java并发 阅读全文
posted @ 2018-08-05 18:32 好想雨的云 阅读(439) 评论(1) 推荐(1) 编辑
摘要: 下面对上面说的三个辅助类进行一个总结: 1)CountDownLatch和CyclicBarrier都能够实现线程之间的等待,只不过它们侧重点不同: CountDownLatch一般用于某个线程A等待若干个其他线程执行完任务之后,它才执行; 而CyclicBarrier一般用于一组线程互相等待至某个 阅读全文
posted @ 2018-08-05 18:17 好想雨的云 阅读(182) 评论(0) 推荐(0) 编辑
摘要: 问答总结: 1、 JDK1.5引入了哪些更高阶的并发工具 2、 Java中CyclicBarrier 和 CountDownLatch有什么不同? CountDownLatch和CyclicBarrier都能够实现线程之间的等待,只不过它们侧重点不同: CountDownLatch一般用于某个线程A 阅读全文
posted @ 2018-08-05 17:54 好想雨的云 阅读(257) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-08-04 19:50 好想雨的云 阅读(1) 评论(0) 推荐(0) 编辑
摘要: rabbitMQ windows 安装 入门 1、下载,其实erlang不装也是可以的 下载 rabbitMQ :http://www.rabbitmq.com/download.html,安装rabbitmq需要erlang,下载erlang:http://www.erlang.org/downl 阅读全文
posted @ 2018-08-04 19:22 好想雨的云 阅读(101) 评论(0) 推荐(0) 编辑
摘要: 博文地址:Java并发编程:volatile关键字解析 阅读全文
posted @ 2018-08-03 23:43 好想雨的云 阅读(176) 评论(0) 推荐(0) 编辑
摘要: 问答形式列举: 1、 为什么说sychronized能保证可见性 synchronized和Lock能保证同一时刻只有一个线程获取锁然后执行同步代码,并且在释放锁之前会将对变量的修改刷新到主存当中。因此可以保证可见性。 2、 java中乐观锁和悲观锁区别,以及CAS机制是? 独占锁是一种悲观锁,sy 阅读全文
posted @ 2018-08-02 23:54 好想雨的云 阅读(246) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-08-02 23:54 好想雨的云 阅读(4) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-08-01 17:26 好想雨的云 阅读(7) 评论(0) 推荐(0) 编辑
摘要: 理解 1、第二范式的侧重点是非主键列是否完全依赖于主键,还是依赖于主键的一部分。第三范式的侧重点是非主键列是直接依赖于主键,还是直接依赖于非主键列。 2、 反模式 范式可以避免数据冗余,减少数据库的空间,减轻维护数据完整性的麻烦。 然而,通过数据库范式化设计,将导致数据库业务涉及的表变多,并且可能需 阅读全文
posted @ 2018-07-30 00:04 好想雨的云 阅读(230) 评论(0) 推荐(0) 编辑
摘要: 1、 自旋锁的优缺点: 自旋锁 自旋锁原理非常简单,如果持有锁的线程能在很短时间内释放锁资源,那么那些等待竞争锁的线程就不需要做内核态和用户态之间的切换进入阻塞挂起状态,它们只需要等一等(自旋),等持有锁的线程释放锁后即可立即获取锁,这样就避免用户线程和内核的切换的消耗。 但是线程自旋是需要消耗CP 阅读全文
posted @ 2018-07-29 23:51 好想雨的云 阅读(953) 评论(0) 推荐(0) 编辑
摘要: 1、RabbitMQ 实战教程 文集(alibaba) 2、RabbitMQ从入门到精通(9篇系列博文 )(anzhsoft2008 ) 3、 RabbitMQ目录 (nick's blog) 使用RabbitMQ实现延迟任务 nick hao 2017-03-24 22:15 阅读:15240 评 阅读全文
posted @ 2018-07-27 00:06 好想雨的云 阅读(167) 评论(0) 推荐(0) 编辑
只有注册用户登录后才能阅读该文。 阅读全文
posted @ 2018-07-27 00:02 好想雨的云 阅读(14) 评论(0) 推荐(0) 编辑
该文被密码保护。 阅读全文
posted @ 2018-07-24 11:28 好想雨的云 阅读(8) 评论(0) 推荐(0) 编辑
摘要: vcfc框架总结: 1 一、 bus和keystore是如何协调处理的,什么样的问题是处理不了的? 1、 如果在备重启的过程中,主处理了某个时间1,备机如果同步数据呢? 二 、数据可靠性和一致性分析 主: 内存、数据库psql、cansandra 备: 内存、数据库psql、cansandra 分析 阅读全文
posted @ 2018-07-06 18:27 好想雨的云 阅读(673) 评论(0) 推荐(0) 编辑
摘要: 分布式系统的CAP理论:理论首先把分布式系统中的三个特性进行了如下归纳:● 一致性(C):在分布式系统中的所有数据备份,在同一时刻是否同样的值。(等同于所有节点访问同一份最新的数据副本) ● 可用性(A):在集群中一部分节点故障后,集群整体是否还能响应客户端的读写请求。(对数据更新具备高可用性) ● 阅读全文
posted @ 2018-07-06 18:24 好想雨的云 阅读(346) 评论(0) 推荐(0) 编辑
摘要: 引言 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,是Google的Chubby一个开源的实现,是Hadoop和Hbase的重要组件。它是一个为分布式应用提供一致性服务的软件,提供的功能包括:配置维护、域名服务、分布式同步、组服务等。 ZooKeeper的架构通过冗余服务实现高 阅读全文
posted @ 2018-06-04 00:14 好想雨的云 阅读(321) 评论(0) 推荐(0) 编辑