- 博客(116)
- 资源 (29)
- 收藏
- 关注
转载 java concurrent
我们都知道,在JDK1.5之前,Java中要进行业务并发时,通常需要有程序员独立完成代码实现,当然也有一些开源的框架提供了这些功能,但是这些依然没有JDK自带的功能使用起来方便。而当针对高质量Java多线程并发程序设计时,为防止死蹦等现象的出现,比如使用java之前的wait()
2011-09-06 09:03:08
896
转载 apache 拒绝服务(DoS)漏洞警告修复方法
Apache项目日前发布警告:发现一个Apache http server的拒绝服务(DoS)漏洞,该漏洞可让攻击者轻松地让Apache软件拒绝服务。Apache指出,攻击工具正在坊间广泛流传,并且已经留意到一些活跃分子。漏洞影响到了Apache的所有版本。该攻击能够在远
2011-08-26 15:04:12
4168
转载 nginx 自定义 header
上周末收到安全组童鞋的邮件,说是输出的时候有安全缺陷. 表现是在IE8之下,如果内容中有脚本的话,就会被直接执行掉,那么如果有攻击代码,这就杯具了…. 之所以会在IE8之下出现这个问题,是因为IE8似乎支持个什么mhtml.可以直接解读一些base64之后的内容,同时还能解读邮件
2011-08-26 14:19:30
7085
转载 一位软件工程师的6年总结
又是一年毕业时”,看到一批批学子离开人生的象牙塔,走上各自的工作岗位;想想自己也曾经意气风发、踌躇满志,不觉感叹万千……本文是自己工作6年的经历沉淀或者经验提炼,希望对所有的软件工程师们有所帮助,早日实现自己的人生目标。本文主要是关于软件开发人员如何提高自己的软件专业技术方面的具
2011-08-18 08:38:01
1095
转载 JDK1.5中的线程池(java.util.concurrent.ThreadPoolExecutor)使用简介
JDK1.5中的线程池(java.util.concurrent.ThreadPoolExecutor)使用简介在多线程大师Doug Lea的贡献下,在JDK1.5中加入了许多对并发特性的支持,例如:线程池。一、简介线程池类为 java.util.concurrent
2011-08-09 21:45:02
2899
转载 BeanUtils代码改写成BeanCopier时出现的问题
错误案例 短信平台大量的使用到了org.apache.commons.beanutils.BeanUtils的copyProperties(Object dest, Object orig)方法。而这个方法存在性能问题,在性能优化小组的建议下改使用net.sf.cglib.bea
2011-07-20 08:51:16
5646
原创 Installation on RedHat Varnish
Varnish is distributed in the EPEL (Extra Packages for Enterprise Linux) package repositories. However, while EPEL allows new versions to be
2011-07-19 13:50:54
687
转载 session详解
目录:一、术语session二、HTTP协议与状态保持三、理解cookie机制四、理解session机制五、理解javax.servlet.http.HttpSession六、HttpSession常见问题七、跨应用程序的session共享八、总结参考文档一、术语session在
2011-07-14 19:04:15
685
转载 HTTP协议详解(真的很经典)
转自:http://blog.youkuaiyun.com/gueter/archive/2007/03/08/1524447.aspxAuthor :Jeffrey引言 HTTP是一个属于应用层的面向对象的协议,
2011-07-14 10:49:49
827
转载 深入了解DCL
1.什么是DCL DCL:double-checked locking 中文一般译为“双重检查锁” 通常其代码形式如下: class SomeClass { private Resource resource = null;public Resource getResource
2011-07-13 09:33:09
996
转载 特殊类目校验导致求购Offer发布抛NPE
错误严重度 故障C 错误案例 现象描述:新发求购Offer时发现保健食品二级类目下的一些Offer无法发布、而其他类目的求购Offer及所有供应Offer都能正常发布错误分析 保健食品二级类目下的供应信息发布时要做一些特殊校验、如国家颁布的批准文号要符合特定的格式才是合法的,在这
2011-07-13 08:30:46
574
转载 调用搜索引擎产生的性能问题
错误严重度 事故级或故障 A 错误案例 【现象描述】 offer管理页面搜索需求中,调用Offer搜索APi时一次返回1000条Offer,在并发量多的时候,导致应用服务器等待,load增高。 【错误代码】 offerParam.setCount(1000);错误分析 在调用O
2011-07-13 08:26:27
548
转载 日志打印
错误严重度 故障C 错误案例 多线程日志输出 在一个比较长的业务日志中,采用普通的Logger.info(“xxxx”);打印多条记录。 错误分析 多线程日志打印过程,虽然logger本身是线程安全的,但在多线程模式下记录业务日志就会出现混乱。很不利于后续的日志分析 正确用法 多
2011-07-13 08:23:31
608
转载 过滤HTML标签导致死循环
错误严重度 故障A 错误案例 以下是资讯VCUtil.java类里面一个同事加的一个方法,而这个类又被在页面上广泛使用。 //去掉单引号、双引号和红色htmltag public static String filterToHtml(String str){
2011-07-13 08:20:39
1536
转载 Jdk中 String类的getBytes方法的编码问题
错误案例 这几天生意经的taglist的页面上一直存在缓存不一致的情况,而在本地调试始终不能重现线上的问题。 系统中出现了这样一种情况:在我们新增“doclist_84_饮食健康”的静态位的时候提示已经存在,但在memcached中并不存在。 查看代码发现在把一个key放到Mem
2011-07-13 08:16:11
1994
转载 Java字符转义问题
错误案例 图片验证在url包含特殊字符比如”abc%2B”的情况下始终无法通过 错误分析 开始以为是验证码服务器的问题,结果和平台那边联调的时候发现我们传过去的abc%2B 变成了abc%252B,这个当然有问题,我们起初认为了httpclient的版本问题,我们怀疑httpcl
2011-07-13 08:13:34
1733
转载 Collection转换为数组时的API使用不当
错误严重度 性能问题 错误案例 【现象描述】 【错误代码】 (不算错误,只是性能低下) String[] mids = (String[]) list.toArray(new String[0]);错误分析 请阅读 AbstractorCollection中的 public
2011-07-13 08:11:35
562
转载 JAVA内存泄漏
错误严重度 如果内存泄漏面积过大,将会导致B类或A类故障 错误案例 public class Stack{ private Object[] elements; private int size = 0; public Stack(int i)
2011-07-13 08:08:37
482
转载 代码里直接返回对象造成的可读性、扩展性以及性能问题
错误严重度 不会引起较大故障,但对代码可读性、扩展性以及性能会产生一定影响 错误案例 代码里直接返回值,例如获得一个boolean值,例如: ……return true;或者return false;……错误分析 一般来说,类可以提供一个公有的静态工厂方法,所谓静态工厂
2011-07-12 08:51:02
794
转载 高性能的数据查找方式
错误案例 当我们需要从一些会员中查找指定的会员,并且根据这个会员的属性做些操作。或者类似的数据筛选情况下。例如: List results = searchResultList();//此时查询出的结果是1000,并且每个对象比较大String [] names = {"gar
2011-07-12 08:43:27
742
转载 List对象的空指针问题
错误案例 【现象描述】 抛出空指针异常。 【错误代码】 List offerIDList =loadOfferIDList()//(null);for(Long offerID:offerIDList){ ......}错误分析 空值针异常出现的原因主要是遍历列表对
2011-07-12 08:36:28
2196
转载 两个对象比较大小时出现的问题
错误案例 【现象描述】 两个Integer类型的数据,进行大小比较,发现无法进行正确的比较 【错误代码】 Comparator c = new Comparator() { public int compare(Integer i1, Integer i2) {
2011-07-12 08:31:25
830
原创 对象相等判断时,覆写equals方法时同时覆写hashcode方法
错误案例 【现象描述】里面判断容器应该要包含的对象,实际上却没有 【错误代码】 class T { private String str; T(String str) { this.str = str; } public boolean equals(
2011-07-12 08:26:55
722
转载 不可变类型
错误案例 【现象描述】用BigInteger相加,永远返回0 【错误代码】 BigInteger total = BigInteger.ZERO;total.add(new BigInteger("1"));total.add(new BigInteger("10"));S
2011-07-12 08:18:54
876
转载 返回空list的方式
错误案例 代码中需要返回空list时,一般会采用的方式: public List returnEmptyList(){ return new ArrayList(); }错误分析 public static void main(String[] ar
2011-07-12 08:16:57
16546
原创 不能在finally块使用return
错误案例 【现象描述】 try-catch块中永远返回finally中return的值【错误代码】 static boolean f() { try { return true; } finally { return false; }}错
2011-07-12 08:11:45
967
转载 利用squid反向代理提高网站性能
本文在介绍 squid 反向代理的工作原理的基础上,指出反向代理技术在提高网站访问速度,增强网站可用性、安全性方面有很好的用途。作者在具体的实验环境下,利用 DNS 轮询和 Squid 反向代理技术,实现了网站的负载均衡,从而提高了网站的可用性和可靠性。现在有许多大型的门户网站如
2011-07-11 16:48:07
711
转载 使用Nginx的proxy_cache缓存功能取代Squid
Nginx从0.7.48版本开始,支持了类似Squid的缓存功能。这个缓存是把URL及相关组合当作Key,用md5编码哈希后保存在硬盘上,所以它可以支持任意URL链接,同时也支持404/301/302这样的非200状态码。虽然目前官方的Nginx Web缓存服务只能为指定URL或
2011-07-11 16:40:38
547
转载 Nginx+Squid+Apche 负载均衡配置示例
最近研究nginx在负载均衡上的配置,下步网站的整体架构有可能要适当的调整下,使用nginx在最前端做负载均衡,中间放多个squid缓存节点,为最后端的图片服务器提供高速缓存,从而大大提高网站打开的响应速度;下面介绍下在kvm环境下的大致部署步骤和配置,负载均衡器方面也可以使用l
2011-07-11 16:35:22
777
转载 nginx+squid+apache web架构
我们公司采用的web架构师nginx+squid+apache,其实大家很费解为什么要这样的组合,我的理解是:1:nginx实现了代理的作用,区分动态请求和静态请求.2:nginx在处理静态请求的时候,能够hash请求地址,最终请求到特定的squid服务器上,实现了一个squid
2011-07-11 15:52:29
1335
转载 字符串和多个char类型的字符相加比较问题
错误案例 【现象描述】表面看上去内容一样的字符串和单个字符拼接比对,结果永远为false 【错误代码】 "34".equals('3' + '4') 错误分析 当且仅当+操作符的操作数中至少有一个是String类型时,才会执行字符串连接操作;否则,执行加法。 如:在本例中'3'
2011-07-11 09:05:37
1071
转载 使用JDK的新特性遍历list中所有数据
错误案例 下列代码没有问题,但是这是一种老的写法,缺点是: 1、可读性不够好。 2、在list边界上容易遗漏:for循环中一定要考虑i=0开始 。 3、显示的方式把list中的元素转换成T类型。 List list = new ArrayList();for (int i =
2011-07-11 09:03:27
801
原创 Io流关闭问题
错误案例 常见的一种写法,针对每个catch都进行一次io流关闭。在关闭过程也未进行io流的空值判断。 try{ URL url = new URL("http://pm.china.alibaba.com/" + memberId); URLConnection c
2011-07-11 08:56:31
1784
转载 价格精度问题
错误案例 (int)(Float.parseFloat(price)*100) 这样处理,对于8.90这样的价格会转化成889,实际应该是890才对 (int)(Double.parseDouble(price)*100) ,对于8.90转化的结果是对的,但是对于 1.15会把它
2011-07-11 08:54:29
1452
原创 循环体内包含了大量没有必要在循环中处理的语句或获取数据库连接或进行不必要的try-catch操作
错误案例 public class CheckCycle{ public void cycleInfo() { String[] Str = null; //获取各个部件的通知地址 Str = outNotify
2011-07-11 08:48:26
1494
原创 数据库操作、IO操作的资源没有及时释放
错误案例 public class ReleaseRes{ public void releaseDB () { Connection conn = null; APLResultSet rs = null; St
2011-07-11 08:42:07
2697
转载 清除排行榜缓存任务中,做循环处理时,每次都需要抓住异常记录日志
错误案例 for (String key : keys) { memberTopRankCache.remove(key); //这里可能抛出异常 log.info(key + " removed.");}错误分析 使用场景是批量处理业务过程中,有一个失败
2011-07-11 08:37:41
670
转载 数据流的读取
错误案例 现象描述:零批II期中在对支付宝进行回调的过程中发现经常性的有支付宝返回数据解析不完整,经过检查发现如下错误代码: InputStream is = postMethod.getResponseBodyAsStream();byte[] bytes = new byt
2011-07-11 08:35:39
1665
转载 异常的错误使用导致性能问题
错误案例 现象描述: String strValue = (String) source; try { return new Integer(strValue); } catch (Exception e) { try {
2011-07-11 08:19:59
700
转载 Java代码不允许使用中文
错误案例 举例来说,如果我们应用涉及诚信通销售的中文信息散布在各处、,有一天我们对诚信通价格做了调整,那势必要查询所有代码,一旦有一处漏改,被很多用户看到,对用户和公司都会带来不良的影响。 错误分析 if(topDomainSelection.equals("请选择一个顶级域
2011-07-11 08:16:22
1937
Web协议与实践
2012-08-26
Pro HTML5 Programming, 2nd Edition
2012-03-06
HTML5 Games
2012-03-06
深入浅出JavaScript
2012-01-09
高性能JavaScript
2011-12-26
高性能 HTML5
2011-12-23
使用 HTML5 WebSocket 构建实时 Web 应用
2011-12-23
CSS权威指南
2011-12-19
《锋利的jQuery》(高清扫描版-有书签)
2011-12-19
HTML5高级程序设计(完整版)
2011-12-16
精通CSS:高级Web标准解决方案【PDF】
2011-12-16
Android pdf高级编程
2011-12-15
ISO9001StandardsModel
2010-03-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人