自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(95)
  • 资源 (3)
  • 收藏
  • 关注

原创 mac下安装thrift

使用brew安装使用brew install thrift会安装最新版本的thrift,目前是0.9。手动安装安装基本组件1、安装BOOST下载:http://www.boost.org/./bootstrap.shsudo ./b2 threading=multi address-model=64 variant=release stage inst

2016-02-27 16:00:46 1453

原创 问题分析-无界线程池误用导致OOM:java.lang.OutOfMemoryError:unable to create new native thread

背景在对线上查询接口进行压测时,当并发量上去后报出无法创建线程池的异常。分析之前的博客里提到,线程创建使用的不是堆内存,而是实际物理内存。由于没有对应用的线程数资源进行监控,同时也没有对当时的内存资源进行监控,所以只能根据应用的日志进行分析。通过查看异常栈,发现是某个线程池在开启一个新的线程时会报出该异常,并且该线程池使用的是无界线程池,也就是说,当执行的任务一直没有完成时,线程池会持

2015-12-27 17:20:22 5027

原创 kafka消息无法正常消费,且报异常:java.lang.IllegalArgumentException: Path must not end with / character

背景昨天同事在重启消费者进程后,导致后台消息无法正常消费,看日志,有报数据库的异常:org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection;另外偶尔还有kafka异常:java.lang.IllegalArgumentException: Path must not end

2015-12-02 15:04:46 12630

原创 [OOM]记一次线上OOM的问题

监控到系统OOM问题后,我们应该怎么去定位问题,怎么去解决问题呢?本篇文章以实际的场景为例,详细描述了解决问题的思路,供大家参考。各位读者可以进行评论,咱们一块探讨。

2015-10-29 16:59:41 1724

原创 spring同名bean覆盖问题

默认情况下,spring在处理同一个ApplicationContext中名称相同的bean时,分为两种情况处理:1、如果两个bean是在同一个配置文件中,那么spring会报错。2、如果两个bean是在不同的配置文件中,默认情况下,spring会覆盖先前的bean。在配置文件很多时,如果在启动时,对于同名的bean加载没有异常信息,出现问题后会比较难以定位。在spring中,处理

2015-10-22 16:19:04 13484 2

原创 问题分析:java.lang.OutOfMemoryError:unable to create new native thread

我们经常遇到的是堆内存、持久代内存溢出,今天将介绍一种新的OOM类型。同时附上分析问题以及解决问题的一些思路。

2015-09-08 09:52:35 2376

原创 线上问题分析:The target server failed to respond(目标服务器返回失败)

The target server failed to respond。问题分析的思路,理解HTTP协议、TCP协议等相当有帮助。

2015-09-07 17:57:13 56173 2

原创 Eclilpse导入maven项目,无法自动构建为java项目的问题

从git上下载一个maven项目后,按步骤导入后,发现无法正常展现为java项目。导入后只生成了.project文件,并没有生成.classpath文件。最后发现问题出在没有设置eclipse的maven的配置信息:settings.xml。设置一下就好了。

2015-09-07 08:57:34 1436

原创 kafka无法发送消息问题处理

往kafka发送消息时失败,抛出错误信息:kafka.common.FailedToSendMessageException: Failed to send messages after 3 tries。列出分析过程和解决方案,遇到问题的朋友可参考。

2015-08-27 10:56:10 8110

原创 类找不到问题追踪及分析

服务器有时无法响应,后台报出类无法找到。根据后台日志,从直观问题分析出深层次的原因。

2015-08-13 10:12:36 866

转载 Linux上的free命令详解

原文地址:http://www.cnblogs.com/coldplayerest/archive/2010/02/20/1669949.html  解释一下Linux上free命令的输出。  下面是free的运行结果,一共有4行。为了方便说明,我加上了列号。这样可以把free的输出看成一个二维数组FO(Free Output)。例如:FO[2][1] = 24677460

2015-08-04 15:36:27 429

原创 sql优化-分页查询效率慢的问题分析及处理

绑定参数的sql优化。避免sql层面进行参数运算。

2015-07-28 10:59:42 13921

原创 maven项目调试Junit类

maven项目提供了对单元测试类的批量执行功能,但有时我们想针对某个类进行调试,尽管这些类的配置可能依赖filter属性,也是可以进行测试的。方法:执行mvn install,将项目打包,然后再执行debug->junit,就可以正常调试了。

2015-07-24 15:42:25 997

原创 java.lang.UnsupportedClassVersionError

今天在用eclipse调试maven项目时,启动应用报错:java.lang.UnsupportedClassVersionError: **************** : Unsupported major.minor version 51.0****************为某个类路径。该问题是因为jdk版本原因造成的。class文件是以jdk1.7编译的,而我本地的环境是jdk1.

2015-06-11 17:01:05 666

原创 hibernate缓存介绍

在Hibernate中有三类缓存:一级缓存、二级缓存、查询缓存。本文将介绍这三类缓存的异同点。

2015-02-01 20:49:19 845

原创 hibernate关联关系映射

本文将以实例的形式介绍hibernate的几种关联关系映射:多对一、一对一、一对多、多对多。

2015-01-18 20:33:25 712

原创 web应用导致系统负载过高问题排查

在linux服务器上,用uptime、top查看系统的负载明显过高,经过排查,发现是因为代码中死循环造成的。具体的排查过程请参照本文。    使用top命令,发现load average指标值都在1附近,偏高。当然也可以用uptime。用top的好处是可以看到各个进程使用资源的一个排名。在top结果页面,输入P,以cpu消耗进行排名,发现有个java进程占用了98%的cpu资源。记下该进程的p

2014-12-26 11:35:36 5019

原创 hibernate---java.lang.UnsupportedOperationException: The user must supply a JDBC connection

hibernate抛出java.lang.UnsupportedOperationException: The user must supply a JDBC connection 异常处理

2014-12-21 18:46:35 2706

原创 memcached协议及命令详解(一)

在memcached协议中有两种类型的数据:文本行,非结构化数据。文本行用于从客户端发送命令或者从服务器端返回应答。非机构化数据是客户端想要存储或获取的数据。对于非结构化的数据,对于字符长度没有限制。但是这些数据的读取者(不管是服务器还是客户端)都需要知道数据块的长度(通过之前文本行传递该信息)。    文本行和非结构化数据均以\r\n为结束标记。数据块中可以记录\r、\n以及

2014-12-14 20:12:16 2497

原创 memcached内存管理机制详解

我们知道,memcached是一个内存缓存系统,因此对于内存的管理是需要使用者了解的。本文将对memcached的内存模型及管理机制做一个详细的描述。

2014-12-06 20:12:20 5296

原创 memcached服务启动及开机启动

将memcached作为服务启动,同时介绍如何设置成开机启动。

2014-11-30 14:23:49 8078

原创 认识linux系统服务(daemons)

linux系统服务(daemon)的系统介绍,包括服务的启动以及开机启动的设置。

2014-11-30 13:43:17 2721

原创 java对象锁

在进行多线程开发时,经常会用到同步锁:synchronized。该关键字可以使用在普通方法上,也可以使用在static方法上。这里叙述下这两种方式的区别,避免以后忘记。    我们都知道,每一个对象都有一个监视器。对于每一个类,有一个Class对象,也可以有该类的实例对象。如果synchronized放在普通方法上,线程在同步访问时,就会查看该类实例对象上的监视器;如果synchronized

2014-11-17 11:12:14 842

原创 redhat linux安装memcached

在redhat linux上安装memcached。

2014-11-15 14:22:48 4810

原创 redis预分片技术及实现

通常情况下,我们会建立多个redis实例来缓解单个redis实例的压力。但是,随着缓存数量的增加,对redis进行扩容是一件非做不可的事情。对redis进行扩容可以有多种办法,比如增加每个redis实例的最大内存。这只是解决办法之一,而且缺乏灵活性和可扩展性。在redis官网上,提到了预分片技术。本文将对预分片技术进行讲解,同时讲解jedis对分片是如何支持的。    一、redis预分片技术

2014-10-17 21:25:29 3287

原创 redis远程连接超时

用jedis连接远程的redis时,抛出连接超时异常:connect timed out。

2014-10-15 21:03:41 10996

原创 maven可选依赖(Optional Dependencies)和依赖排除(Dependency Exclusions)

我们知道,maven的依赖关系是有传递性的。如:A-->B,B-->C。但有时候,项目A可能不是必需依赖C,因此需要在项目A中排除对A的依赖。在maven的依赖管理中,有两种方式可以对依赖关系进行,分别是可选依赖(Optional Dependencies)以及依赖排除(Dependency Exclusions)。本文将对这两种方式进行讲解,以理解这两者的区别、使用场景以及如何配置。

2014-09-25 11:37:36 49895 4

原创 web应用不断创建新的session

为什么会不断创建新的session?不再是因为禁用cookie的原因。

2014-09-17 18:34:48 2403

原创 jconsole监控远程weblogic和tomcat

jconsole可以对远程主机上的java进程的内存使用情况进行监控。本文将主要讲解如何监控安装在sunos上的weblogic和安装在redhat上的tomcat。

2014-09-14 12:15:33 2203

原创 weblogic配置oracle数据库连接池

在weblgoic配置数据库连接池时,不能使用tns的service_name,er'ying

2014-09-12 15:33:45 1638

原创 eclipse使用maven插件(m2e)配置及运行web项目

maven是一个项目管理工具,它可以方便对项目进行管理。本文将介绍如何在eclipse环境下,使用maven对web项目进行配置,并在tomcat容器下进行运行及调试。

2014-09-08 19:10:40 8263

原创 jedis实现redis的消息队列、发布对象消息、字节数组与字符串相互转换

redis支持发布、订阅的功能,基本的命令有publish、subscribe等。在jedis中,有对应的java方法,并且只能发布字符串消息。为了传输对象,需要将对象进行序列化,并封装成字符串进行处理。将对象序列化后,只能成为字节流,如何封装成字符串是一个难点。

2014-09-04 15:31:17 8900 1

原创 单机部署redis主从备份

redis为了避免单点故障,也支持主从备份。个人在做主从备份的实验时,由于机器数量有限,一般很少有多台机器做支撑。本文就将叙述如何在一台电脑上实现redis的主从备份。

2014-08-31 14:40:36 1674

原创 AbstractQueuedSynchronizer(AQS)源码解析(一)

在JDK1.5版本,新增了并发包,其中包含了显示锁、并发容器。在这些锁和容器里,都有同步器(AQS)的身影。在AQS中,有三个组件:1、原子管理同步状态;2、阻塞线程或恢复线程;3、维护队列,其中包括同步队列及条件队列。为了更好地理解JDK的并发包,我会用三个主题来详细描述AbstractQueuedSynchronizer的实现。

2014-07-28 20:31:23 1606

原创 ExecutorCompletionService原理详解

在JDK并发包中有这么一个类ExecutorCompletionService,提交任务后,可以按任务返回结果的先后顺序来获取各任务执行后的结果。

2014-07-14 12:30:25 2454

原创 java序列化总结

今天对java序列化做个总结,具体

2014-05-23 14:37:56 711

原创 ThreadLocal类详解

众所周知,ThreadLocal对象可以每一个线程保存一份值,可以避免因线程间共享数据带来的问题。

2014-05-21 10:57:00 874

原创 监控线上系统异常日志

在监控线上系统时,需要实时监控异常日志信息。

2014-04-29 10:24:35 3114

转载 memcached缓存失效时的高并发访问问题解决

memcached一般用于在访问一些性能相对低下的数据接口时(如数据库),为了保证这些数据接口的稳定性,加上memcached以减少访问次数,保证这些数据接口的健壮性。一般memcached的数据都是定时失效的,当数据失效时一般会再次去访问取数据接口,然后将其更新至memcached中。这时就会有一个问题,当某个数据失效时,恰好同时有大量的客户端访问该数据,这时这些客户端都

2014-04-03 13:49:36 1185

原创 java基本类型

在java中,有八种基本类型,本文对这些类型做个介绍。1、布尔型boolean2、字符型char 占2个字节3、整型byte 占1个字节short 占2个字节int 占4个字节long 占8个字节4、小数型float 占4个字节double 占8个字节注意:1、因为java的平台无关性,所以这里能够明确指出每个类型占用字节数;2、

2014-03-21 11:48:13 1215

Mod_Proxy+Apache+Tomcat负载均衡与集群配置

Mod_Proxy+Apache+Tomcat负载均衡与集群配置,比较详细的配置资料。

2013-04-28

ibatis一对一、多对一示例

利用ibatis实现一对一、多对一的示例代码。每种关系用两种方式实现,具体的讲解可看我的博客http://blog.csdn.net/duwenchao1986/article/details/8565386

2013-02-02

图像匹配源程序-vc

用vc编写的图像配准源程序,比较好的东西!

2008-09-04

空空如也

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

TA关注的人

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