- 浏览: 286947 次
- 性别:
- 来自: 杭州
最新评论
-
sjx19871109:
有一个疑问,博主在做循环的时候,for(int i=0;i&l ...
ArrayList:用add代替remove -
剑锋凛冽:
不错,看了很有帮助。但有个概念不是很清楚,锁投票是什么?
java中的lock和synchronized -
星期扒的幻想:
学习了,了解了
Solr增删改查 -
programming:
很蛋痛的webx 工程与jarsource编码不一直,相关 ...
Webx3 -
xjt927:
...
Solr增删改查
文章列表
Tomcat 7 的七大新特性
我转自:http://www.iteye.com/news/17928
Tomcat的7引入了许多新功能,并对现有功能进行了增强。很多文章列出了Tomcat 7的新功能,但大多数并没有详细解释它们,或指出它们的不足,或提供代码示例。本文将明确 ...
职业方向的选择
在阿里技术人员的发展一般可以有三个方向,项目经理、架构师和专家。每个方向之间不存在好与坏的可比性,每个方向走下去都是一片广阔的天地,关键看自己是否适合,只有适合自己才能走得顺畅。 ...
浏览器内存泄漏问题的跟踪与解决 收藏
在Ajax盛行以前,浏览器内存泄漏不是什么大问题,因为都是通过页面跳转和刷新来进行与服务端的交互,而现在情况不一样了,很多应用广泛应用Ajax和iframe,结果内存泄漏成了很多富客户端应用的隐患。比如我现在参与的项目长期以来一直深受内存泄漏问题的困扰,测试人员常常抱怨,因为他们是使用软件最多的人员,常常几个小时后的点击就让浏览器占用的内存达到几百M,有时甚至到G,但我们开发人员始终没有很好解决这个问题,归结其原因,主要是开发人员没有关注内存泄漏的意识,开发时只管功能实现,不管是否造成了内存泄漏,但问题积攒到一定级别时,解决问题的成本就不小了。同时,检测内 ...
一些牛人的心得
牛P的经验、经历、感受分享
刘加伟:
1. 做为技术方面的大牛/专家,一路走来,你最大的感悟和收获是什么?
只有努力, 并且相信自己, 你才能获得一点一点技术上的成绩.
2. 因为做技术的平时都喜欢熬夜、加班,在家庭和工作之间时间你是如何分配的?
毕业前四时候, 我几乎是全身心的投入技术的学习中, 通过不断的吸取各种计算机方面的知识, 为后来的工程实践中积累了较多的知识. 因此成家后, 我感觉还是比较轻松, 大部分的工作都不需要加班就能完成.
3. 在技术方面你通常给自己设定方向和目标吗?
给自己的目标很简单, 在工作上,不会因为技术问题而变得束缚手脚 ...
Tomcat源码分析(一)------ 架构 收藏
废话少说,拉代码,导入eclipse开干,具体步骤可以参考http://hi.baidu.com/hateeyes/blog/item/7f44942a20ad8f9d023bf66d.html
下面谈谈我对Tomcat架构的理解
总体架构:
•面向组件架构
•基于JMX
•事件侦听 ...
Tomcat源码分析(二)------ 一次完整请求的里里外外 收藏
前几天分析了一下Tomcat的架构和启动过程,今天开始研究它的运转机制。Tomcat最本质就是个能运行JSP/Servlet的Web服务器 ,因此最典型的应用就是用户通过浏览器访问服务器,Tomcat接收到请求后转发给Servlet,由Servlet处理完后,把结果返回给客户端。今天就专门解析一下这么一个完整的请求的内部机理。
通过DEBUG,一路跟下来,发现Tomcat处理请求的核心过程是以下几点:
•启动的时候启动预支持协议的Endpoint,Endpoint会起专门的线程监听相应协议的请求,默认的情况下,会启动JI ...
AOP是Spring的核心,Spring不但自身对多种框架的集成是基于AOP,并且以非常方便的形式暴露给普通使用者。以前用AOP不多,主要是因为它以横截面的方式插入到主流程中,担心导致主流程代码不够清晰,定位问题不够方便,而在计费二期的项目里需要一个很适合用AOP来做的功能,就是要把对外接口和所调用的外部接口的耗时时间给记录下来,这个需求主要来自于计费一期的联调,常常发生系统间交互不够顺畅的情况,这就需要看每个接口调用时间来判定是谁的问题。
计费中心是整个后台系统的中间环节,与其他系统交互很多,这样的接口也很多,如果在每个接口的调用前后加时间记录比较繁琐,也影响主流程代码的美观,因此比较优雅的 ...
著名科技博客网站TechCrunch昨天发文,综述了2010年最受关注、最具影响力的十项技术。其中多项技术均与Google、移动应用和社交网几个关键词关系密切。下面是此文的编译,其中有CSDN记者的点评。
1. 平板电脑
关于苹果平板电脑 ...
构建高性能web之路------web服务器长连接
web服务器都提供长连接的方式,所谓长连接就是客户端一次请求完后,不关闭连接,保持一段时间的连接,下次此客户端再次请求时,不用创建新连接,复用所保持的连接即可。从理论上,长连接可以免去大量建立和关闭连接的资源消耗,但同时也有大量连接被占用的代价。因此可以初步判断长连接比短连接能带来更高的TPS,更低的CPU消耗,更少的IO,更高的内存占用,下面通过实战来验证。
服务器环境和测试工具可以见工具和环境准备篇
本次web服务器选用apache prefork模式,apache长短连接的选择可以配置httpd.conf里的KeepAlive选项 ...
一个完整的mysql读写分离环境包括以下几个部分:
•应用程序client•database proxy•database集群在本次实战中,应用程序client基于c3p0连接后端的database proxy。database proxy负责管理client实际访问database的路由策略,采用开源框架amoeba。database集群采用mysql的master-slave的replication方案。整个环境的结构图如下所示:
实战步骤与详解
一.搭建mysql的master-slave环境
1)分别在host1(10.20.147.110)和host2(10.20.14 ...
1. 做事 2. 欲速则不达 3. 对事不对人 4. 排除万难,奋勇前进 5. 跟踪变化 6. 对团队投资 7. 懂得丢弃 8. 打破砂锅问到底 9. 把握开发节奏 10. 让客户做决定 11. 让设计指导而不是操纵开发 12. 合理地使用技术 13. 保持可以发布 14. 提早集成,频繁集成 15. 提早实现自动化部署 16. 使用演示获得频繁反馈 17. 使用短迭代,增量发布 18. 固定的价格就意味着背叛承诺 19. 守护天使 20. 先用它再实现它 21. 不同环境,就有不同问题 22. 自动验收测试 23. 度量真实的进度 24 ...
最近在学习公司的框架最新版本,里边的spring容器运用了大量的Schema自定义配置支持。特地找来一篇某大牛写的关于Schema的文章(http://blog.csdn.net/cutesource/archive/2010/09/05/5864562.aspx
)。
在很多情况下,我们需要为系统提供可配置化支持,简单的做法可以直接基于Spring的标准Bean来配置,但配置较为复杂或者需要更多丰富控制的时候,会显得非常笨拙。一般的做法会用原生态的方式去解析定义好的xml文件,然后转化为配置对象,这种方式当然可以解决所有问题,但实现起来比较繁琐,特别是是在配置非常复杂的时候,解 ...
Struts的处理页面请求的过程
今天下午再看我们公司的框架源码,突然想和struts对比一下,特地写此博客,先把struts的页面请求过程温习一下子。
作用:struts 负责 web层. 要理解Struts-config.xml文件,弄清楚struts处理页面的过程。 下面为客户点击或提交form到服务器端处理,得到响应的过程 如提交×××Action.do后 1)查找servlet Servlet容器在web..xml文件中寻找url-pattern属性为*.do的<servlet-mapping>元素:
Java代码
<servlet-mappi ...
getMethod()和invoke()方法应用
一个简单的需求的实现:在程序中调用某类的某方法,并将返回结果println() 出来。实现方法:MethodTest.java
import java.util.ArrayList;import java.util.List;import java.lang.reflect.Method;import java.lang.reflect.InvocationTargetException;/** *//**
jdk1.6 ConcurrentHashMap
Concurrent包,鼎鼎大名的Doug Lea开发的。让我来好好向大师学习学习。
HashMap在单线程时效率非常高,但多线程环境下会出现许多问题。
HashTable支持多线程,但每个操作都会锁住整个 ...