自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 JVM 看不到某些异常的stacktrace问题

引自:http://blog.csdn.net/alivetime/article/details/6166252#  在java 1.5的release notes里面可以看到这样一句话:    [java] view plaincopy The compiler in the server VM now provides correct stack...

2014-11-17 09:48:33 292

原创 Java定时任务框架Quartz

引自:http://yangpanwww.iteye.com/blog/797563http://www.cnblogs.com/obullxl/archive/2011/07/10/spring-quartz-cron-integration.htmlhttp://lgscofield.iteye.com/blog/1593036http://my.oschina.net/Ba...

2014-10-28 11:22:50 186

原创 Java JDBC 数据库访问汇总

各种数据库连接依赖及其配制:http://blog.163.com/luowei505050@126/blog/static/119907206201210223827126/JDBC理论笔记:http://www.cnblogs.com/hoojo/archive/2011/06/10/2077643.htmlJDBC实践实例:http://blog.csdn.net/iq...

2014-10-20 10:42:17 203

原创 ZooKeeper原理及使用

引用自:http://www.wuzesheng.com/?p=2609ZooKeeper是Hadoop Ecosystem中非常重要的组件,它的主要功能是为分布式系统提供一致性协调(Coordination)服务,与之对应的Google的类似服务叫Chubby。今天这篇文章分为三个部分来介绍ZooKeeper,第一部分介绍ZooKeeper的基本原理,第二部分介绍ZooKeeper提供的...

2014-09-30 14:04:29 117

原创 redis源码分析

转自: http://www.hoterran.info/ REDIS源代码分析 – HASH TABLEBy hoterran on 2011/06/21, 15:58hashtable的实现有很多,redis的dict.c 是其中之一。dict 包含了2个dictht hashtable ht[0], ht[1]。client版本的dict是没有dictht的概...

2014-09-29 11:41:03 225

原创 Apache common pool 原理剖析

引自:http://cwj158.iteye.com/blog/1356176 最近在做一个内部测试工具类的优化工作中接触到了连接池, 对象池技术, 将原有的未使用连接池的数据库访问操作改成连接池方式.性能有了非常大的提升, 事实证明, 经过两次改造, 原来一个比较大的测试类需要500多秒, 第一次优化后只需要300多秒, 第二次改用连接池之后同一个测试类只需要80多秒.下面是改造过程中...

2014-09-25 11:30:44 176

原创 Apache common pool 用法

Apache Common Pool的使用http://commons.apache.org/pool/examples.html<!--[if !supportEmptyParas]--> <!--[endif]-->Apache CommonPool包括很多已经实现的Pool,常用的Pool有GenericObjectPool,GenericKeyedOb...

2014-09-25 11:28:02 171

原创 Vim命令合集

Vim命令合集命令历史以:和/开头的命令都有历史纪录,可以首先键入:或/然后按上下箭头来选择某个历史命令。启动vim在命令行窗口中输入以下命令即可vim 直接启动vimvim filename 打开vim并创建名为filename的文件文件命令打开单个文件vim file同时打开多个文件vim file1 file2 file3 ...在v...

2014-09-23 10:34:01 162

原创 字符编码浅谈

转自:http://chengxu.org/p/519.html 一直就想写一点关于编码的东西,这一点点概念虽然很小,甚者你可以认为这很简单,但实际工作中发现,真正能把几种编码形式,从概念到应用理解清楚的,或者讨论问题中,能把编码这件事解释清楚的,真不多。于是花了周末的一个下午,把这点事儿简单写了写,结合自己工作中的认识,自认为算是说清楚了,贴出来与诸君共勉。所谓编码,其实就是一种信息的...

2014-09-02 14:21:36 117

原创 dubbo源码学习之服务Provider export

业务接口wrapper类:Class com.alibaba.dubbo.demo.DemoService$sw1{public Object getPropertyValue(Object o, String n){ com.alibaba.dubbo.demo.DemoService w; try{  w = ((com.alibaba.dubbo.demo.Demo...

2014-08-29 18:01:17 901

原创 sar命令详解

sar命令可以通过参数单独查看系统某个局部的使用情况sar 命令行的常用格式:sar [options] [-A] [-o file] t [n]在命令行中,n 和t 两个参数组合起来定义采样间隔和次数,t为采样间隔,是必须有的参数,n为采样次数,是可选的,默认值是1,-o file表示将命令结果以二进制格式存放在文件中,file 在此处不是关键字,是文件名。options 为命...

2014-08-29 13:55:53 211

原创 Wait-Notify机制

Wait-Notify机制可以说是实现阻塞操作较为高效的一种方式。虽然在实际中鼓励使用类库中已有的满足条件的类,或基于类库中的类来做满足自己特殊需求的开发,并不建议直接使用如此底层的机制,但了解其原理还是很有必要的。典型的Wait-Notify场景一般与以下内容相关:1、状态变量(State Variable)当线程需要wait的时候,总是因为一些状态不满足导致的。如往BlockingQueue...

2014-08-27 11:27:20 121

原创 java Lock 以及lockInterruptibly

Lock接口的 线程请求锁的 几个方法:lock(), 拿不到lock就不罢休,不然线程就一直block。 比较无赖的做法。tryLock(),马上返回,拿到lock就返回true,不然返回false。 比较潇洒的做法。带时间限制的tryLock(),拿不到lock,就等一段时间,超时返回false。比较聪明的做法。下面的lockInterruptibly()就稍微难理解一些。先说说...

2014-08-14 10:24:03 282

原创 MySql InnoDB 和 MyISAM优缺点比较

MySQL Engines: InnoDB vs. MyISAM – A Comparison of Pros and Consby YANG YANG on SEPTEMBER 2, 2009Tweet<iframe style="padding: 0px; margin: 0px; border-style: none; overflow: hidden; w...

2014-08-11 10:28:48 136

原创 JDBC mysql批量插入

使用JDBC连接MySQL数据库进行数据插入的时候,特别是大批量数据连续插入(10W+),如何提高效率呢?在JDBC编程接口中Statement 有两个方法特别值得注意:?1void addBatch() throws SQLExceptionAdds a set of parameters to this PreparedStat...

2014-08-11 09:10:36 138

原创 处理 InterruptedException

转自:http://www.ibm.com/developerworks/cn/java/j-jtp05236.html这样的情景您也许并不陌生:您在编写一个测试程序,程序需要暂停一段时间,于是调用 Thread.sleep()。但是编译器或 IDE 报错说没有处理检查到的 InterruptedException。InterruptedException 是什么呢,为什么必须处理它?对...

2014-08-04 17:45:59 113

原创 深入理解JVM 内存模型

我们知道,计算机CPU和内存的交互是最频繁的,内存是我们的高速缓存区,用户磁盘和CPU的交互,而CPU运转速度越来越快,磁盘远远跟不上CPU的读写速度,才设计了内存,用户缓冲用户IO等待导致CPU的等待成本,但是随着CPU的发展,内存的读写速度也远远跟不上CPU的读写速度,因此,为了解决这一纠纷,CPU厂商在每颗CPU上加入了高速缓存,用来缓解这种症状,因此,现在CPU同内存交互就变成了下面的样...

2014-07-20 11:54:01 213

原创 JVM实用参数(五)新生代垃圾回收

本部分,我们将关注堆(heap) 中一个主要区域,新生代(young generation)。首先我们会讨论为什么调整新生代的参数会对应用的性能如此重要,接着我们将学习新生代相关的JVM参数。单纯从JVM的功能考虑,并不需要新生代,完全可以针对整个堆进行操作。新生代存在的唯一理由是优化垃圾回收(GC)的性能。更具体说,把堆划分为新生代和老年代有2个好处:简化了新对象的分配(只在新生代分配内存...

2014-07-12 00:51:27 284

原创 JVM实用参数(四)内存调优

理想的情况下,一个Java程序使用JVM的默认设置也可以运行得很好,所以一般来说,没有必要设置任何JVM参数。然而,由于一些性能问题(很不幸的是,这些问题经常出现),一些相关的JVM参数知识会是我们工作中得好伙伴。在这篇文章中,我们将介绍一些关于JVM内存管理的参数。知道并理解这些参数,将对开发者和运维人员很有帮助。所有已制定的HotSpot内存管理和垃圾回收算法都基于一个相同的堆内存划分:...

2014-07-12 00:44:33 789

原创 JVM实用参数(二)参数分类和即时(JIT)编译器诊断

在这个系列的第二部分,我来介绍一下HotSpot JVM提供的不同类别的参数。我同样会讨论一些关于JIT编译器诊断的有趣参数。JVM 参数分类HotSpot JVM 提供了三类参数。第一类包括了标准参数。顾名思义,标准参数中包括功能和输出的参数都是很稳定的,很可能在将来的JVM版本中不会改变。你可以用java命令(或者是用 java -help)检索出所有标准参数。我们在第一部分中已经见...

2014-07-12 00:36:47 145

原创 JVM实用参数(一)JVM类型以及编译器模式

原文地址:https://blog.codecentric.de/en/2012/07/useful-jvm-flags-part-1-jvm-types-and-compiler-modes/译者:赵峰,iDestiny    校对:郭蕾现在的JVM运行Java程序(和其它的兼容性语言)时在高效性和稳定性方面做的非常出色。自适应内存管理、垃圾收集、及时编译、动态类加载、锁优化——这里仅...

2014-07-12 00:31:48 149

原创 gdb 命令脚本

作为UNIX/Linux下使用广泛的调试器,gdb不仅提供了丰富的命令,还引入了对脚本的支持:一种是对已存在的脚本语言支持,比如python,用户可以直接书写python脚本,由gdb调用python解释器执行;另一种是命令脚本(command file),用户可以在脚本中书写gdb已经提供的或者自定义的gdb命令,再由gdb执行。在这篇文章里,我会介绍一下如何写gdb的命令脚本。(一) 自定义...

2014-07-12 00:25:00 703

原创 java nio 入门

引自:http://www.ibm.com/developerworks/cn/education/java/j-nio/index.html在开始之前关于本教程新的输入/输出 (NIO) 库是在 JDK 1.4 中引入的。NIO 弥补了原来的 I/O 的不足,它在标准 Java 代码中提供了高速的、面向块的 I/O。通过定义包含数据的类,以及通过以块的形式处理这些数据,NIO 不用...

2014-07-10 19:11:38 115

原创 java util logging 使用

java.util.logging.Logger使用详解  java.util.logging.Logger不是什么新鲜东西了,1.4就有了,可是因为log4j的存在,这个logger一直沉默着,其实在一些测试性的代码中,jdk自带的logger比log4j更方便。 一、创建Logger对象 static Logger getLogger(String name)  ...

2014-07-07 11:39:56 115

原创 linux 调整CPU程序调度的几种方法

一,使用taskset充分利用多核cpu,让cpu的使用率均衡到每个cpu上#taskset-p,    设定一个已存在的pid,而不是重新开启一个新任务-c,    指定一个处理,可以指定多个,以逗号分隔,也可指定范围,如:2,4,5,6-8。1,切换某个进程到指定的cpu上taskset -cp 3 132902,让某程序运行在指定的cpu上taskset -c 1,2,4-7 ...

2014-07-03 09:32:56 1585

原创 tcpdump packet size limit问题解决

tcpdump常用命令;使用Wireshark查看数据出现"Packet size limited during capture"错误的解决方法例:tcpdump host 172.16.29.40 and port 4600 -X -s 500 tcpdump采用命令行方式,它的命令格式为:  tcpdump [ -adeflnNOpqStvx ] [ -c 数量 ] [ -F...

2014-06-30 20:01:02 1246

原创 tigase 服务器基本元素

本文翻译自 – http://www.tigase.org/content/basic-information 所有Tigase代码从逻辑上分为三个模块:components/plug-ins/connectors. component(组件)是tigase服务的主要模块。它使用大量的代码实现了“接收和发送stanzas(可以理解为各种各样的消息),可配置,并依据配置对大量事件做出应答”,它可以有...

2014-06-26 10:07:04 400

原创 tigase component (二)

除了直接使用在《Tigase如何创建一个新Component 第一部分》当中介绍的那些接口外,我推荐extend一些现成的抽象类,因为它们已经实现了大部分“繁琐和令人厌倦”的接口实现工作。这里有一个你可能会感兴趣的抽象类列表。tigase.server.AbstractMessageReceiver – 它已经实现了四个接口:ServerComponent,MessageReceiver...

2014-06-26 10:04:31 209

原创 tigase component (一)

本文翻译自 – http://www.tigase.org/content/basic-information下面是当你需要创建一个新的Component所需要关注的接口列表:tigase.server.ServerComponent – 这是一个非常基本的component接口。所有的component都必须实现接口中定义的方法。/** * Interface ServerCo...

2014-06-26 10:03:37 453

原创 log4j用法详解

引自: http://www.iteye.com/topic/378077 http://wenku.baidu.com/link?url=Sc-d2SNGIevHoy0W05tCSi5Rg5eDyVCxOGacXVnciHX2HISUxdMg68i6C4Z3hlsutDRzr8ZlPLqpmR7gkl4CvthuFC1_hjHq6ycA07FCgma  log4j是一个非常强...

2014-06-16 23:08:09 98

原创 Java中获取classpath路径下的资源文件

引自: http://blog.sina.com.cn/s/blog_9c7605530101gg9d.html ClassLoader 提供了两个方法用于从装载的类路径中取得资源:        public URL  getResource (String name);          public InputStream  getResourceAsStream (String ...

2014-06-16 22:55:42 260

原创 Zookeeper工作原理

引自:http://cailin.iteye.com/blog/2014486 ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,它包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。Zookeeper是hadoop的一个子项目,其发展历程无需赘述。在分布式应用中,由于工程师不能很好地使用锁机制,以及基于消息的协调机制不适合在某些应用中使用...

2014-05-12 23:30:09 77

原创 分布式服务框架 Zookeeper

参考:http://www.ibm.com/developerworks/cn/opensource/os-cn-zookeeper/      http://hadoop.apache.org/zookeeper/docs/current/      http://rdc.taobao.com/team/jm/archives/448 Zookeeper 分布式服务...

2014-05-12 23:27:01 100

原创 oracle工作原理摘录

引自:http://blog.sina.com.cn/s/blog_79921f110100xffb.html ORACLE工作原理1-连接我们从一个用户请求开始讲,ORACLE的完整的工作机制是怎样的,首先一个用户进程发出一个连接请求,如果使用的是主机命名或者是本地服务命中的主机名使用的是机器名(非IP地址),那么这个请求都会通过DNS服务器或HOST文件的服务名解析然后传送到OR...

2014-05-12 17:50:04 69

原创 Syn Flood 类型攻击的防护

Syn Flood 类型攻击的防护---------------------------------------SYN Flood攻击是一种典型的拒绝服务型(Denial of Service)攻击。所谓拒绝服务型攻击就是通过进行攻击,使受害主机或网络不能够良好的提供服务,从而间接达到攻击的目的。 SYN Flood攻击利用的是IPv4中TCP协议的三次握手(Three-Way ...

2014-04-17 11:01:42 556

原创 应用服务连接TIME_WAIT\CLOSE_WAIT状态

转自:http://blog.csdn.net/shootyou/article/details/6622226昨天解决了一个HttpClient调用错误导致的服务器异常,具体过程如下:http://blog.csdn.net/shootyou/article/details/6615051里头的分析过程有提到,通过查看服务器网络状态检测到服务器有大量的CLOSE_WAIT的状态。...

2014-04-17 10:47:42 182

原创 linux TCP相关系统参数优化

tcp_syn_retries :INTEGER默认值是5对于一个新建连接,内核要发送多少个 SYN 连接请求才决定放弃。不应该大于255,默认值是5,对应于180秒左右时间。(对于大负载而物理通信良好的网络而言,这个值偏高,可修改为2.这个值仅 仅是针对对外的连接,对进来的连接,是由tcp_retries1 决定的)tcp_synack_retries :INTEGER默认值是...

2014-04-09 17:58:00 152

原创 sendfile系统调用实现“零拷贝”

引自:http://blog.csdn.net/caianye/article/details/7576198 如今几乎每个人都听说过Linux中所谓的"零拷贝"特性,然而我经常碰到没有充分理解这个问题的人们。因此,我决定写一些文章略微深入的讲述这个问题,希望能将这个有用的特性解释清楚。在本文中,将从用户空间应用程序的角度来阐述这个问题,因此有意忽略了复杂的内核实现。什么是”零拷贝”为了...

2014-04-02 16:51:11 264

mysql批量操作shell脚本

这两天写了个mysql操作的shell脚本,主要用于mysql数据到内存数据库的批量transfer。当然适当修改可用于构造测试数据等~ #!/bin/sh if [ $# -ne 6 ]thenecho "usage:"echo "$0 {db_user} {db_passwd} {mdb_table} {tablenum} {mdbfile_dir} {odb...

2014-03-19 14:53:08 233

原创 scons取代makefile编译C/C++工程

介绍,scons用的是python语法。需要安装python和scons后才能运行,能够跨平台。比较automake自动生成makefile文件,scons可以认为直接是make的功能,因为只需要执行scons命令就等于执行了make的功能。现在有一个hello.c的文件。新建一个SConstruct文件,是一个python脚本文件。Program('hello.c') 编译he...

2014-03-12 16:21:09 797

空空如也

空空如也

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

TA关注的人

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