- 博客(63)
- 资源 (9)
- 收藏
- 关注
转载 类加载器的工作原理
Java类加载器的作用就是在运行时加载类。Java类加载器基于三个机制:委托、可见性和单一性。委托机制是指将加载一个类的请求交给父类加载器,如果这个父类加载器不能够找到或者加载这个类,那么再加载它。可见性的原理是子类的加载器可以看见所有的父类加载器加载的类,而父类加载器看不到子类加载器加载的类。单一性原理是指仅加载一个类一次,这是由委托机制确保子类加载器不会再次加载父类加载器加载过的类。正确理解类
2013-11-01 17:12:09
972
转载 数据库锁机制
主要就是两种锁,共享锁和排他锁(也叫独占锁)。在执行select语句的时候需要给操作对象(表或者一些记录)加上共享锁,但加锁之前需要检查是否有排他锁,如果没有,则可以加共享锁(一个对象上可以加n个共享锁),否则不行。共享锁通常在执行完select语句之后被释放,当然也有可能是在事务结束(包括正常结束和异常结束)的时候被释放,主要取决与数据库所设置的事务隔离级别。 执行ins
2013-10-14 10:24:09
978
转载 一致性hash算法 - consistent hashing
一致性 hash 算法( consistent hashing )张亮consistent hashing 算法早在 1997 年就在论文 Consistent hashing and random trees 中被提出,目前在 cache 系统中应用越来越广泛;1 基本场景比如你有 N 个 cache 服务器(后面简称 cache ),那么如何将一个对象 object 映射到 N
2013-10-14 09:44:51
691
转载 HTTP状态码大全
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用reque
2013-10-14 09:25:30
674
转载 web前端开发七武器
http://www.36ria.com/3795前几天发了一篇《2010年天朝前端发展回忆录》,颇为意外,讨论最多的居然是前端IDE的话题,究竟哪款IDE才是最适合或是为前端量身定做的IDE?就目前来看,这个话题还没有答案,因为大部分IDE的出现并不是为前端服务的(aptana除外,但aptana目前越来越偏重ruby了,所以称其为ruby的IDE更恰当)。同时,这个话题也激发了
2013-09-24 18:30:33
1366
转载 来自 360 团队的基于MySQL数据库中间层项目:Atlas
Atlas是由奇虎360公司Web平台部基础架构组开发维护的一个基于MySQL协议的数据中间层项目。它在MySQL官方推出的MySQL-Proxy 0.8.2版本的基础上,修改了大量bug,添加了很多功能特性。目前该项目在360公司内部得到了广泛应用,3/4以上的MySQL业务已经接入了Atlas平台,每天承载的读写请求数达20亿条以上。主要功能特性:1. 自动读写分离,对应用透明
2013-08-07 16:59:19
742
原创 敏捷团队建设
敏捷项目管理实战之团队自我管理http://www.ibm.com/developerworks/cn/rational/r-cn-agileselfmanagement/
2013-07-30 10:12:28
718
转载 CAS3.4 代理模式详细配置
版本CAS服务器版本:3.4.2CAS客户端for JAVA版本:3.1.10 前言CAS3.4版本的资料在网上实在是少的可怜啊,幸亏官方网站所提供的资料帮助我完成了代理模式的配置,不过读E文真的很费劲。 在详细配置之前先说下对代理模式的认证,在网上查资料时看到有人说代理模式是服务于C/S架构的程序,还举例说什么看电影什么的,
2013-06-27 10:34:59
7193
1
转载 通过Keepalived实现Redis Failover自动故障切换功能
详细可参考http://heylinux.com/archives/1942.html设计思路:redis 主和 redis从 正常同步;redis主keepalived 启动,执行redis_master.sh脚本,vip在自己身上;redis 从keepalived 启动,执行redis_slave.sh脚本;redis主服务关闭,则redis主执行redis_fau
2013-06-21 16:44:17
4797
转载 Linux群集LVS简介
一、 LVS简介LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器, 是一个由章文嵩博士发起的自由软件项目,它的官方站点是www.linuxvirtualserver.org。现在LVS已经是 Linux标准内核的一部分,在Linux2.4内核以前,使用LVS时必须要重新编译内核以支持LVS功能模块,但是从Linux2.4内核以后,已经完全内置了LVS的各个
2013-06-21 16:11:53
694
转载 VRRP协议介绍
msn: yfydz_no1@hotmail.com来源:http://yfydz.cublog.cn参考资料: RFC 37681. 前言VRRP(Virtual Router Redundancy Protocol)协议是用于实现路由器冗余的协议,最新协议在RFC3768中定义,原来的定义RFC2338被废除,新协议相对还简化了一些功能。2. 协
2013-06-19 15:50:20
527
转载 Centos vsftpd安装
1. 安装 使用chkconfig --list来查看是否装有vsftpd服务; 使用yum命令直接安装:yum -y install vsftpd 然后为它创建日志文件:touch /var/log/vsftpd.log 这样简单的两个命令就完成了vsftp的安装,但是如果你现在想这样ftp://your_ip来访问的话,那还不行,还需要配置权限! 2. 启动与配置自
2013-05-24 16:37:39
592
转载 CentOS设置程序开机自启动的方法
在CentOS或者RedHat其他系统下,如果是后面安装的服务,如httpd、mysqld、postfix等,安装后系统默认不会自动启动的。就算手动执行/etc/init.d/mysqld start启动了服务,只要服务器重启后,系统仍然不会自动启动服务。在这个时候,我们就需要在安装后做个设置,让系统自动启动这些服务,避免不必要的损失和麻烦。其实命令很简单的,使用chkconf
2013-04-27 11:42:45
966
转载 redis 安装与配置
CentOS下Redis 2.2.14安装配置详解一、 下载redis最新版本2.2.14 cd /usr/local/srcwget –c http://redis.googlecode.com/files/redis-2.2.14.tar.gz二、 编译安装redistar zxvf redis-2.2.14.tar.gzcd re
2013-04-26 18:56:05
567
转载 simple-spring-memcached-3.0.x 注解详解
@CacheName: 指定缓存实例注解@CacheKeyMethod:缓存key生成注解---------------------------------读取-------------------------------------------@ReadThroughAssignCache(assignedKey = "SomePhatKey", namespace =
2013-04-26 15:02:58
728
转载 simple-spring-memcached简介
memcached是一款非常优秀的分布式缓存工具,有效提升了按主键检索数据的性能问题。而simple-spring-memcached组件通过与spring框架整合,让memcached的调用变得更加简单。simple-spring-memcached本质上是采用了AOP的方式来实现缓存的调用和管理,其核心组件声明了一些Advice,当遇到相应的切入点时,会执行这些Advice来对memc
2013-04-26 10:59:13
528
转载 用 Quartz 进行作业调度
简介: Quartz 是个开放源码项目,提供了丰富的作业调度集。在这篇文章中,软件工程师 Michael Lipton 和 IT 架构师 Soobaek Jang 对 Quartz API 进行了介绍,从对框架的一般概述开始,并以一系列展示 Quart 基本特性的代码示例作为结束。在阅读完本文并看过代码示例后,您应当能够把 Quartz 的基本特性应用到任何 Java™ 应用程序中。
2013-04-25 14:15:46
542
转载 memcached安装和启动
1.安装libevent 由于Memcached是用libevent库来处理很多打开的连接,所以要先安装libevent。 (libevent API提供了一种执行回调函数的机制,使一个文件描述符触发了某个事件或者在达到超时之后执行这个回调函数。) 下载libevent,最新版本为libevent-1.4.7-stable 引用# wget -P /tmp http
2013-04-25 09:51:30
738
转载 VMWare虚拟机下为Ubuntu 12.04.1配置静态IP(NAT方式)
背景在虚拟机下运行操作系统,尤其是Linux系统已经是非常常见的做法。有时你想在虚拟机下搭建一个(模拟)服务器来供主机访问,比如搭建一个telnet/ssh。此时你会发现,每次启动虚拟机,VMWare为虚拟机系统分配一个动态IP,这样每次去连接虚拟机的telnet时很不方便。如果设成静态IP就好了。VMnet8和NAT如果你的虚拟机是以NAT方式连入互联网的话,那么虚拟机的
2013-04-19 14:55:49
546
转载 基于 Jenkins 快速搭建持续集成环境
刘 华婷, 软件工程师, IBM简介: 持续集成是一种软件开发实践,对于提高软件开发效率并保障软件开发质量提供了理论基础。Jenkins 是一个开源软件项目,旨在提供一个开放易用的软件平台,使持续集成变成可能。本文正是从持续集成的基本概念入手,通过具体实例,介绍了如何基于 Jenkins 快速搭建持续集成环境。发布日期: 2011 年 11 月 24 日 级别:
2013-04-19 09:31:14
939
转载 Race Condition引起的性能问题
Race Condition(也叫做资源竞争),是多线程编程中比较头疼的问题。特别是Java多线程模型当中,经常会因为多个线程同时访问相同的共享数据,而造成数据的不一致性。为了解决这个问题,通常来说需要加上同步标志“synchronized”,来保证数据的串行访问。但是“synchronized”是个性能杀手,过多的使用会导致性能下降,特别是扩展性下降,使得你的系统不能使用多个CPU资源。
2013-04-09 09:28:42
689
转载 数据库分库分表(sharding)系列
数据库分库分表(sharding)系列 作者:黄钧航 ,发布于2012-11-22,来源:优快云 目录;(一) 拆分实施策略和示例演示(二) 全局主键生成策略(三) 关于使用框架还是自主开发以及sharding实现层面的考量(四) 多数据源的事务处理(五) 一种支持自由规划无须数据迁移和修
2013-04-03 17:05:00
1255
原创 常用网站
http://www.open-open.comhttp://ajava.org/portal.phphttp://wenku.it168.com
2013-04-03 09:03:36
456
转载 MySQL 水平分表实现
这次我来详细说说分表的一些方法。目前我所知道的方法都是MYISAM的,INNODB如何做分表并且保留事务和外键,我还不是很了解。首 先,我们需要想好到底分多少个表,前提当然是满足应用。这里我使用了一个比较简单的分表方法,就是根据自增id的尾数来分,也就是说分0-9一共10个 表,其取值也很好做,就是对10进行取模。另外,还可以根据某一字段的md5值取其中几位进行分表,这样的话,可以分的
2013-04-02 11:29:37
1058
原创 JAVA注解随笔
注解(也称为元数据)为我们在代码中添加信息提供了一种形式化的方法,使我们可以非常方便的在稍后的某个时刻使用这些信息1、注解的元素就像是接口的方法,唯一的区别是你可以为它指定默认值
2013-03-29 18:01:48
461
原创 JAVA泛型随笔
Java泛型的核心概念:告诉编译器想使用什么类型,然后编译器帮助你处理一切细节1、泛型可以用于类、接口、方法2、对于一个static方法而言,无法使用泛型类的泛型参数,所以如果static方法要使用泛型能力,就必须使它成为一个泛型方法3、定义泛型方法,只需要将泛型参数列表置于返回值之前4、类型推断只对赋值操作有用,其它时候并不起作用5、可变参数与泛型方法可以很好的共存6、可
2013-03-29 17:21:29
514
转载 XML Schema 参考手册
http://www.w3school.com.cn/schema/schema_elements_ref.aspXSD 元素元素解释all规定子元素能够以任意顺序出现,每个子元素可出现零次或一次。annotationannotation 元素是一个顶层元素,规定 schema 的注释。any
2013-03-25 16:34:47
572
转载 XML Schema 与 XML DTD的技术比较与分析
引言XML DTD(XML的文档类型定义)是近几年来XML技术领域所使用的最广泛的一种模式。但是,由于XML DTD并不能完全满足XML自动化处理的要求,例如不能很好实现应用程序不同模块间的相互协调,缺乏对文档结构、属性、数据类型等约束的足够描述等等,所以W3C于2001年5月正式推荐XML Schema为XML 的标准模式。显然,W3C希望以XML Schema来作为XML模式描述语言的
2013-03-25 13:48:06
568
转载 Shiro框架Web环境下过滤器结构分析
Shiro的过滤器的配置是结合使用Spring的DelegatingFilterProxy与FactoryBean2种技术来完成自身过滤器的植入的,所以理解Shiro的过滤器首先要理解这2者的使用。1. DelegatingFilterProxySpring提供的一个简便的过滤器的处理方案,它将具体的操作交给内部的Filter对象delegate去处理,而这个deleg
2013-03-20 18:38:04
1857
转载 让Apache Shiro保护你的应用
尝试保护你的应用时,你是否有过挫败感?是否觉得现有的Java安全解决方案难以使用,只会让你更糊涂?本文介绍的Apache Shiro,是一个不同寻常的Java安全框架,为保护应用提供了简单而强大的方法。本文还解释了Apache Shiro的项目目标、架构理念以及如何使用Shiro为应用安全保驾护航。相关厂商内容ScrumMaster鲍央舟:Scrum权威培训及工程实践
2013-03-20 18:27:17
625
转载 用 Quartz 进行作业调度
简介: Quartz 是个开放源码项目,提供了丰富的作业调度集。在这篇文章中,软件工程师 Michael Lipton 和 IT 架构师 Soobaek Jang 对 Quartz API 进行了介绍,从对框架的一般概述开始,并以一系列展示 Quart 基本特性的代码示例作为结束。在阅读完本文并看过代码示例后,您应当能够把 Quartz 的基本特性应用到任何 Java™ 应用程序中。
2013-03-20 17:55:00
442
原创 Hibernate 缓存策略
Hibernate的缓存分为: 一级缓存:在Session级别的,在Session关闭的时候,一级缓存就失效了。 二级缓存:在SessionFactory级别的,它可以使用不同的缓存实现,如EhCache、JBossCache、OsCache等。 缓存的注释写法如下,加在Entity的java类上: @Cache(usage = CacheConcurren
2013-03-20 15:58:52
514
转载 JPA 有用的注解
Spring 容器中的 Bean 是有生命周期的,Spring 允许在 Bean 在初始化完成后以及 Bean 销毁前执行特定的操作,您既可以通过实现 InitializingBean/DisposableBean 接口来定制初始化之后 / 销毁之前的操作方法,也可以通过 元素的 init-method/destroy-method 属性指定初始化之后 / 销毁之前调用的操作方法。关于 Sp
2013-03-20 10:17:15
573
原创 JAVA ThreadLocal
1、ThreadLocal是解决线程安全问题一个很好的思路,它通过为每个线程提供一个独立的变量副本解决了变量并发访问的冲突问题。在很多情况下,ThreadLocal比直接使用synchronized同步机制解决线程安全问题更简单,更方便,且结果程序拥有更高的并发性2、ThreadLocal很容易让人望文生义,想当然地认为是一个“本地线程”。其实,ThreadLocal并不是一个Thre
2013-03-20 09:16:46
498
原创 eclipse访问localhost:8080出现404错误
Eclipse配置并启动Tomcat成功,但有时会访问localhost:8080出现404错误,此时需要修改Tomcat配置。步骤如下:在Eclipse中双击Tomcat server,打开Tomcat配置页面。修改Server locations为Use Tomcat installation。修改Deploy path为webapps。保存配置即可。PS:如果不能修改配置,在
2013-03-19 11:57:05
727
原创 AbstractRoutingDataSource实现数据源切换
1、在spring配置文件中加入以下配置class="com.wangku.wjf.common.datasource.TradingRoutingDataSource">2、TradingRoutingDataSource类如下:public class TradingRoutingDataSource extends AbstractRout
2013-03-18 18:00:48
4906
开发自己的搜索引擎-Lucene 2.0+Heritrix
2012-06-03
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人