- 博客(79)
- 资源 (73)
- 收藏
- 关注

原创 dubbo学习过程、使用经验分享及实现原理简单介绍
一、前言部门去年年中开始各种改造,第一步是模块服务化,这边初选dubbo试用在一些非重要模块上,慢慢引入到一些稍微重要的功能上,半年时间,学习过程及线上使用遇到的些问题在此总结下。二、什么是dubboDubbo是阿里巴巴提供的开源的SOA服务化治理的技术框架,据说只是剖出来的一部分开源的,但一些基本的需求已经可以满足的,而且扩展性也非常好(至今没领悟到扩展性怎么做到的)
2015-02-01 01:25:38
81350
8
原创 性能调优通用逻辑
即 delta(use)/delta(rio+wio) %util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的。即 delta(use)/s/1000 (因为use的单位为毫秒)举例,如下是压权限链路线程dump的两个线程快照,且多次dump时有较多线程处于该位置waiting,再经代码逻辑发现是在等redis的response及反序列化执行结果,进一步排查redisson的线程发现较多堵在序列化,基本可以定位问题是redis存的单条数据过大。
2023-04-11 11:09:11
599
1
原创 压测调优之遇到的proxool问题
T4CPreparedStatement内存泄露现象现象200并发压测压10分钟左右内存吃满jmap -histo | head 20 发现有大量的Connection对象和T4CPreparedStatement以及部分Finalizer对象,dump下来分析发现Connection和PreparedStatement这些对象都是no gc root线程dump发现finalizer线程时常
2016-04-03 23:31:00
3910
原创 reviewboard svn post-review hook
需求希望每次提交到分支上的代码自动提交到reviewboard,通过svn post-review hook脚本实现调用rbt工具发起code review。改进过程python和svn绑定问题 运维同学在使用hook脚本时发现通过源码编译出来的python和svn无法关联使用,一方面是缺少python的svn库,另一方面是缺少相应动态库。 http://stackoverflow.com/q
2016-01-09 17:43:06
5416
原创 基于spring websocket+sockjs实现的长连接请求
1、前言页面端通常有需求想要准实时知道后台数据的一个变化情况,比如扫码登录场景,或者跳转到网银支付场景,在旧有的短轮训实现下,通常造成大量的不必要请求和查询,这里基于spring websocket+sockjs来解决该问题。2、websocketwebsocket是html5的一个新特性,目前oracle已经统一java websocket api,只要容器支持JSR356(tomcat7以上支持
2015-10-25 22:41:43
34860
3
原创 记一次tomcat web应用压测调优
前言 该tomcat web应用承担集团登录注册页面功能,对性能有一定要求,由于先前没有太多相关经验(只压测过一个dubbo服务),这次调得比较艰辛,便做个记录。调优过程 由于该次部署是两个不同团队的初次合作,起初没有给运维任何tomcat配置要求,同时也没留意去确认tomcat配置,这个导致了后续压测过程各种诡异的问题。a.在压测初期,持续请求10分钟左右出现无请求进来,netstat查看
2015-10-24 22:35:35
9997
原创 maven编译后资源文件内容发生变更问题随记
现象描述最近做的个功能需要将字体文件放入common.jar中提供读取加载字体,然后发现将字体放在web项目中编译出来的大小和common.jar编译出来的大小不同,而且放在common.jar中的无法被加载。初步猜测maven在编译过程对ttf文件做了什么手脚。解决然后一个个对比web项目和common项目的pom文件,把common多出来的build配置项一个个删除尝试,最后定为在<build>
2015-08-02 14:59:39
4311
原创 dubbo分线程池处理同一服务请求随记
前言 最近在看release it,第二章中的案例提到底层服务被数据库阻塞后把服务线程池全部占满并导致上层应用一直阻塞,结合自己部门的线上服务考虑,比如一个服务下会http请求外部应用,根据不同参数会处理时间长短会不同,这样考虑从dubbo中间层做一个保护,比如把处理时间会很长的这种参数的请求归类到一个线程池下,其他的归类到另外一个线程池下,这样即使处理时间长的请求一直阻塞起码不影响到其他的功能。
2015-06-28 19:52:11
11148
1
原创 CopyOnWriteArrayList中的set方法随记
最近一直在看并发编程网,这篇文章先记录下这个地方的理解。上下文环境移步CopyOnWriteArrayList类set方法疑惑?[java] view plaincopyprint?/** The array, accessed only via getArray/setArray. */ private volatile tr
2014-05-18 14:29:17
3030
原创 android抓包应用(基于root权限和tcpdump)
需求先前有些手机应用,想获取接口自动化拿些数据,比如说音乐文件自动下载之类的,或者手机网络游戏上自动化战斗什么的,有些ID或者会话ID时常变动,老是在连电脑用ADB来抓包太麻烦,就想着做个简单的抓包应用,至于抓到包后如何分析那就是根据不同应用有不同操作了,这个本文就不提了。实现本文题目也提到了,是基于tcpdump来实现,(不基于它还真不知道怎么做了,网络小白一个)
2013-04-22 21:32:09
6654
原创 JAVA APP——密码加密后端存储
一个简单的应用,从python回到JAVA,重新熟悉下JAVA,另外方面前段时间看完设计模式不用上的感觉很快就忘记了,想从设计及开发上多应用下。一、需求 平常注册的网站多了,或者小号或者账号等多了,主要怕一些网站明文传输的,很多密码都是临时的那种,但是后面要用又想不起来,故想做这么个简单应用本地将密码做RSA加密,然后根据网站域名和账号保存到远端存储上。本来是考虑用有道云笔记的
2013-04-21 22:42:19
5319
原创 java的new String(byte[]).getBytes丢字节现象
虽然这种应用情况极少,甚至基本不会出现,但还是记录下,加深下影响吧,避免以后犯2都找不到原因。参见:Why new String(bytes, enc).getBytes(enc) does not return the original byte array?也就是当你无法确认在指定编码下所有字节能够被识别,请不要使用new String来编码,否则导致不仅该字节丢失,甚至接
2013-04-06 18:17:31
5803
原创 freemarker模板解析----典型的访问者模式和解释器模式
折腾这篇文章也快一个小时了,转载请注明出处http://blog.youkuaiyun.com/zhouyuqwert/article/details/8682535最近因为一些需要,稍微学了下freemarker,基本使用算了解了,本以为模板解析方式同JSP相同,会先解析生成Servlet再仔细看了下源码,发现还是很大不同的,虽然最终也是解析成HTML,response.write出去,中间
2013-03-17 00:22:45
5570
原创 python-memcached并发调用get/set时出现RunTimeError:Second simultaneous read on fileno 8 detected.
出现异常如下 RuntimeError: Second simultaneous read on fileno 8 detected. Unless you really know what you're doing, make sure that only one greenthread can read any particular socket. Consider using a poo
2013-03-08 20:19:49
4067
3
原创 JAVA解析各种编码密钥对(DER、PEM、openssh公钥)
一、DER编码密钥对先说下DER编码,是因为JCE本身是支持DER编码密钥对的解析的,可以参见PKCS8EncodedKeySpec和X509EncodedKeySpec.DER编码是ASN.1编码规则中的一个子集,具体格式如何编排没有去了解,但最终呈现肯定的是一堆有规律的二进制组合而成。PKCS#8定义了私钥信息语法和加密私钥语法,而X509定义证书规范,通常都会用DER和PEM
2013-03-02 00:46:53
15593
原创 2012
今天,外面又开始飘小雪了,去年的这时候刚刚从淘宝实习回家,家里这时候应该冷不少吧。想想今年第一年出来工作,也是得记录下这一年都干了些啥了。在淘宝实习的两个月,这时候该说是前年的11月到12月了,学到不少,各种蹭课,现在能记得起来的也只剩下notify消息中间件了。但现在对比起来,在那个时候过得并不开心,只有师兄还有几个他的朋友稍微熟络一点,显得孤独了点。今年的上半年已是学生
2013-01-03 10:23:02
2146
原创 openstack单机ubuntu虚拟机环境安装部署经验及源码结构简单介绍(适合入门者)
参考:OneStack脚本本文主要关于近一个月对Openstack学习的一个总结,包括单机环境安装部署中出现的问题记录和源码学习的过程,适合入门者阅读。一、openstack安装部署目前看到的一个是官方的安装部署文档,一个是中文的OneStack脚本。根据两个文档都能在虚拟机Ubuntu环境搭建好环境,中间也许或出现某些问题,搜一下应该可以得到解决。因为OneStack的是中文
2012-08-19 23:01:25
6353
1
原创 CryptoAPI与openssl数字签名与验证交互
昨天写过了RSA非对称加密解密的交互方式,其实数字签名也是RSA非对称加密,只不过用私钥加密的,再加上个hash摘要CryptoAPI与openssl RSA非对称加密解密(PKCS1 PADDING)交互已经提到关于证书和私钥的数据以及对象获取,这里就不再重复讨论1.openssl的签名及验证void opensslSigner::sign(EVP_PKEY* evp
2012-04-16 21:06:06
5087
5
原创 CryptoAPI与openssl RSA非对称加密解密(PKCS1 PADDING)交互
(以下代码中都只做测试用,有些地方没有释放内存...这个自己解决下)1.RSA非对称的,首先提供一个供测试用的证书和私钥的数据1)pem格式的证书和私钥(公私钥是对应的)的base64编码void readPriKey(string &a){ a = "-----BEGIN RSA PRIVATE KEY-----\n"; a.append("MIICXQIBAAKBgQDT
2012-04-15 16:29:09
11641
11
原创 openssl与cryptoAPI交互AES加密解密
继上次只有CryptoAPI的加密后,这次要实现openssl的了动机:利用CryptoAPI制作windows的IE,火狐和chrome加密控件后,这次得加上与android的加密信息交互先前有说openssl移植到android的过程,这里就不再提android如何调用openssl了, 而那一篇第9条提到的openssl与cryptoAPI兼容的两种方式感觉实现都不
2012-04-02 22:01:47
5975
原创 NPAPI——实现非IE浏览器的类似ActiveX的本地程序(插件)调用
一.Netscape Plugin Interface(NPAPI)大致的说明可以看下官方文档Plugin本文主要针对于javascript与插件交互部分做一些交流,比如用于数字证书的操作(淘宝和支付宝的插件),用于播放的flash player插件等与javascript的交互需要用到NPAPI中的npruntime Scripting plugins下面的部分将以示例的方式
2012-03-23 20:33:21
16878
4
原创 struts spring mybatis maven随记
1.目前整合struts spring mybatis使用的pom配置(2012-3-17)版本一不多就各种问题了,在maven库上下了不少版本,总出问题,这次配好就记下来先<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" x
2012-03-17 11:41:40
3539
原创 TOMCAT使用CA签发证书配置单向和双向SSL
一.获取签发服务器证书以及CA证书1.创建本地证书密钥库以及密钥对 keytool -genkey -alias tomcat -keyalg RSA -keystore 在填写证书信息时,需要注意的是 "名字与姓氏" 或者 英文的"first- and lastname"填写服务器域名,比如填写localhost2.创建证书签发请求文件,里面包含了该文件的base6
2012-03-17 10:43:09
3720
原创 ActiveX打包cab实现浏览器提示安装注册控件
实验前提: 1. 有一个可注册的COM组件(如ActiveX)2. 最好能有一台Windows server 2003作为证书服务器,用来申请签名代码的证书(本例使用从证书服务器申请证书签名)3. 代码签名工具实验步骤:1.编写INF安装配置文件,没怎么研究过INF的写法就不在这里做过多说明,贴个示例; Sample INF file fo
2012-03-14 21:37:45
8468
原创 C++基于ATL工程编写安全的ActiveX控件
继前一篇关于ActiveX控件的博客之后,现在再增加一部分后续的问题如何编写一个安全的ActiveX控件ActiveX控件,用js调用时经常因为IE浏览器安全权限问题被阻止或提示等,先来看下IE权限设置,如下图,IE选项的安全标签,选择自定义级别,可以找到如下所示有一部分专门对ActiveX控件的设置,如果我们默认设置且编写一个未标记安全的控件,则会出现如下被禁
2012-03-04 15:58:26
4039
原创 Android appWidget——每日一句应用开发
放假回家后着实无聊了点,刚好小米到手就学了下android开发,做点自己需要的应用,纯Android新人,还请高手指点。 学习加上开发这个widget前后算起来也快半个月了,目前已有一个比较完整的功能,不过还有待增加功能与代码重构等,现在先放出这个版本与朋友们交流。 效果图、源码与apk文件放在最下面,有需要的朋友自行下载。 这次做的主要一个功能是
2012-01-16 18:16:42
3286
转载 Effective Java之接近理想的hashCode
注明:本文完全来自Effective Java,以后方便查看。理想情况下,一个散列函数应该把一个集合中不相等的实例均匀地分布到所有可能的散列值上。要想完全达到这种理想的情形是非常困难的,幸运的是,相对接近这种理想情形并不太困难。下面给出一种简单的“处方”。1.把某个非零数值,比如17,保存在一个叫result得int类型的变量中。2.对于对象中每一个关键域f,完成以下步骤:
2011-11-16 20:38:07
1549
原创 Spring MVC中DispatcherServlet工作原理探究
下面类图将主要的类及方法抽离出来,以便查看方便,根据类的结构来说明整个请求是如何工作的主要使用到的技术有Spring的IOC容器和Servlet。假如我们要实现一个请求home.htm然后返回home.jsp视图资源则当home.htm请求到达时,我们
2011-10-09 17:13:12
16158
原创 spring的JDBC框架中自增键的问题与cacheSize关系
public int nextIntValue() throws DataAccessException { return (int) getNextKey();}nextIntValue将调用getNextKey获取自增int值@Override
2011-10-04 12:12:22
2464
原创 Spring使用自动代理缺少asm包的问题分析
使用BeanNameAutoProxyCreator配置自动代理时如果某个bean没有实现任何接口,比如public classMyBean{}则会报错java.lang.ClassNotFoundException:org.objectweb.asm.Typ
2011-10-01 21:52:10
2547
原创 Spring的四种Advice源码探究
一、MethodBeforeAdvice的执行 this.advice.before(mi.getMethod(),mi.getArguments(), mi.getThis() );//调用before方法 return mi.proceed()
2011-09-30 11:53:23
2509
原创 Spring的MethodBeforeAdvice实现原理探究&&实现一个简单的Advice
一、类结构MethodBeforeAdvice整个过程大致就是使用的jdk提供的动态代理的接口InvocationHandler和Proxy所以首先在这讨论下动态代理在这里是如何使用的1、获得动态代理动态生成的类($Proxy0.class)参考博文:http
2011-09-30 01:16:09
7988
1
原创 spring源码探究---beanFactory为bean对象设置属性时涉及到的类型转换
自己想着实现一个简单点的类似Spring的beanFactory,解析下xml,通过反射调用相关的set方法来实现构建bean对象,其间遇到一个问题没找到比较好的解决方案。现在有一个简单的bean:public class MyBean{ private in
2011-09-24 11:18:18
1450
原创 win7申请高级证书时遇到正在下载ActiveX控件的问题解决
在Windows server2003做为证书服务器时,win7申请高级证书会遇到”正在下载ActiveX控件“,可能的原因是windows server2003未安装更新补丁。从以下网址下载补丁,在windows server2003上安装后即可解决,中文版的windows server2003记得下载中文版补丁。http://support.microsoft.com/kb/922
2011-09-21 11:38:07
4912
原创 struts2几种result type探究
可以在struts2-core-{version}.jar中找到struts-default.xml,里面列举了当前可以使用的所有result-type以及对应的class此处是struts2.2.3的
2011-09-10 16:16:12
6403
1
原创 JBPM5配置mysql持久化
参考博文:http://blog.youkuaiyun.com/dcl8261425/article/details/6575797首先需要安装JBPM5和MYSQL。。。。一、修改JBPM持久化相关配置文件1、jbpm-installer/db/hibernate.
2011-09-06 16:50:39
3569
原创 使用输出流解决在网页(JSP)中显示文档(PDF等)问题
今天看到个贴,问关于application/pdf的问题,感觉挺有意思的,顺便自己尝试了下下面给出具体代码在工程的web.xml中添加mime信息(读者可自行尝试更换成其他格式,比如word) pdf application/pdf 在servl
2011-09-05 00:14:39
3330
原创 Set接口的iterator方法源码探究
今天在学习nio的过程时,突然发现个小细节平时都没有注意到的,大家都知道Set接口中有一个iterator方法可以进行迭代,不过估计很多人都没有太注意Iterator接口的remove方法,该方法将移除迭代器中最后一个元素(即当前迭代器指向的元素)。那么我们在使用Set的
2011-09-02 23:53:01
1564
原创 serlvet生命周期学习笔记
serlvet生命周期应该是java web方向面试必考的问题吧!一、从API文档来看public interface ServletDefines methods that all servlets must implement. A servlet i
2011-08-24 16:07:51
1279
Android2.3.3 Jar包+源码+javadoc(chm)
2012-01-05
GroupPolicy C:\WINDOWS\system32\GroupPolicy
2011-09-29
Spring-framework-3.1.0.M2.chm api
2011-09-25
Spring-framework-3.1.0.M2.chm spring API
2011-09-25
java多人聊天室(简易版)
2011-08-17
cryptlib.chm
2011-07-18
guardianproject-openssl-android-1a3c579
2011-06-30
【eoeAndroid特刊】第14-17期(集合).rar
2011-05-20
【eoeAndroid特刊】第9-13期(集合).rar
2011-05-20
【eoeAndroid特刊】 第1-8期 (集合).rar
2011-05-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人