about meWedia Ajax
Blog Pro2.01开发告完成 ... Bing ... Diary ... 3 /1003 ... 1 year 6 months ago
此次酝酿已久的BlogPro2.01终于开发完成,相对于上次的BlogPro2.0,这次主要是将数据库移植到了SQLServer2005,并对SQLServer2005的数据查询做足了优化,并将Lovan's Blog 改称了Bing's Blog,同时我的英文也改称Bing。这是我美国的同室的建议,因为在Bing在美国那边是比较酷的一个名字,并且他们说Lovan并不能确切地知道你是谁,姓什么,相比之下,他们更喜欢叫我Bing,因而我也就换了(呵呵,是不是太缺乏主键了)。下面说说这次改版已具备哪些新特点吧。

  1. 数据访问速度的提升。经过我的测试,在Access里面,从访问开始到页面生成(80条数据邦定,包含一个Text)的平均时耗是164.78ms,而SQLServer2005是61.10ms,也就是在数据访问层方面的速度的提升将近3倍,数据访问已不是影响速度的瓶颈。同时这次我花费了半天的时间重新设计了数据库,力求最大限度的提升访问速度。用SQLServer2005还有个好处就是可以返回多个查询,在Access上一个Procedure职能返回一个查询结果集,但是SQLServer2005却能返回多个,这样减少了与数据库的连接,因而减少了访问次数和不必要的资源损耗。
  2. 站内信息统计功能的完善。现在站内的信息统计比以前多了不少信息,除传统的Articles、Comments、Views、Visits、UsersOnline外,又增加了MaxUsersOnline、MaxUsersOnlineDate和GustMessages三个统计。
  3. HotArticles模板算法的改进。最开始的HotArticles选择的根据是Views的次数来的,后来考虑到新加的文章肯定在Views上要少的多,因而每落后一天Views减少5次,但是还是不对,5并不是一个可变的数字,而是一个经验数据,并不准确。现在改的方式是找到访问量最大的文章,然后将其发布日期减去现在的日期得到的天数使其Views归为零,然后其余的文章的Views发生相应的变化,确保数据的排列的准确性,并减少了对服务器端资源的损耗。
  4. 搜索功能的改进。以前的搜索只能找到相似的文章,但并不能对找到的文章进行匹配排列,还相当的耗资源。现在的搜索是使用FullTextSearch+GetSearchContent自定义搜索字符串完成的,除了减少资源的损耗外,还增加了匹配排序的功能,按匹配程度大小来排列,并且在速度上要快的多。
  5. 回传数据的减少。由于Access一次职能返回一个数据,于是不得已要使用不少ViewState来保存数据,因而增加了进1K的回传,这次将其减少到了上100Byte,同时改进了回传数据的算法,减少了不必要的数据垃圾。
  6. 增加了更多的链接。比如您可以通过以下链接:http://www.wubingstudy.com/?id=83 ,访问到具体的文章,通过这个链接http://www.wubingstudy/?m=quickview ,访问到具体的某一个功能栏。还有别忘了有http://www.wubingstudy.com/Rss.aspx 的RSS阅读器。
另外介绍一下和上次版本的本质差异:
  • 桌面化。现在的Blog正如您所见,整个Blog完全没有刷新,无论您从什么地址访问近来,都是纯桌面化的操作。
  • 无控件化。以前的Blog都是使用控件开发的,而现版的Blog是没有使用一个控件开发完成的,虽然感觉像回到了ASP的时代,但是却是纯OOP的开发,并且对资源的损耗减少到了最低。
  • 界面的改善。说到设计我一直有点头痛,我的逻辑能力要远甚于我的设计能力,虽然我一开始是搞多媒体的,不过最近对设计越来越有感觉了,做的东西也越来越Professional了(呵呵,自我陶醉一下...)。这次Blog的界面我还算满意,不过还是感觉不太好,尤其是看文章的时候眼睛会觉得有点累,估计要等到下一个界面做出来后再解决了。
好了,要介绍的就这么多了。其实还有很多开发经验想给大家分享的,限于时间不够,还是以后再慢慢罗列出来吧。对于这次的Blog数据库的转移并不是一件轻松的事,数据转换就存在一定问题,同时整个数据访问层、数据执行层、实体层都发生了质的变化,因为以前的是OleDb,现在是SqlClient,以前一次只能返回一个数据,现在一次能返回n条数据,因而逻辑层也发生了不少变化。但总的来说我还是在不到一天的时间里完成了,一下午 + 一整夜 + 一下午,共20小时,第一次感觉到技术成熟后的快感和敏捷。最先开发的第一个Blog用时一整个星期,并且功能相当不齐全,其后共经历了N次改版,总共加起来达到15次,最近这一次作了相当长时间的准备,包括学习SQLServer2005、Ajax,分析MagicAjax、Atlass,然后开发WediaAjax、在线编辑器、RSS控件,创立无组件开发模式...准备了将近6个月,这次是我将T-SQL、ASP.NET2.0、Ajax、CSS和XHTML发挥到极致的成品。Blog的开发还会继续下去,不过估计要等上一段时间了,现在的运行已经相当稳定,性能也比较满意了。欢迎大家的继续关注,如果有什么问题可以给我发Email或在上面留言。
Bing ... 1 year 6 months ago
To daiwen:
    Thanks for your suggestion. I just changed the line-height to 20px. It looks much better now. The source code you need has been sent to you emai. Please Check it.

To lijinbai:
    I will try to show it to all of you. But for the reason of limited time. Maybe I will put it some time later. Thanks
daiwen ... 1 year 6 months ago  
把文章样式的line-height和 letter-spacing调大一点,看起来会舒服一些.
lijinbai ... 1 year 6 months ago
恭喜啊,能不能把你的博客系统中部分代码讲解给大家,尤其是你自己用无组件开发的地方。
Name*
Email
Website
BoldItalicUnderlineJustify LeftJustify CenterJustify RightIndentOutdentBulled ListNumbered ListInsert LineCreate LinkUnlinkInsert Face
Submit