`
文章列表
在企业应用中,事务处理是一个很重要的问题,本文阐述了事务处理的相关概念,分析了数据库级别的事务并发时产生的问题和相对应的隔离级别,最后简单谈谈Hibernate对于事务处理的方法。 1.事务(transaction) 事务被认为是一系 ...
在Linux下,我们使用ulimit -n命令可以看到单个进程能够打开的最大文件句柄数量(socket连接也算在里面)。系统默认值1024。    对于一般的应用来说(象Apache、系统进程)1024完全足够使用。但是如何象squid、mysql、java等单进程处理大量请求的应用来说就有点捉襟见肘了。如果单个进程打开的文件句柄数量超过了系统定义的值,就会提到“too many files open”的错误提示。如何知道当前进程打开了多少个文件句柄呢?下面一段小脚本可以帮你查看:lsof -n |awk '{print $2}'|sort|uniq -c |sort -nr|more   ...
log4j.rootLogger=DEBUG,CONSOLE,A1,im log4j.addivity.org.apache=true # 应用于控制台 log4j.appender.CONSOLE=org.apache.log4j.ConsoleAppender log4j.appender.Threshold=DEBUG log4j.appender.CONSOLE.Target=System.out log4j.appender.CONSOLE.layout=org.apache.log4j.PatternLayout log4j.appender.CONSOLE.la ...
oracle10g awr安装 SQL> SQLPLUS / AS SYSDBA SQL> exec dbms_workload_repository.create_snapshot SQL> exec:snap_id:=dbms_workload_repository.create_snapshot SQL> var snap_id number SQL> print snap_id SQL> $ORACLE_HOME/rdbms/admin/awrrpt.sql 如果是Windows操作系统$换成@ 当然要设置oracle_home 我的是D:\oracl ...
 在Java类库中出现的第一个关联的集合类是Hashtable,它是JDK1.0的一部分。 Hashtable提供了一种易于使用的、线程安全的、关联的map功能,这当然也是方便的。然而,线程安全性是凭代价换来的――Hashtable的所有方法都是同步的。 ...
Buffer和Cache的区别 buffer与cache操作的对象就不一样。 buffer(缓冲)是为了提高内存和硬盘(或其他I/0设备)之间的数据交换的速度而设计的。 cache(缓存)是为了提高cpu和内存之间的数据交换速度而设计,也就是平常见到的一级缓存、二级缓存、三级缓存。 cpu在执行程序所用的指令和读数据都是针对内存的,也就是从内存中取得的。由于内存读写速度慢,为了提高cpu和内存之间数据交换的速度,在 cpu和内存之间增加了cache,它的速度比内存快,但是造价高,又由于在cpu内不能集成太多集成电路,所以一般cache比较小,以后intel等 公司为了进一步提高速 ...
最近的一个项目有点夸张,SVN 上的源代码量超过 1G。项目初创到不断壮大的过程中,持续参与的开发人员并没有发现什么问题。但后期新加入的开发人员则发现使用 Eclipse SVN 插件(Subversive)无法完成从无到有的 Check out 操作,Eclipse 总是出现 Java heap space 错误。这很可能是由于 Subversive 实现的问题,在处理庞大的代码库时将堆内存耗尽。根据经验,我们可以修改 eclipse.ini 中的 Java 内存限制,但部分开发人员发现在自己的机器上即使修改到极限,Subversive 仍会报错。于是只能另想办法。   经测试, ...
Slab Allocation机制:整理内存以便重复使用 最近的memcached默认情况下采用了名为Slab Allocator的机制分配、管理内存。在该机制出现以前,内存的分配是通过对所有记录简单地进行malloc和free来进行的。但是,这种方式会导致内存碎 ...
假设我们有3台memcached 服务器,server1 和server2 有3GB 的内存空间,server3 有2GB 的内存空间.下面程序说明怎么来创建客户端. import com.danga.MemCached.*; public class MyClass { // 创建一个 memcached 客户端对象 protected static MemCachedClient mcc = new MemCachedClient(); // 创建 memcached连接池 static ...
当开发者未指定id或name属性时,Spring会为这类受管Bean实例生成唯一标识符。个人建议遵循JavaBean规范定义的命名规则来显式命名受管Bean。 在现实生活中,不少人都存在不少昵称。类似地,Spring允许开发者为受管Bean指定多个名字,我们将这些名字称为别名(alias)。使用 Spring提供的Alias机制能够降低应用与受管Bean间的耦合性。比如,项目中的alias.xml中定义了如下内容和别名 <bean class="test.TestBean"/>  <bean id="testBean" class ...
Global site tag (gtag.js) - Google Analytics