自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(59)
  • 收藏
  • 关注

原创 给开发维护大型项目开发者的建议

假 设你是正在开发和维护一个包含2000个类并使用了很多框架的Java开发人员。你要如何理解这些代码?在一个典型的Java企业项目小组中,大部分能够 帮你的高级工程师看起来都很忙。文档也很少。你需要尽快交付成果,并向项目组证明自己的能力。你会如何处理这种状况?这篇文章为开始一个新项目的Java 开发者提供了一些建议。0. 不要试图一下子搞懂整个项目好好考虑一下,为什么理解项目代码是第一...

2013-02-05 17:43:51 202

原创 理解ThreadLocal

ThreadLocal 不是用来解决共享对象的多线程访问问题的,一般情况下,通过ThreadLocal.set() 到线程中的对象是该线程自己使用的对象,其他线程是不需要访问的,也访问不到的。各个线程中访问的是不同的对象。 另外,说ThreadLocal使得各线程能够保持各自独立的一个对象,并不是通过ThreadLocal.set()来实现的,而是通过每个线程中的new 对象 的操作来创建的对象...

2013-02-04 14:41:48 184

原创 J2EE常用的JAR

activation~与javaMail有关的jar包,使用javaMail时应与mail.jar (mail.jar和activation.jar)一起加入到lib中去,具体负责mail的数据源和类型等。ApacheActiveMQ~Apache出品,最流行的,能力强劲的开源消息总线。ActiveMQ是一个完全支持JMS1.1和J2EE 1.4规范的 JMS Provider实现。...

2013-02-04 14:36:08 247

原创 im20技术

技术:comet serverhttp://play-framework.herokuapp.com/http://play-framework.herokuapp.com/zh/homehttp://www.playframework.org/documentation/2.0.4/JavaHome               http://www.cnblogs.com...

2012-11-14 14:05:39 199

原创 淘宝 TFS 文件系统/分布式文件系统

  淘宝Tfs文件系统安装 一、NS DS 上都安装执行的: 官网地址:http://code.taobao.org/p/tfs/wiki/deploy/ (下载安装):1、需要确保安装了automake autoconfig 和 libtool,使用auotmake --version查看,一般情况下已安装 Yum –y inst...

2012-11-06 17:49:33 383

原创 java学习网址

http://www.micmiu.com/j2ee/spring/springside-quick-start/http://www.springside.org.cn/ 常用的学习网址:http://www.javaeye.comwww.javaeye.com.cnhttp://www.blogjava.net/hexuzhong/archive/2005/07/0...

2012-11-02 17:48:04 377

原创 高性能表现的网站

它展示了来自http://yahoo.com的http的流量。以上图标的第一个标签就是html,是一个html文档最开始加载的东东,在这个例子中,读取html代码只占了整个响应时间中的5%,这个结果适用于绝大多数网站,在采样美国的前十位网站中,只有一家超过5%但少于20%,其余80%的时间是用来读取网页其他内容的,也就是说,前端(原文是front-end,意思就是不...

2012-11-02 17:43:10 161

原创 多线程编程模型

一.加密技术分类1.消息摘要算法(保证消息完整性)摘要=加密(内容)MD5(速度快,128位)和SHA(更安全的算法,160位)    2. 对称密钥(私钥加密)秘文=加密(明文,密钥), 明文=加密(秘文,密钥)DES(56位),RC4,RC5,AES(128,192,256),BlowFish(32~448)   3. 非对称加密(公共密钥)秘文=加密(明文,私...

2012-10-25 10:34:43 261

原创 mysql 优化

MySQL与优化技术 MySQL历史   1979年, 报表工具,数据引擎   1996年,MySQL 1.0 (3.11.1) 发布,支持SQL   2000年,成立 MySQL AB 公司   2008年1月,Sun公司以10亿美元收购MySQL AB公司   2009年4月,Oracle公司以74亿美元收购Sun公司 MySQL里程碑   3.11.1 F...

2012-10-25 10:33:51 120

原创 Linux定时任务系统 Cron 入门

Cron 是Linux的内置服务,但它不自动起来,可以用以下的方法启动、关闭这个服务:    /sbin/service crond start //启动服务  /sbin/service crond stop //关闭服务  /sbin/service crond restart //重启服务  /sbin/service crond reload //重新载入配置  ...

2012-10-25 10:33:37 133

原创 JVM调优总结 -Xms -Xmx -Xmn -Xss

堆大小设置JVM 中最大堆大小有三方面限制:相关操作系统的数据模型(32-bt还是64-bit)限制;系统的可用虚拟内存限制;系统的可用物理内存限制。32位系统下,一般限制在1.5G~2G;64为操作系统对内存无限制。我在Windows Server 2003 系统,3.5G物理内存,JDK5.0下测试,最大可设置为1478m。典型设置: java -Xmx3550m ...

2012-10-25 10:33:27 152

原创 liunx 服务器 - im20

crontab -l1 * * * * /usr/sbin/ntpdate -u 1.centos.pool.ntp.org#monitor*/5 * * * * sh /data/commands/monitor-zhimei-main-resin-2.sh ===============================================/etc/rc.lo...

2012-10-25 10:32:54 131

原创 复杂查询sql intersect ,union ,except

select * from(select userid from bsalelog where ...) a,(select userid from bsalelog where ...) b.....where a.userid = b.userid效果和上面一样/*求t1对t2的交集 select * from t1 intersect select * fro...

2012-10-24 10:01:29 172

原创 liunx mysql5.5 源码安装

首先到http://www.cmake.org/cmake/resources/software.htmlcd /mysql1.安装cmake1)下载cmake#wgethttp://www.cmake.org/files/v2.8/cmake-2.8.7.tar.gz2)解压cmake#tar -zvxf cmake-2.8.7.tar.gz3)配置编译#...

2012-10-24 10:01:14 105

原创 Linux一个mysql配置多端口

Mysqld_multi在一台服务器上运行多个mysql实例及操作 .配置安装完成后,就是设置配置文件,是mysql能够运行多个实例。一下是我们机器上的配置文件my.cnf的配置[mysqld_multi]mysqld =/mysql/mysql/bin/mysqld_safemysqlad...

2012-10-24 10:01:03 586

原创 liunx mysql5.5 master/slave 配置

grant all on *.* to 'root'@'%' identifiedby '7ujm8ik,';FLUSH PRIVILEGES;show master status; 登陆主服务1、主服务器授权MySql> grant replication slave on *.* to'rekfan.com'@'192.168.2.3'...

2012-10-24 10:00:54 111

原创 I liunx 命令

grep 字符串查找 grep [OPTION]... PATTERN [FILE] sedAWK--------------------------------------------------------------------------------------------ctrl + r 查找历史命令 不停按向上查找1.pwd | whereis定位可执行文件 | w...

2012-10-24 10:00:43 141

原创 在LINUX下的软件安装

在LINUX下的软件安装方式不外乎有三种。 1。。。RPM包,也就是下载XXX.rpm格式的文件,安装直接用命令: rpm -ivh XXX.rpm 2.bin文件,这个实际上就跟WINDOWS下的傻瓜式安装似的。 chmod 700 XXX ./XXX 3.编译安装,下载的将是一个压缩包,那么安装步骤是: tar jxvf XXX.tar.bz2 解压 cd XX...

2012-10-23 17:13:05 130

原创 Too many open files

查看系统允许打开的最大文件数#cat /proc/sys/fs/file-max发现足够大了。 查看每个用户允许打开的最大文件数ulimit -a发现系统默认的是open files (-n) 1024,问题就出现在这里。在系统文件/etc/security/limits.conf中修改这个数量限制,在文件中加入内容:* soft nofile 65536...

2012-10-23 17:07:22 120

原创 java vm死锁分析

一. 如何检测死锁的根源     Java并不提供对死锁的检测机制。笔者认为常用分析Java代码问题的最有效的工具仍然是java thread dump。当死锁发生时,JVM通常处于挂起状态,thread dump可以给出静态稳定的信息,查找死锁只需要查找有问题的线程。Java虚拟机死锁发生时,从操作系统上观察,虚拟机的CPU占用率为零,很快会从top或prstat的输出中消...

2012-10-23 17:06:24 190

原创 eclipse 用法

2.1   重载父类方法: source菜单下      自动生成构造函数:      javadoc   /**                */3.1   断点     右键 "watch"      跟踪     expression   ---->添加新的对象               window--->showview --...

2012-10-23 17:04:00 144

原创 Linux NFS安装与配置

nfs 服务的配置服务端的配置vi /etc/exports/data/cover.friends.mop.com/photo/storage 10.6.33.0/24(rw,no_root_squash,nohide) 10.6.32.0/24(rw,no_root_squash,nohide) 10.6.39.0/24(rw,no_root_squash,nohide) 1...

2012-10-23 16:04:08 96

原创 Lock和读写锁ReadWriteLock和缓存实例

1:lock和synchronized对比[java] view plaincopyimport java.util.concurrent.locks.Lock;  import java.util.concurrent.locks.ReentrantLock;      public class...

2012-10-22 16:54:56 144

原创 ReentrantLock与synchronized的区别

ReentrantLock 的lock机制有2种,忽略中断锁和响应中断锁,这给我们带来了很大的灵活性。比如:如果A、B2个线程去竞争锁,A线程得到了锁,B线程等待,但是A线程这个时候实在有太多事情要处理,就是 一直不返回,B线程可能就会等不及了,想中断自己,不再等待这个锁了,转而处理其他事情。这个时候ReentrantLock 就提供了2种机制,第一,B线程中断自己(或者别的线程中...

2012-10-22 13:33:44 124

原创 apache服务器查看网络爬虫记录的方法说明

问 :使用Apache服务器,如何查看哪些网站的蜘蛛来爬过自己的网站或者哪些IP访问过我们的网站呢?答 :通过Apache服务器的访问日志记录!          Apache服务器的访问日志名称在linux下默认叫做access_log,在windows下是access.log文件如何配置 :在httpd.conf文件中配置这么两句话:             Log...

2012-10-22 11:34:54 271

原创 java的concurrent/java.util.concurrent.locks用法详解

java.util.concurrent.locks - 内容部份 Lock 接口支持那些语义不同(重入、公平等)的锁定规则,可以在非阻塞式结构的上下文(包括 hand-over-hand 和锁定重排算法)中使用这些规则。主要的实现是 ReentrantLock。 ReadWriteLock 接口以类似方式定义了一些读取者可以共享而写入者独占的锁定。此包只...

2012-10-19 15:49:39 156

原创 java.util.concurrent详解(四) BlockingQueue

7.BlockingQueue     “支持两个附加操作的 Queue,这两个操作是:获取元素时等待队列变为非空,以及存储元素时等待空间变得可用。“     这里我们主要讨论BlockingQueue的最典型实现:LinkedBlockingQueue 和ArrayBlockingQueue。两者的不同是底层的数据结构不够,一个是链表,另外一个是数组。        后面将要单独...

2012-10-19 10:00:24 111

原创 java.util.concurrent详解(三)ScheduledThreadPoolExecutor

6. ScheduledThreadPoolExecutor     我们先来学习一下JDK1.5 API中关于这个类的详细介绍:     "可另行安排在给定的延迟后运行命令,或者定期执行命令。需要多个辅助线程时,或者要求 ThreadPoolExecutor 具有额外的灵活性或功能时,此类要优于 Timer。    一旦启用已延迟的任务就执行它,但是有关何时启用,启用后何时执行则...

2012-10-18 14:32:42 332

原创 java.util.concurrent详解(二)Semaphore/FutureTask/Exchanger

----------------------------------------------------------------------------- 3. Semaphore     我们先来学习一下JDK1.5 API中关于这个类的详细介绍: “一个计数信号量。从概念上讲,信号量维护了一个许可集。如有必要,在许可可用前会阻塞每一个 acquire(),然后再获取该许可。每个 ...

2012-10-18 14:31:39 113

原创 java.util.concurrent详解(一) Latch/Barrier

Java1.5提供了一个非常高效实用的多线程包:java.util.concurrent, 提供了大量高级工具,可以帮助开发者编写高效、易维护、结构清晰的Java多线程程序。从这篇blog起,我将跟大家一起共同学习这些新的Java多线程构件1. CountDownLatch     我们先来学习一下JDK1.5 API中关于这个类的详细介绍: “一个同步辅助类,在完成一组正在其他线...

2012-10-18 14:30:20 139

原创 JIRA5.0.2与Crowd2.4.2应用集成

新版本jira、crowd集成与以往有些不一样,首先就是配置文件的修改没有以前多了,然后就是在jira内需要设置一个应用目录,记得这个简单的地方也许就不好找。这篇文章你就多看点吧。的确写的很不好,不过如果你以前对jira有大致的了解,那看我很不好的文采文章,就能相对简单了。 1.    创建Directories,一般把Name改写,直接默认就可以了  ...

2012-10-18 14:27:01 139

原创 JIRA bug管理系统

         因为突然项目要用JIRA bug管理系统,刚好以前用过jira,感觉很不错,就安装一个用用了,下面是安装步骤,参考了一些网上的教材,特此表示感谢。1.系统环境  系统环境为ubuntu10.04+mysql5.1.14+jdk1.6 2.文件准备  由于jira是用java写的,jdk当然是比不可少了;我用的是mysql数据库,所以mysql也是需要安装的...

2012-10-17 10:24:11 976

原创 OpenLdap源码安装

安装Berkeley DB 4.7.25 下载地址:http://download.oracle.com/berkeley-db/db-4.6.21.tar.gz 安装openldap-2.4.15 下载地址:ftp://ftp.openldap.org/pub/OpenLDAP/openldap-release/openldap-2.4.15.tgz...

2012-10-17 10:24:00 1361

原创 Confluence与Crowd通信设置

Confluence与Crowd通信设置 <<Jira与crowd通信设置(之前要做ldap)>> 重要:首先依然是要将Confluence的外部管理开启(管理员用户)开启外部管理操作:安全性—>> Security Configuration — >>编辑,勾选外部用户管理 — >&g...

2012-10-17 10:23:39 529

原创 配置Apache+subversion的详细步骤

操作系统:linux(CentOS 6)软件:apache2.2,subversion1.6概述使用apache的目的是想让客户端以http协议的方式与subversion服务器通信。要实现这个目的,必须能在客户通过apache访问subversion的仓库时,以subversion的插件接管对这些请求的处理。过程1 先安...

2012-10-17 10:23:20 238

原创 三、jstack命令(Java Stack Trace)

1、介绍jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:jstack [-l] pid如果java程序崩溃生成core文件,...

2012-10-16 18:10:03 124

原创 四、jstat命令(Java Virtual Machine Statistics Monitoring Tool)

1、介绍jstack用于打印出给定的java进程ID或core file或远程调试服务的Java堆栈信息,如果是在64位机器上,需要指定选项"-J-d64",Windows的jstack使用方式只支持以下的这种方式:jstack [-l] pid如果java程序崩溃生成core文件,...

2012-10-16 18:09:52 193

原创 七、jconsole命令(Java Monitoring and Management Console)

jconsole:一个java GUI监视工具,可以以图表化的形式显示各种数据。并可通过远程连接监视远程的服务器VM。用java写的GUI程序,用来监控VM,并可监控远程的VM,非常易用,而且功能非常强。命令行里打 jconsole,选则进程就可以了。需要注意的就是在运行jconsole之前,必须要先设置环境变量DIS...

2012-10-16 18:09:39 131

原创 WeakReference &&reference quene &&GC

在了解WeakReference之前,先给出一段简单的代码:public class WeakReferenceTest {public static void main(String[] args) throws Exception {Object o = new Object();// ...

2012-10-16 18:09:11 124

原创 理解java reference

Java世界泰山北斗级大作《Thinking In Java》切入Java就提出“Everything is Object”。在Java这个充满Object的世界中,reference是一切谜题的根源,所有的故事都是从这里开始的。 Reference是什么?      如果你和我一样在进入Java世界之前曾经浪迹于C/C++世界,就一定不会对指针陌生。谈到指针,往...

2012-10-15 21:20:55 99

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

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