真正理解volatile关键字

  volatile的作用 1,保证可见性 2,保证cpu指令顺序执行 上面两个特性就不过多解释了 当volatile 修饰 int i 时,为什么不是线程安全呢? 如图: 由上,我们可以得出以下结论。 read和load阶段:从主存复制变量到当前线程工作内存; use和as...

2018-08-10 11:10:08

阅读数 62

评论数 0

int和integer的区别?自动装箱、自动拆箱机制

int是原始类型,integer是int对应的包装类,它有一个int类型的字段存储数据,并且提供基本操作,如数学运算、int和字符串之间转换等 关于integer的值缓存,在调用valueOf时会利用一个缓存机制,带来了明显的性能改进。这个值在-128到127之间 1,理解自动装箱、拆箱 那...

2018-08-06 21:15:33

阅读数 382

评论数 0

动态代理是基于什么原理?

java是静态的强类型语言,但是因为提供了反射等机制,也就具备了部分动态类型的语言能。 反射机制是java语言提供的一种基础功能,赋予程序在运行时自省的能力。通过反射我们可以直接操作类或者对象 动态代理是一种方便运行时动态构建代理、动态处理代理方法调用的机制,很多场景都会用到。rmi、rpc等...

2018-08-06 20:59:32

阅读数 244

评论数 0

强引用、软引用、弱引用、幻象引用有什么区别?

不同的引用类型,主要体现的是对象不同的可达性状态和对垃圾收集的影响。 强引用:是我们常见的普通对象引用。只要还有强引用指向一个对象,就能表明对象还活着,垃圾回收器不会进行回收。 软引用:是一种相对强引用弱化一些的引用,可以让对象豁免一些垃圾收集。只有当jvm认为内存不足时,才会去试图回收软引用...

2018-08-04 21:19:20

阅读数 60

评论数 0

Exception和Error的区别?

​​​​​​Exception和Error都是集成了Throwable类。 Exception是程序运行中,可以预料的以外情况,可被捕获并能进行相应的处理。 Exception可分为checked 和 unchecked,checked必须要进行显示捕获。 Error是正常情况下,不大可能出...

2018-08-04 20:45:17

阅读数 57

评论数 0

Spring Bean的生命周期(非常详细)

本文主要参考:https://www.cnblogs.com/zrtqsk/p/3735273.htmlSpring Bean的生命周期是非常必要的,一些开源项目结合spring标签开发,了解spring bean生命周期后有助于理解这些项目的细节以及结构。我们通常使用ApplicationCon...

2018-06-25 16:08:15

阅读数 157

评论数 0

ApplicationContext启动

Spring ApplicationContext容器启动的整个过程实际上就包含在AbstractApplicationContext的refresh方法中public void refresh() throws BeansException, IllegalStateException { ...

2018-06-25 15:25:18

阅读数 207

评论数 0

阿里canal

由于之前项目需要,了解到了阿里优秀框架canal,使用起来真是很不错很方便,分库分表情况下用来缓存或是ES数据的同步很便捷。在尝试过程中,走了点弯路,总结此文,希望能够对观者有所帮助。Canal官方下载地址https://github.com/alibaba/canal/releases下载的ca...

2018-06-07 14:19:16

阅读数 353

评论数 0

服务熔断、降级、限流、异步RPC -- HyStrix

在今天,基于SOA的架构已经大行其道。伴随着架构的SOA化,相关联的服务熔断、降级、限流等思想,也在各种技术讲座中频繁出现。本文将结合Netflix开源的Hystrix框架,对这些思想做一个梳理。背景伴随着业务复杂性的提高,系统的不断拆分,一个面向用户端的API,其内部的RPC调用层层嵌套,调用链...

2018-06-07 11:46:34

阅读数 89

评论数 0

分布式缓存--序列4--缓存更新策略/缓存穿透/缓存雪崩

缓存更新策略被动更新设置key过期的时间,让其自动失效。主动更新更新DB的时候,同时更新缓存。一般业务都是主动更新和被动更新结合使用。先更新DB,后更新缓存对于主动更新来说,存在一个问题:你是先更新缓存,后更新DB;还是反过来? 下面分别分析以下2个场景,假设有2个线程,t1, t2: (1) 先...

2018-06-07 11:31:37

阅读数 68

评论数 0

分布式缓存原理----Hash环/一致性Hash原理/Hash槽

Memcached:为分布式客户端做分发,hash环TWY Redis:为分布式客户端做分发 ,hash环Redis Cluster:点对点                      ,2Khash槽当前,Memcached、Redis这类分布式kv缓存已经非常普遍。从本篇开始,本系列将分析分布式...

2018-06-07 09:54:25

阅读数 1377

评论数 3

分布式消息队列RocketMQ--事务消息

说到分布式事务,就会谈到那个经典的”账号转账”问题:2个账号,分布处于2个不同的DB,或者说2个不同的子系统里面,A要扣钱,B要加钱,如何保证原子性?一般的思路都是通过消息中间件来实现“最终一致性”:A系统扣钱,然后发条消息给中间件,B系统接收此消息,进行加钱。为了能解决该问题,同时又不和业务耦合...

2018-06-05 17:34:15

阅读数 130

评论数 0

sg_aps(jboss7)数据源密码加密解密

package org.picketbox.datasource.security; public class SecureIdentityLoginModule { private static String encode(String secret) { ...

2018-05-31 16:28:20

阅读数 508

评论数 0

DB2 jdbc驱动JDK8下 报错的解决

com.ibm.db2.jcc.am.SqlWarning: Origination unknown: [10228][11541][3.63.123] 在装入驱动程序时发生了安全性异常。 ERRORCODE=4223, SQLSTATE=null

2017-11-10 15:13:56

阅读数 1684

评论数 0

六大设计原则

除了最经典的六大设计原则以外,还有一些其他的设计原则也非常重要。我将尽可能地解释这些晦涩的理论,希望看完之后,会让您对这些设计原则稍微加深一些理解。若有不正确的地方,恳请大家指正!

2016-09-03 08:40:42

阅读数 345

评论数 0

ActiveMQ 2 订阅者模式实现

一个发布者对多个订阅者的消息传递 Topic和queue的最大区别在于topic是以广播的形式,通知所有在线监听的客户端有新的消息,没有监听的客户端将收不到消息;而queue则是以点对点的形式通知多个处于监听状态的客户端中的一个。 首先我们如第一章类似,为订阅者1,2分...

2016-07-07 22:16:29

阅读数 728

评论数 0

ActiveMQ 开发 点对点消息实现 1

ActiveMQ 开发包下载及运行环境搭建 主页:http://activemq.apache.org/ 目前最新版本:5.11.1 开发包及源码下载地址:http://activemq.apache.org/activemq-5111-release.html ActiveM...

2016-07-07 22:14:34

阅读数 749

评论数 0

解决sts 导入maven工程 报 Lifecycle mapping "org.eclipse.m2e.jdt.JarLifecycleMapping" is not available.

前段时间 开始尝试spring boot,无奈myeclipse不支持jdk7 。只好换sts 但是在用sts 导入 导入maven工程  pom.xml上,报 Lifecycle mapping "org.eclipse.m2e.jdt.JarLifecycleMapping&quo...

2016-06-25 11:37:01

阅读数 7118

评论数 4

linux开发常用命令

1.查找文件 find / -name filename.txt 根据名称查找/目录下的filename.txt文件。 find . -name "*.xml" 递归查找所有的xml文件 find .  -name "*.xml" |xar...

2016-06-24 22:49:49

阅读数 392

评论数 0

数据切分——Atlas读写分离Mysql集群的搭建

Atlas源代码用C语言编写,它对于Web Server相当于是DB,相对于DB相当于是Client,如果把Atlas的逻辑放到Web Server程序里去处理,这样会大大增加Web Server程序的复杂度,同时Web Server和DB之间的耦合度也相当高,因为只要DB增加/减少服务,Web ...

2016-06-16 22:53:49

阅读数 452

评论数 0

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