摘要: 【分析对象动态作用域】方法逃逸,线程逃逸。——栈上分配:对象可以随着方法的结束而自动销毁。——同步消除——标量替换:将对象中使用到的成员变量恢复原始类型来使用。======================================================================... 阅读全文
posted @ 2015-07-03 23:59 Uncle_Nucky 阅读(725) 评论(0) 推荐(0) 编辑
摘要: 1.尽早释放无用对象的引用(XX = null;) 2.谨慎使用集合数据类型,如数组,树,图,链表等数据结构,这些数据结构对GC来说回收更复杂。3.避免显式申请数组空间,不得不显式申请时,尽量准确估计其合理值。4.尽量避免在类的默认构造器中创建、初始化大量的对象,防止在调用其自类的构造器时造成不必要... 阅读全文
posted @ 2015-07-03 23:58 Uncle_Nucky 阅读(157) 评论(0) 推荐(0) 编辑
摘要: 性能参数-Xms初始堆大小,默认为物理内存的1/64(102624K(909312K)] 1094420K->320820K(1161216K), 0.2173131 secs] [Times: user=0.74 sys=0.00, real=0.22 secs] ...[GC (Allocati... 阅读全文
posted @ 2015-07-03 23:57 Uncle_Nucky 阅读(598) 评论(0) 推荐(0) 编辑
摘要: ClasspathJava路径import java.io.File;/*** @description java路径* @author swandragon* @date Nov 5, 2009*/public class FilePath{ /** *开发中不要使用System.getPro... 阅读全文
posted @ 2015-07-03 23:56 Uncle_Nucky 阅读(675) 评论(0) 推荐(0) 编辑
摘要: 《高性能MySQL》(第3版)讲解MySQL如何工作,为什么如此工作? MySQL系统架构、设计应用技巧、SQL语句优化、服务器性能调优、系统配置管理和安全设置、监控分析,以及复制、扩展和备份/还原等主题 schema设计 索引优化 查询优化 事务 【扩展应用】集群:复制-备份-恢复... 阅读全文
posted @ 2015-07-03 23:47 Uncle_Nucky 阅读(444) 评论(0) 推荐(0) 编辑
摘要: Session API【Java Hibernate 之 CRUD 操作】http://www.codeceo.com/article/java-hibernate-crud.html【Session的入门常用方法】Query query = session.createQuery(hql):利用h... 阅读全文
posted @ 2015-07-03 23:46 Uncle_Nucky 阅读(4778) 评论(0) 推荐(1) 编辑
摘要: http://jingyan.baidu.com/article/d5c4b52bc97e06da560dc5fc.html【问题:Hibernate 插入中文为乱码】http://blog.csdn.net/peditable/article/details/70475731、首先需要修改mysq... 阅读全文
posted @ 2015-07-03 23:44 Uncle_Nucky 阅读(202) 评论(0) 推荐(0) 编辑
摘要: 【共享锁】【读锁】共享锁(Share locks 简记为S锁)【独占锁】(事务结束释放)【写锁】排它锁(Exclusive locks 简记为X锁)【更新锁】(避免共享锁的死锁情况)【封锁协议 】 1 级封锁协议是:事务T在修改数据R之前必须先对其加X锁,直到事务结束才释放。事务结束包括正常结束(... 阅读全文
posted @ 2015-07-03 23:37 Uncle_Nucky 阅读(186) 评论(0) 推荐(0) 编辑
摘要: 【并发读问题】【第一类更新丢失】撤销时,覆盖更新数据。【脏读】读到未提交的更新。待定状态。【虚读】其他事务已提交的插入数据。事务T1读取某一数据后,事务T2对其做了修改,当事务T1再次读该数据时得到与前一次不同的值。【不可重复读】未避免“随时更新”。一个事务对同一行数据重复读取两次,但是却得到了不同... 阅读全文
posted @ 2015-07-03 23:36 Uncle_Nucky 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 复杂的业务交互过程中,不建议使用强一致性的分布式事务。解决分布式事务的最好办法就是不考虑分布式事务。就像刚说的问题一样,把分布式的事务过程拆解成多个中间状态,中间状态的东西不允许用户直接操作,等状态都一致成功,或者检测到不一致的时候全部失败掉。就解耦了这个强一致性的过程。一般情况下准实时就成了。涉及... 阅读全文
posted @ 2015-07-03 23:32 Uncle_Nucky 阅读(207) 评论(0) 推荐(0) 编辑
摘要: 【ThreadPoolExecutor的使用和思考】publicThreadPoolExecutor(intcorePoolSize,intmaximumPoolSize,longkeepAliveTime,TimeUnit unit,BlockingQueue workQueue,ThreadFa... 阅读全文
posted @ 2015-07-03 23:31 Uncle_Nucky 阅读(171) 评论(0) 推荐(0) 编辑
摘要: 主内存与工作内存定义程序中各个变量的访问规则。规定JVM必须遵循的最小保证。定义操作的偏序关系。Happens-Before规则:发布共享对象与另一线程访问对象。说明了某个线程的内存操作,在哪些情况下对其他线程是可见的。之前发生:Happens-Before 一代码块在其他开始前完成。同步约束:Sy... 阅读全文
posted @ 2015-07-03 23:30 Uncle_Nucky 阅读(157) 评论(0) 推荐(0) 编辑
摘要: CopyOnWriteArrayList类最大的特点就是,在对其实例进行修改操作(add/remove等)会新建一个数据并修改,修改完毕之后,再将原来的引用指向新的数组。这样,修改过程没有修改原来的数组。也就没有了ConcurrentModificationException错误。 从上面的结... 阅读全文
posted @ 2015-07-03 23:28 Uncle_Nucky 阅读(150) 评论(0) 推荐(0) 编辑
摘要: //静态内部类//优点:加载时不会初始化静态变量INSTANCE//因为没有主动使用,达到Lazy loadingclass Singleton{private static class SingletonHolder{ private final static Singleton INSTANCE... 阅读全文
posted @ 2015-07-03 23:26 Uncle_Nucky 阅读(119) 评论(0) 推荐(0) 编辑
摘要: ConcurrentHashMap高并发实现机制:http://www.ibm.com/developerworks/cn/java/java-lo-concurrenthashmap/散列表应用场景:大多数是读取操作。 读操作不需要加锁。完全并发的读取。 通过减小请求同一个锁的频率和尽量减少持有锁 阅读全文
posted @ 2015-07-03 23:25 Uncle_Nucky 阅读(198) 评论(0) 推荐(0) 编辑
摘要: 【http://jiangwenfeng762.iteye.com/blog/1280700】【可改进的问题】问题是jedispool有没有办法监控状态,比如说当前连接有多少,当前idle连接有多少,之类的同求。真心不想每次都构建连接然后在手动将连接返回池。【JedisPool源码】packager... 阅读全文
posted @ 2015-07-03 23:22 Uncle_Nucky 阅读(1694) 评论(0) 推荐(0) 编辑
摘要: 1,JedisPool的使用 //WHEN_EXHAUSTED_FAIL = 0; 直接抛出异常throw new NoSuchElementException("Pool exhausted"); //WHEN_EXHAUSTED_BLOCK = 1;borrowObject()将会阻... 阅读全文
posted @ 2015-07-03 23:21 Uncle_Nucky 阅读(1261) 评论(0) 推荐(0) 编辑
摘要: 分布式系统开发常见问题-1. session的复制与共享 2. 分布式缓存的设计1.session的复制与共享在web应用中,为了应对大规模访问,必须实现应用的集群部署.要实现集群部署主要需要实现session共享机制,使得多台应用服务器之间会话统一, tomcat等多数主流web服务器都采用了se... 阅读全文
posted @ 2015-07-03 23:20 Uncle_Nucky 阅读(2529) 评论(0) 推荐(0) 编辑
摘要: 【http://www.lvtao.net/database/tair.html】(特别详细)tair 是淘宝自己开发的一个分布式 key/value 存储引擎. tair 分为持久化和非持久化两种使用方式.非持久化的 tair 可以看成是一个分布式缓存。持久化的 tair 将数据存放于磁盘中. 为... 阅读全文
posted @ 2015-07-03 23:19 Uncle_Nucky 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 【http://raychase.iteye.com/blog/1545906】Ehcache 是现在最流行的纯Java开源缓存框架。【通过编程方式使用EhCache 】//从classes目录查找ehcache.xml配置文件CacheManager cacheManager = CacheMan... 阅读全文
posted @ 2015-07-03 23:18 Uncle_Nucky 阅读(513) 评论(0) 推荐(0) 编辑