`
steveoyung
  • 浏览: 28381 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论
文章列表
mybatis默认缓存是PerpetualCache,可以查看一下它的源码,发现其是Cache接口的实现;那么我们的缓存只要实现该接口即可。 该接口有以下方法需要实现:   String getId();   int getSize();   void putObject(Object key, Object value);   Object getObject(Object key);   Object removeObject(Object key);   void clear();   ReadWriteLock getReadWriteLock(); 1 实现类: [j ...
一.安装memcached   1.windows下安装memcached 需要到一个网站下载memcached的for win 32版本.在memcached的官方网站我是找不到的.我看了下,提供win版下载的是一个个人网站,老外的.应该是他自己用src编译的. 下载到只有几十K大小(我也吓 ...
OpenOffice.org has a powerful support for plug-ins (called Macros) that allow a lot of additional functionality to be added to application. One common task is to convert MS/Word documents (.doc) into PDF. The recipe here uses Basic to program an OpenOffice.org macro to convert from DOC to PDF. We th ...
安装使用 1.下载msysgit http://code.google.com/p/msysgit/ 2.下载tortoisegit客户端安装 http://code.google.com/p/tortoisegit/ 设置Git的安装路径: 
前言 南朝《述异记》中记载,晋王质上山砍柴,见二童子下棋,未看完,斧柄已烂,下山回村,闻同代人都去世了,自已还未变老。 因此发出“山中方一日,世上几千年” 的慨叹。原文寥寥几笔,读来却发人深省。 另有宋朝周敦颐在《暮春即事》中也有诗云:双双瓦雀行书案,点点杨花入砚池。闲坐小窗读周易,不知春去几多时。 上述古文或古诗中对于时间的论述最符合我现在的感受。已经整整十五日,对于Spring Serurity3的研究终于可以告一个段落了。 感觉这过往的十五日仿佛一瞬间而过,我沉浸在此中,一种强烈的求知愿望使我乐此不疲。到今天为止,终于将一种版本调通,可以正常使用了。 再回头看时,楼下的小公园里已经开放了 ...
对于组织架构中的员工层次关系我们应该怎么建模呢?   如下图所示:   此类结构通常有两个主要特点: 1、一个孩子有且只有一个父亲 2、树的深度不确定   为了解决这种结构,我们一般会建一张下面的表:   方案一(Adjacency List) CREATE TABLE Employees(employee_id int, employee_name varchar2(100), parent_id int );   每个员工在Employees表中会有一条记录,并通过parent_id来记录其直属领导的employee_id,这样做很简单明了, ...
首先在struts.xml中设置以下常量设置:       设置Convention插件是否从jar包中搜索Action类 [可选] 默认值为true       <constant name="struts.convention.action.disableJarScanning" value="true" />     设置Convention插件文件协议类型     <constant name="struts.convention.action.fileProtocols" valu ...
在Apache Tomcat 7设置redis作为session store redis已经有组件支持直接在tomcat7中设置下将redis作为tomcat默认的session存储器,下面介绍下配置过程 1.从http://redis.io/下载redis,按照redis服务端 ? 1 2 3 4 wget http://download.redis.io/redis-stable.tar.gz tar xvzf redis-stable.tar.gz cd redis-stable make 2.启动redis ...
Calculation Command Group http://docs.oracle.com/cd/E10530_01/doc/epm.931/html_esb_techref/calc/calcgrup.htm   FIX Function Detail http://docs.oracle.com/cd/E17236_01/epm.1112/esb_tech_ref/frameset.htm?fixend.html   essbase maxL grammar   ftp://ftp.software.ibm.com/software/analytics/spss/s ...
BIEE建模参考规范 注:本文基于网上盛传的“BIEE建模黄金法则”,并做了更为细致的讲解,以及修改。 物理层 1、  在可能的情况下,配置你的连接池使用本地驱动来连接物理数据库。例如,使用OCI而不是ODBC来连接Oracle数据库 2、  当数据模型是星型时,为物理表建别名(以Dim_,Fact_作为前缀),并根据需要添加描述性后缀。 例如:在数据仓库中,我们有一张W_STATUS_D字典表用于存储各种事务状态(活动状态、合同状态、客户状态),那我们应该为不同的状态类别创建相应的别名表,如: Dim_W_STATUS_D_Activity_Status Dim_W_ST ...
缓存概述  正如大多数持久层框架一样,MyBatis 同样提供了一级缓存和二级缓存的支持; 一级缓存基于 PerpetualCache 的 HashMap 本地缓存,其存储作用域为 Session,当 Session flush 或 close 之后,该Session中的所有 Cache 就将清空。 二级缓存与一级缓存其机制相同,默认也是采用 PerpetualCache,HashMap存储,不同在于其存储作用域为 Mapper(Namespace),并且可自定义存储源,如 Ehcache、Hazelcast等。 对于缓存数据更新机制,当某一个作用域(一级缓存Session/二级缓 ...
disruptor发布了Java的2.0版本(.Net版本见这里),disruptor是一个高性能的异步处理框架,或者可以认为是最快的消息框架(轻量的JMS),也可以认为是一个观察者模式实现,或者事件-监听模式的实现,直接称disruptor模式。disruptor最大特点是高性能,其LMAX架构可以获得每秒6百万订单,用1微秒的延迟获得吞吐量为100K+。disruptor与传统高性能模型是不同的,LMAX团队通过测试发现热门的Actor模型在高并发设计有瓶颈,disruptor的RingBuffer根据多核CPU的高速缓存设计特点进行了优化,让每个CPU运行一个线程,多个CPU就是多线程 ...
LMAX是一种新型零售金融交易平台,它能够以很低的延迟(latency)产生大量交易(吞吐量). 这个系统是建立在JVM平台上,核心是一个业务逻辑处理器,它能够在一个线程里每秒处理6百万订单. 业务逻辑处理器完全是运行在内存中(in-memory),使用事件源驱动方式(event sourcing). 业务逻辑处理器的核心是Disruptors,这是一个并发组件,能够在无锁的情况下实现网络的Queue并发操作。他们的研究表明,现在的所谓高性能研究方向似乎和现代CPU设计是相左的。(见另外一篇文章:JVM伪共享)过去几年我们不断提供这样声音:免费午餐已经结束。我们不再能期望在单个CPU上获得更快 ...
注意,请不要被我误导,我没有看其他资料,这是我自己分析的,有些可能是不对的   "DestroyJavaVM" prio=6 tid=0x00316800 nid=0x448 waiting on condition [0x00000000 ..0x00a0fd4c]    java.lang.Thread.State: RUNNABLE   "Thread-1" prio=6 tid=0x02f85000 nid=0xd18 waiting for monitor entry [0x0319f000

Java Thread State

使用 TDA 工具,看到大量 Java Thread State 的第一反应是: 1,线程状态为“waiting for monitor entry”: 意味着它 在等待进入一个临界区 ,所以它在”Entry Set“队列中等待。 此时线程状态一般都是 Blocked: java.lang.Thread.State: BLOCKED (on object monitor)     2,线程状态为“waiting on condition”: 说明它在等待另一个条件的发生,来把自己唤醒,或者干脆它是调用了 sleep(N)。 此时线程状态大致为以下几种: ...
Global site tag (gtag.js) - Google Analytics