张孝祥专栏

以平常心工作,远离忧虑,除了让自己快乐,也要让别人快乐!

张孝祥ID:zhangxiaoxiang
549107次访问,排名73好友4人,关注者96
zhangxiaoxiang的文章
原创 129 篇
翻译 0 篇
转载 2 篇
评论 316 篇
张孝祥的公告
《深入体验Java Web开发内幕——高级特性》已经出版。 传智播客开展:先培训,就业后再还款活。详细信息查询:http://www.itcast.cn/goodnews.htm
最近评论
ghbjimmy:辛苦辛苦!
哪个成功者的创业史不是辛酸的?
加油加油,软件强国的思想我很赞同,中国就是在软件产业这方面和外国有差距。
ghbjimmy:辛苦辛苦!
哪个成功者的创业史不是辛酸的?
加油加油,软件强国的思想我很赞同,中国就是在软件产业这方面和外国有差距。
ghbjimmy:做人做事的态度让人敬佩,你一定会成功的。
ghbjimmy:说的很对,做事就要专心,我的毛病就是什么都想学,但是什么都学不好,希望以后自己能改掉这个毛病。
谢谢张老师。
ghbjimmy:说的很对,做事就要专心,我的毛病就是什么都想学,但是什么都学不好,希望以后自己能改掉这个毛病。
谢谢张老师。
文章分类
收藏
    相册
    传智播客原创教材展示
    培训
    《深入体验javaweb开发内幕——高级特性》出版啦!
    培训就业后还款计划正式启航
    良少的blog
    存档
    软件项目交易
    订阅我的博客
    XML聚合  FeedSky
    订阅到鲜果
    订阅到Google
    订阅到抓虾
    订阅到BlogLines
    订阅到Yahoo
    订阅到GouGou
    订阅到飞鸽
    订阅到Rojo
    订阅到newsgator
    订阅到netvibes

    原创 11月18日Spring mvc培训与听Sun公司讲座收藏

    新一篇: 11月19日spring mvc的表单处理的相关知识 | 旧一篇: 11月17日spring mvc入门培训

    controller返回ModelAndView,ModelAndView中的视图名称也要通过配置一个ViewResovler的Bean对象来进行解析。
    请说明你为什么不直接实现controller接口,而是继承AbstractController类的理由?这里面涉及了一个什么设计模式?
    MultiActionController有什么作用?在什么情况下使用?DisplaySortByXxx。
    什么情况下用BaseCommandController?当要请求参数自动包装成一个Command对象时。
    下午带着学员们去听了csdn与sun公司组织的技术讲座,下面是陈喆整理的笔记。
    1.SSO(Single Sign-on单点登录)
      单点登录功能使得用户只要登录了其中一个系统,就可以访问其他相关系统,而不用进行身份验证登录。目前开源社区已经有OpenSSO框架,源代码可以通过访问http://openSSO.dev.java.net获得。它提供安全身份管理的SSO功能。未来SUN的身份管理产品将基于OpenSSO。
    2.JAVAEE开发中的性能调优
      这里主要从三方面进行讨论:如何迅速定位、如何解决问题、调整步骤和过程。在具体定位方面,我们首先可以目测,以我们的知识经验来判断问题大致出现的范围。另外,我们可以用一些检测工具帮助我们检查WEB应用程序。例如IE插件HTTPWatch,它可以帮助WEB开发者检测:每个请求的响应时间、显示请求和响应消息、cookie等。

    一般大公司都有自己一套完善的日志记录系统,例如通过servlet Filter技术,处理时间大于多少秒的请求都记录下来。对于普通用户,也应该尽力完善自己所开发系统的日志记录功能。在产品开发测试阶段,我们通过压力测试各个模块,因此能了解到各个模块的性能情况,这样,在产品运营时,我们可以利用日志记录的各个性能情况对比压力测试的情况,很快的定位出出问题的模块来,甚至是具体的代码段。
         不少大公司里的千万级别用户访问的系统,经过分析后,往往发现SQL优化对整个系统的性能改善大有帮助。SQL调优主要关注点在如何避免FTS(全表扫描)。各个数据库提供商以及第三方厂商往往提供特定的数据库执行计划分析工具,以便DBA或程序员了解如何更好的优化。以下列举了几点常用的避免FTS的优化策略:
       *“null”VS null。数据库在查找目标记录时,如果某字段的记录里有null值(这里的null值指没有确定的空白值),会造成该字段的索引失去作用,一般的调优策略时,对于null的记录,采用“null”填充其值。这样,数据库会当它是有确定记录,而启用索引。
       *“>”or”<” VS “<>”。 “<>” 会破坏索引, 导致FTS, 应该使用“>”or”<”。
       *where子句的条件顺序也会影响的性能差别可以达到10至20倍的时间差距。
    以上是对于SQL优化的一些小总结。在用普通的策略不能搞定问题时,往往可以换个角度,采取非同寻常的策略。比如:
       *运行库与历史库分开。虽然在数据库表结构设计上认为会造成数据冗余,但数据访问量大时,运行库与历史库分开的确能造成性能的改善。
       *启动多个实例。一个服务器实例如果能支持500个线程访问,对于有多核的服务器来说,启用多个实例,让不同的CPU处理不同实例,这相当于群集服务器功能。3个实例就能支持1500个线程访问。
       *不要频繁的使用“昂贵”方式:如EJB,由于要实现本地和远程接口,消耗的资源大;而System.out.println(); 由于要把信息打印在控制台,其实也是相对消耗性能。对于数据库资源访问,连接池机制应该提倡使用。
       *HashTable与HashMap。HashTable由于实现了线程安全,比较消耗资源,对于基本没有并发访问的情况,应该使用HashMap代替。
       *数据传递中的压缩。尽管网络带宽越来越大,但对于大量的数据传送,还是要在发送端先压缩再传,在接受端,先解压文件,再试用。
     最后,列出了调优的步骤:分析症状——>重现症状——>性能调优——>测试——>测试成功的代码归并到产品中(失败的测试,迭代从性能调优阶段开始)


    学员们听完讲座后,更有信心了,这些东西我们几乎都讲过,有学员说这次讲座也就是复习了一下我们以前讲解的知识。现在学生们听的知识很多了,眼界也很开阔了,但动手能力并不强,所以,后阶段都是以学员们动手练习为主,讲课为辅了。
     

    发表于 @ 2006年11月21日 20:26:00|评论(loading...)|编辑

    新一篇: 11月19日spring mvc的表单处理的相关知识 | 旧一篇: 11月17日spring mvc入门培训

    评论:没有评论。

    发表评论  


    当前用户设置只有注册用户才能发表评论。如果你没有登录,请点击登录
    Csdn Blog version 3.1a
    Copyright © 张孝祥