自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 结束了

08年6月进入了这个行业,08年10月知道了iteye(那会还叫javaeye),在这里收获了很多,从一个什么都不懂的菜鸟,一步一个脚印的走到现在,很感谢iteye,感谢很有网友们的无私奉献的内容。 这里也记录了自己平时积累的点点滴滴,感谢伟大的互联网,让足不出户的我们能够汲取到很多知识。今天就把博客迁移到自己独立站点了,不知道以后还会不会回来看看,哎。。。。近五年的时间啊! ...

2013-02-03 20:31:37 238

原创 个人对于关系数据和NOSQL的看法

 存储模型:关系数据库中每条数据都是符合一定的格式,每个字段都有一个确定的类型,简单的说是一个格式化的数据。NOSQL的特点在于数据的格式是非固定的,每一个文档都可以拥有自己的数据格式,归纳的讲就是非格式化的数据,无论底层是采用文档,列存储还是K-V模式 业务功能实现:伴随着关系数据库的有数据库的三设计范式,范式所约定的终极目的是降低数据间的冗余,对于多关系之间数据查询...

2013-01-30 18:00:39 298

原创 mysql的order by 排序

mysql 的排序1.indexsort  利用有序索引获取有序数据原理:我们知道,mysql的基础数据结构是B+树,任何的一个表都是一颗B+树,你在表上建的索引也是一颗B+树,B+树的特别是在叶子节点上是有序,且前一个节点存在指向相邻节点的指针。那么在写SQL中的ORDER BY语句时候,若是ORDER BY的条件和返回的数据都在一颗树上,那么就可以利用B+树自身的特点来天然...

2013-01-29 15:26:25 426

subversion 1.7.8 linux下的安装笔记

 因为eclipse换成了4.2.1,里面自带的svn就更新到了1.8.0,在命令终端中用1.6版本的svn就不能使用了,就只能去安装1.7+的svn。 安装subversion-1.7.8 需要依赖以下包:SQLite-3.7.15.1, Apr-Util-1.5.1 and neon-0.29.6 或者  serf. 对于这些最好不要尝试自己去编译,直接用下面命令即可,...

2013-01-13 16:31:24 275

原创 ReentrantLock锁机制原理

因为ReentrantLock和ReentrantReadWriteLock的实现原理基本相同,就单看ReentrantLock。 第一步先看加锁 final void lock() { if (compareAndSetState(0, 1)) // 第一次尝试CAS指令来获取锁,若是失败的话,再通过...

2013-01-09 23:31:41 202

原创 文件差、并、diff操作、pstree、iftop命令使用笔记

数据准备:inter12@inter12-VirtualBox:/tmp/temp$ more t1 12 hi zhaoming 32 ohoh mingtian22 jhoh mingtian2  iehieh tomorrow  inter12@inter12-VirtualBox:/tmp/temp$ more t2  2  iehieh tomorr...

2013-01-09 11:14:43 153

ReentrantLock、sync、ReentrantReadWriteLock性能比较

 今天在处理问题时候,采用了读写锁,之前印象中记得读写锁在读大于写的场景下效率会比较高,但是并不是很明确,所以就乘机测试。具体测试代码如下所示: package com.zhaming.lock;import java.util.Random;import java.util.concurrent.CountDownLatch;import java.util.conc...

2013-01-05 18:51:12 279

Btrace、DTrace实战之Btrace

Btrace及Dtrace实战之BTRACE 最早接触的是btrace,那会在2010年就听说了,后来又听说了Dtrace,今天放假回来就总结总结这两个线上调试利器。源码下载地址是:http://kenai.com/projects/btrace/downloads 看主页上的最近更新时间都是2年前了,release的更新更是在三年前,好东西虽然不常更新,但确经久待用。在iteye上搜...

2013-01-04 18:47:25 575

原创 qcon杭州的随记

文化Hacking与即将到来的黄金时代    -- McCarthy Technologies创始人 Jim McCarthy        来宣扬黑客价值观的,对美国60,70年代的嬉皮士文化有了新的理解,他们追求的是思想的解放,不在束缚于条条框框,后来他们很多人都走上软件开发的geek道路。获取自动化测试的最大价值           -- Jolt大奖图书作者 Gerard M...

2012-12-06 11:14:00 295

天猫双11的一些看法

昨晚参与了天猫的双11活动,自己也下单了,中间遇见了一些问题,相信大多参与该活动的人都碰到了,先看问题吧:问题:首页打不开购物车数据丢失无法添加到购物车无法下单无法付款进入支付宝后,网银不给力,不响应请求总结的看导致以上问题的原因只有一个:大流量的涌入。那对面这个大流量有什么好的办法呢?其实对于对于这个问题,古人早就给出了宏观层面的答案,大流量就如洪灾,手段...

2012-11-11 17:19:38 214

我看单元测试

单元测试这个东西很神奇,最早是从国外引入的,世面上也存在了很多开源的单元测试软件,那么它到底有什么优缺点呢?下面就列出来瞧瞧看看,并附上一些我自己的看法。 优点:1.降低开发错误的反馈回路,减少重复工作,提升开发效率。例如服务器的重启啊之类的。   这个确实,大优点之一,我相信也是大多数程序要写单元测试的初衷。 2.提升代码质量,写出更模块化、结构化的代码,减少BUG....

2012-11-09 14:09:22 119

原创 confluence搭建过程

 JDK1.6以上,这个是必须条件,就不多说了。 下载 : mysql-server 5.1 及 mysql-client 5.1 目前只支持这个版本的数据库 http://dev.mysql.com/downloads/mysql/5.1.html#downloads  修改my.cnf文件:[root@javaapp-qatest3 /]# find . -ty...

2012-11-02 21:21:12 273

原创 Hypertext Transfer Protocol 超文本传输协议 or 超文本转移协议?

  Hypertext Transfer Protocol 超文本传输协议 or 超文本转移协议? 在IETF的RFC中,“transport”(传输)的含义是指:从端到端(例如从ip1:port1到ip2:port2)可靠地搬运比特,也就是TCP/IP协议栈中的第3层传输层(transport layer)协议所做的那些事情,干的仅仅是数据的传输。双方约定的是如何应对数据丢失...

2012-11-01 14:31:23 431

原创 上线性能调优笔记

普通的性能调优主要从四个方面入手网络,磁盘IO,内存,CPU四个方面入手,下面案例就是从这四个角度来看。 我们的页面每天PV在30W ,主要是分布在两个主要页面:个人主页,展示主页。假设每个页面各自承担50%的PV,假设访问时间集中在白天8小时,平均下来每秒的请求数是 5.2个,考虑到高峰情况,那么我们就乘以系数20, 就当100个处理,我们最大的一个请求会产生13个processo...

2012-09-12 21:16:36 178

AOP 的简单入门

 AOP 的简单入门 自己也算是从业多年,对于AOP的概念应该算是听的烂的不能再烂了,这方面的书也看的不少,但是自己一直没有机会去实践下。乘在这个稍微有点空闲的下午,就随手玩玩SPRING的AOP,也谈谈自己对于AOP的理解及其衍生的一些东西。 1.一切术语都是纸老虎基本概念,也可以说是基本术语。任何一个软件概念提出时候,都少不了这个东西。CRM,AOP,S...

2012-09-08 18:01:22 178

原创 redis 学习笔记4--sortset

redis学习笔记3--sortSet终于到最后一个数据结构了,加油!!整体结构图:http://dl.iteye.com/upload/picture/pic/115995/0ee3789f-33e1-35ca-ac65-cbd6b4e4e147.jpg  1.ZADD语法: ZADD key score value 释义:添加执行分数的value, sco...

2012-07-26 15:00:34 144

原创 redis 学习笔记3--set

 redis学习笔记3--set list:有序且,允许重复数据的链表 存在POP PUSH的概念set: 无需序,不能重复的集合 主要是ADD sortSet:有序,不能重复的集合  整体结构图:http://dl.iteye.com/upload/picture/pic/115943/f6e6971a-0216-3fe3-b89c-4ec5b53b762a.jp...

2012-07-25 18:35:49 135

原创 redis 学习笔记2--List

LIST 整体结构图 图画的太大了,只能放地址:http://dl.iteye.com/upload/picture/pic/115935/8e96f42d-3a7b-3cea-85ae-997496aa9521.jpg LIST列表的操作,可想而知,对于列表我们需要的具备的功能列表加入列表:  从头部加入   LPUSH   从底部加入   RPUSH弹出列表...

2012-07-25 16:15:20 214

原创 redis学习笔记1--string

 NOSQL的学习笔记:1.最基本的命令相信所有的NOSQL都会提供了命令:GET SET DEL --------------------------------------redis 127.0.0.1:6379> set ee 10 OKredis 127.0.0.1:6379> get ee "10"redis 127.0.0.1:6379&...

2012-07-24 17:28:55 130

原创 redis 安装笔记

1.redis的安装wget http://download.redis.io/redis-stable.tar.gztar xvzf redis-stable.tar.gzcd redis-stablemake如此就已经安装完成了,当然也可以采用make test来看看安装是否正确。 基本常用命令:redis-server :运行一个redisserverre...

2012-07-24 17:25:49 130

原创 AMQP--rabbitmq--1

1.基本安装分为 server  + client  server的安装: 1.添加 deb http://www.rabbitmq.com/debian/ testing main 到 /etc/apt/sources.list 2.apt-get update. 3.sudo apt-get install rabbitmq-server这个步骤会自动启...

2012-07-17 17:38:56 95

原创 AMQP-基本概念篇

尝试试用了下rabbitmq ,比activemq 简单很多,客户端API很简洁。 先普及几个概念  AMQP1.基本概念:AMQP(消息队列协议,Advanced Message Queuing Protocol)是一种消息协议 ,等同于JMS,但是JMS只是java平台的方案,且只是API级别的一个协议,AMQP是一个跨语言的协议。AMQP允许来自不同供应商的消息生...

2012-07-17 17:26:02 546

原创 spring的BeanUtils和cglib的BeanCopier性能比较

 测试环境:JDK1.6.29CPU:I7 2.80 双核四线程单位为纳秒测试对象  1)spring包中的 BeanUtil     采用反射实现2)cglib包中的  Beancopier   采用动态字节码实现  1.对象包含所有的基本类型 public class TestBeanSource1 {     private Strin...

2012-07-02 23:34:38 2096

原创 Hessian 的字段序列化小记

 Hessian 的字段序列化小记 一背景:今天线上碰到一个问题,在通过hessian的反序列化的时候失败了。简单查看了下原因,是因为服务端和客户端依赖的bean包版本不一致导致的。 二 具体分析:Client --- > commons-entity Sever  ---  > commons-entity  做了依赖倒置处理,服务...

2012-06-08 18:40:29 640

原创 groovy 安装使用小记

 前置条件: 已经安装JDK1.5以上版本 1. 下载源码  http://groovy.codehaus.org/Download  下载binary包即可。 2.unzip groovy-binary-1.8.6.zip  3.设置环境变量sudo vim /etc/profileexport GROOVY_HOME=/home/inter12/in...

2012-06-04 11:52:05 90

原创 ubantu安装中文输入法

在linux下中文输入法的一些事 现在的中文输入法都是基于平台的,目前主要的有两种:ibus平台 和 scim平台 ,当然也有一个另类fcitx中文输入法。前两者在安装的思路上基本类似,需要先安装一个平台,再安装响应的输入法包。例如ibus的安装步骤就是:1.安装ibus平台 : sudo apt-get install ibus ibus-clutter ibus-gtk ib...

2012-05-14 10:19:51 284

jetty 中如何设置root app

  jetty作为一个web容器,部署时只需要将部署包扔到 $JETTY_HOME/webapp目录下即可!例如工程 test.war ,在启动jetty后的访问路径就是 http://localhost:8080/test ,若是我们期望访问 http://localhost:8080/ 即是访问test工程的呢?有两种办法可以解决。 1.直接将 test.war 改名为ro...

2012-05-06 16:48:32 382

原创 svn过滤提交的小技巧

我们在命令行中使用svn ci 提交代码时候,可能经常碰到的问题就是,把一些我们不想提交的数据也提交到服务器上,那么怎么处理这个东西呢?今天自己也恰巧碰到这样场景,折腾了下,很简单! 1.新建一个工程 svn co http://xxxxxxx:8080/svn/xxx/yyy/trunk --depth=empty    // 将你要新建目录的父目录下载到本地mkdir...

2012-05-02 20:18:08 489

linux下 nginx 初探之反向代理及虚拟目录

本文是基本已经安装nginx的前提下,若是未安装 sudo aptitude install nginx 即可!一 反向代理配置文件默认是在 /etc/nginx/nginx.conf 最新nginx是通过include指令读取其他的配置文件 include /etc/nginx/conf.d/*.conf;include /etc/nginx/sites-enabled/*;我们不需要改变这个自...

2012-04-24 14:27:09 874

原创 maven pom文件查看依赖关系的小脚本

 因为mvn dependency:tree 包含了很多其他杂乱的信息,就写个简单的小脚本查看关系依赖树的关键部分!#!/bin/bash # show part of mvn dependency:tree result # author :zhaoming.xue# data :2012-4-18# last modify...

2012-04-18 21:08:06 615

原创 个人环境的常用软件包

 个人.ubantu下常用软件安装:  terminator,vim ,maven , subversion , jdk , eclipse,erlang  eclipse:    1)findbugs 2)codetemplate ,codeformatter 3)自动提示设置 4)  jetty:    wget http://dist.codehaus.org/jet...

2012-04-18 10:36:11 162

原创 nginx安装笔记

 中间碰到了些问题,就随笔记下了!安装过程1.先装 libstdc++5sudo aptitude install libstdc++5 若是没有装aptitude的话 ,先装这个:sudo apt-get install aptitude  2.下载prce 包 wget http://sourceforge.net/projects/pcre/files/pcr...

2012-04-17 23:17:44 311

MYSQL的全表扫描,主键索引(聚集索引、第一索引),非主键索引(非聚集索引、第二索引),覆盖索引四种不同查询的分析...

 MYSQL的全表扫描,主键索引(聚集索引、第一索引),非主键索引(非聚集索引、第二索引),覆盖索引四种不同查询的分析 1.前置条件:本次是基于小数据量,且数据块在一个页中的最理想情况进行分析,可能无具体的实际意义,但是可以借鉴到各种复杂条件下,因为原理是相同的,知小见大,见微知著! 打开语句分析并确认是否已经打开 mysql> set profiling=1...

2012-02-28 16:53:57 281

原创 MYSQL中SQL执行分析

今天本来想看下mysql的一条语句在MYSQL引擎中是如何的处理,无意中发现了很多其他的东西,就整理下吧。 查看SQL的执行情况:1.通过show processlist 来查看系统的执行情况!  mysql> show processlist ;+----+------+-----------+-------+---------+------+-------+-...

2012-02-24 10:54:47 172

原创 cpu的缓存同步机制

 cache同步机制之读写 1.概念解析 cache :这里的cache可以指L1,L2,L3这种CPU缓存,也可以是内存,也可以是磁盘缓存,区别在于处于什么场景下。内存  :对于cache的后端存储,总之是在cache之后。或是持久或是非持久的存储。cache hit :当从cache中读取数据时,恰好命中,读到数据,又称缓存命中cache miss: 对应cac...

2012-02-22 15:40:14 1030

原创 github简单实用

 今天折腾了github,中间碰到些问题,查了很多资料,但是其中对于某些细节描述的不是很清晰,这里记下来免的后来者再费劲。我的环境: ubantu11.10  1.下载git包sudo aptitude install git //若是你不想用aptitude的话,可以用下面命令sudo apt-get install git //我这里用aptitude是因为...

2012-02-20 15:04:49 153

原创 mat 使用笔记

 MAT 使用初探今天线上一个应用的持久区满了,一直没有下来,导致一些服务不可用,就用jmap当出内存快照后,用MAT分析内存的基本信息,发现很多地方不会用。找了些资料记录在下来。 1.引用 Strong reference : 就是我们new出来的对象,但是还是被持有的应用,垃圾回收时不会回收这个应用soft reference   : 我们new出来的对象,但是已...

2012-02-15 17:52:26 434

原创 UML笔记(转)

以下内容,部分是自己整理,部分转自网络 关联--依赖、组合--聚合 依赖 --> 关联 --> 聚合 --> 组合依赖:最弱的关联关系,在代码上的体现就是 方法的参数传递或者是临时变量关联: 稍强的关联关系,在代码上的体现就是属性关系,两者是平等的关系聚合:强调的整体和部分的关系,但生命周期不同而已。组合:最强的关联关系,也是整体和部分关系,...

2012-02-13 21:43:26 81

原创 top命令详解

  前几天跟一人交流的时候,讨论到系统监控命令,对于其中的TOP命令,交流下来发现自己并不是很了解这个命令详细的用法,以前都只贪图多(vmstat,iostat),而没有仔细了解具体详细的用法,回来后深感惭愧。今天就在这仔细整理下top命令的几个常见option。1.帮助:h 这个是你在忘记命令下最好的帮手,学什么命令第一个要学习就是help 。具体的界面如下所示---------...

2012-02-13 13:46:40 318

原创 开源搜索框架笔记

首推的当然时lucene了,先介绍这个吧lucene : 是一个文件搜索工具包,包括了完整的查询引擎和索引引擎及部分的分析引擎。为apache下的开源子项目。特点:1.索引文件独立于操作系统,自己定义了一套8字节为基础的索引文件格式2.在传统倒排索引的基础上,实现了分块索引,对于新增的文件建立小索引,并能提供索引合并以提升效率。3.强大的查询引擎。4.设计了独立于语言...

2012-02-03 17:14:31 109

空空如也

空空如也

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

TA关注的人

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