??xml version="1.0" encoding="utf-8" standalone="yes"?>sm性调教片在线观看,日本一区二区在线播放,在线天堂视频http://www.aygfsteel.com/pesome/archive/2007/03/11/103175.htmlpesomepesomeSun, 11 Mar 2007 14:54:00 GMThttp://www.aygfsteel.com/pesome/archive/2007/03/11/103175.htmlhttp://www.aygfsteel.com/pesome/comments/103175.htmlhttp://www.aygfsteel.com/pesome/archive/2007/03/11/103175.html#Feedback0http://www.aygfsteel.com/pesome/comments/commentRss/103175.htmlhttp://www.aygfsteel.com/pesome/services/trackbacks/103175.html 再说 sitemesh 的问题,同样是做 openfans |摘功能出现的。做好了(jin) IE 插gQ有 fans 反馈说弹出页面太大,q也难怪,用了(jin) sitemesh Q?/span> head ?/span> footer 都在面上,想羃?yu)页面,肯定得?/span> head ?/span> footer 都去掉,做个q净点的。既然用?/span> sitemesh 肯定是希望最方便的搞定这个,而不用动M逻辑Q包括页面逻辑Q。这个好办,文档里有_(d)通过?/span> sitemesh.xml 中增?/span>

< mapper

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)
class = " com.opensymphony.module.sitemesh.mapper.ParameterDecoratorMapper " >

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)
< param (tng)name = " decorator.parameter "  (tng)value = " decorator "  (tng) />

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)
< param (tng)name = " parameter.name "  (tng)value = " confirm "  (tng) />

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)
< param (tng)name = " parameter.value "  (tng)value = " true "  (tng) />

 (tng) (tng) (tng) (tng) (tng) (tng) (tng)
</ mapper >

p搞定Q这样只需要用参数如 saveSnippet.html?decorator=simple&confirm=true Q就能让它用指定的 decorator 。然后做一个去?/span> head ?/span> footer 只保留必要的 js ?/span> css 引用?/span> simple.jsp 面Q同时在 decorator.xml 中配

< decorator (tng)name = " simple "  (tng)page = " simple.jsp " ></ decorator >

应该可以搞定?/span>

但怎么,是不用这?/span> simple decorator 。没办法Q只好跟q?/span> sitemesh 源码中去调试Q进?/span> ParameterDecoratorMapper c,它(h)承了(jin) AbstractDecoratorMapper c,然后有一?/span> init Ҏ(gu)一?/span> getDecorator Ҏ(gu)。各打一个断点, init Ҏ(gu)?/span> tomcat 启动׃(x)执行Q也正常初始化了(jin)Q?/span> getDecorator Ҏ(gu)却始l不调用Q一时想不出办法。看到篇文章说不自己?/span> sitemesh.xml 而用自带的 com/opensymphony/module/sitemesh/factory/sitemesh-default.xml 也可以,于是备䆾q删除我写的 sitemesh.xml Q居然成功了(jin)。ؓ(f)什么我写的׃行呢Q差别一是我的简化了(jin)很多Q只?/span>

< mapper

 (tng) (tng) (tng) (tng)
class ="com.opensymphony.module.sitemesh.mapper.ConfigDecoratorMapper" >

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)
< param (tng) name ="config"  (tng)value ="${decorators-file}"  (tng) />

 (tng) (tng) (tng) (tng) (tng) (tng) (tng)
</ mapper >

和刚加的

ParameterDecoratorMapper Q二是序Q我?/span> ParameterDecoratorMapper 攑֜?/span> ConfigDecoratorMapper 后面Q会(x)不会(x)是顺序原因呢Q调换一下,果然成功?jin)。问题是解决?jin),原理呢?再花?gu)间跟一下代码了(jin)解下原理Q原来用了(jin) Factory Q它?x)调用各个配|的 Mapper ?/span> init Ҏ(gu)Qƈ攑օ map 中,然后到时选择一?/span> Mapper Q如果符合条件就使用Q否则(h)l往(xin)下找。这里就有了(jin)序的问题,因ؓ(f)我在 decorator.xml 中用了(jin)
<decorator (tng)name="default" (tng)page="default.jsp">

 (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng)
<pattern>/*.html</pattern>

 (tng) (tng) (tng) (tng)
</decorator>

Q这样如?/span> ConfigDecoratorMapper 攑֜前面Q他先找这?/span> Mapper Q一?/span> saveSnippet.html?decorator=simple&confirm=true Q符?/span> pattern 啊,׃用它?jin),另一?/span> ParameterDecoratorMapper Ҏ(gu)得不到机?x),所以也q不?jin)它?/span> getDecorator Ҏ(gu)。换?jin)顺序就是它先进去,所以执行,其它?/span> url 也是先找它,但不匚wQ就又交l?/span> ConfigDecoratorMapper ?jin)。呵呵,问题?sh)解决?jin)Q对 sitemesh 的认识又q了(jin)一步?/span>

pesome 2007-03-11 22:54 发表评论
]]>
中文问题的解?/title><link>http://www.aygfsteel.com/pesome/archive/2007/03/11/103174.html</link><dc:creator>pesome</dc:creator><author>pesome</author><pubDate>Sun, 11 Mar 2007 14:51:00 GMT</pubDate><guid>http://www.aygfsteel.com/pesome/archive/2007/03/11/103174.html</guid><wfw:comment>http://www.aygfsteel.com/pesome/comments/103174.html</wfw:comment><comments>http://www.aygfsteel.com/pesome/archive/2007/03/11/103174.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.aygfsteel.com/pesome/comments/commentRss/103174.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/pesome/services/trackbacks/103174.html</trackback:ping><description><![CDATA[ <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q次l?/span> <span lang="EN-US">openfans</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做网摘功能,ME序倒是很快写完了(jin)Q另外要做个</span> <span lang="EN-US">IE</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">插gQ却到?jin)不问题?/span> <span lang="EN-US">IE</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">插g其实很简单,是?/span> <span lang="EN-US">js</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">获得面的标题?/span> <span lang="EN-US">url</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">和选择的内容,然后通过弹出H口Q将光到服务器。这里就有中文的问题?sh)(jin),开始?/span> <span lang="EN-US">escape</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q如</span> <span lang="EN-US">escape(title)</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">形式Q?/span> <span lang="EN-US">request.getParameter</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">到中文׃ؓ(f)</span> <span lang="EN-US">null</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q网上搜?jin)一通,说是可以通过</span> <span lang="EN-US">java</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">~码搞定Q但拿到׃ؓ(f)</span> <span lang="EN-US">null</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?jin),q怎么换编码?忙活?jin)好几个时Q又?/span> <span lang="EN-US">alert</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q又?/span> <span lang="EN-US">document.write</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q看上去也没什么问题。不</span> <span lang="EN-US">escape</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q直接在览器中输入带中文的</span> <span lang="EN-US">url</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q拿到的不ؓ(f)</span> <span lang="EN-US">null</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?jin),拿到后,通过</span> <span lang="EN-US">new String(str.getBytes("ISO-8859-1"), "UTF-8");</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q真昄正常?jin)。但?/span> <span lang="EN-US">window.open</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">又出q?jin)。看到文章说q有</span> <span lang="EN-US">encodeURIComponent</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Ҏ(gu)可用Q就试了(jin)下,?/span> <span lang="EN-US">escape</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">换成</span> <span lang="EN-US">encodeURIComponent</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">居然搞定?jin),服务端还是得?/span> <span lang="EN-US">new String(str.getBytes("ISO-8859-1"), "UTF-8")</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q行处理。注意这里用?/span> <span lang="EN-US">tomcat</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q它的默认编码就?/span> <span lang="EN-US">"ISO-8859-1"</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q如果改?jin)编码程序也得做相应的改动?jin)?/span> </p> <img src ="http://www.aygfsteel.com/pesome/aggbug/103174.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/pesome/" target="_blank">pesome</a> 2007-03-11 22:51 <a href="http://www.aygfsteel.com/pesome/archive/2007/03/11/103174.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>php5+mysql5+apache2需要注意的几点http://www.aygfsteel.com/pesome/archive/2007/01/14/93783.htmlpesomepesomeSun, 14 Jan 2007 09:34:00 GMThttp://www.aygfsteel.com/pesome/archive/2007/01/14/93783.htmlhttp://www.aygfsteel.com/pesome/comments/93783.htmlhttp://www.aygfsteel.com/pesome/archive/2007/01/14/93783.html#Feedback0http://www.aygfsteel.com/pesome/comments/commentRss/93783.htmlhttp://www.aygfsteel.com/pesome/services/trackbacks/93783.html (tng) (tng) (tng) (tng) 然后需要以index.php作ؓ(f)默认的welcomefile(不知道怎么叫,web.xml里是q个)Q需要在"DirectoryIndex index.html index.html.var"后加?index.phpp?br />然后飞快的装?jin)phpmyadmin、dvbbs的php版。发现php应用的安装的很是方便,解压Q拷贝到htdocs下,马上pq行?jin),比java应用单的多,更别提复杂的要死的企业应用了(jin)。这点上java要好好向php学习(fn)啊?img src ="http://www.aygfsteel.com/pesome/aggbug/93783.html" width = "1" height = "1" />

pesome 2007-01-14 17:34 发表评论
]]>
开始研I电(sh)子支?/title><link>http://www.aygfsteel.com/pesome/archive/2007/01/12/93459.html</link><dc:creator>pesome</dc:creator><author>pesome</author><pubDate>Fri, 12 Jan 2007 07:41:00 GMT</pubDate><guid>http://www.aygfsteel.com/pesome/archive/2007/01/12/93459.html</guid><wfw:comment>http://www.aygfsteel.com/pesome/comments/93459.html</wfw:comment><comments>http://www.aygfsteel.com/pesome/archive/2007/01/12/93459.html#Feedback</comments><slash:comments>1</slash:comments><wfw:commentRss>http://www.aygfsteel.com/pesome/comments/commentRss/93459.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/pesome/services/trackbacks/93459.html</trackback:ping><description><![CDATA[ <p>目需要,开始研I电(sh)子支付。国外的?sh)子支付提供商,得好好研I它的文档和api。全是e文,只能慢慢看了(jin)?/p> <img src ="http://www.aygfsteel.com/pesome/aggbug/93459.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/pesome/" target="_blank">pesome</a> 2007-01-12 15:41 <a href="http://www.aygfsteel.com/pesome/archive/2007/01/12/93459.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>准备lopenfansdspring2.0支持http://www.aygfsteel.com/pesome/archive/2006/12/28/90499.htmlpesomepesomeThu, 28 Dec 2006 07:15:00 GMThttp://www.aygfsteel.com/pesome/archive/2006/12/28/90499.htmlhttp://www.aygfsteel.com/pesome/comments/90499.htmlhttp://www.aygfsteel.com/pesome/archive/2006/12/28/90499.html#Feedback1http://www.aygfsteel.com/pesome/comments/commentRss/90499.htmlhttp://www.aygfsteel.com/pesome/services/trackbacks/90499.html

pesome 2006-12-28 15:15 发表评论
]]>
一个定时更新cache框架http://www.aygfsteel.com/pesome/archive/2006/12/13/87485.htmlpesomepesomeWed, 13 Dec 2006 06:46:00 GMThttp://www.aygfsteel.com/pesome/archive/2006/12/13/87485.htmlhttp://www.aygfsteel.com/pesome/comments/87485.htmlhttp://www.aygfsteel.com/pesome/archive/2006/12/13/87485.html#Feedback7http://www.aygfsteel.com/pesome/comments/commentRss/87485.htmlhttp://www.aygfsteel.com/pesome/services/trackbacks/87485.html阅读全文

pesome 2006-12-13 14:46 发表评论
]]>
q次做portal的一些ȝQ二Q?/title><link>http://www.aygfsteel.com/pesome/archive/2006/12/13/87468.html</link><dc:creator>pesome</dc:creator><author>pesome</author><pubDate>Wed, 13 Dec 2006 05:39:00 GMT</pubDate><guid>http://www.aygfsteel.com/pesome/archive/2006/12/13/87468.html</guid><wfw:comment>http://www.aygfsteel.com/pesome/comments/87468.html</wfw:comment><comments>http://www.aygfsteel.com/pesome/archive/2006/12/13/87468.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.aygfsteel.com/pesome/comments/commentRss/87468.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/pesome/services/trackbacks/87468.html</trackback:ping><description><![CDATA[ <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接着前面的写。上文主要写?/span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">portal</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中的使用Q这写集群斚w的体?x)。现在比较流行的架构是前端</span> <span lang="EN-US">F5</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做负载均衡,后面</span> <span lang="EN-US">2</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">websphere server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做成集群Q各自都?/span> <span lang="EN-US">HttpServer</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q每?/span> <span lang="EN-US">HttpServer</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都向</span> <span lang="EN-US">2</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">was</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做{发。这h台都能独立完成从</span> <span lang="EN-US">HttpServer</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">was</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的流E。一台出现故障,</span> <span lang="EN-US">F5</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先q行切换Q只向正?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">HttpServer</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">发vhQ这?/span> <span lang="EN-US">HttpServer</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">再进行切换只向同一?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上的</span> <span lang="EN-US">was</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做{发。这?/span> <span lang="EN-US">portal</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是采用的这U架构,不妨UCؓ(f)架构</span> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">另一U简单点的架构就是只?/span> <span lang="EN-US">F5</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">负蝲均衡Q不?/span> <span lang="EN-US">was</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">集群Q每?/span> <span lang="EN-US">websphere server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上的</span> <span lang="EN-US">HttpServer</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">接受</span> <span lang="EN-US">F5</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">转发的请求,只向?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">was</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">转发。这h?/span> <span lang="EN-US">websphere server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">保持独立Q相互间没有数据交换和{发。不妨称为架?/span> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">架构</span> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">各有优劣Q适合不同的需要,下面q行些比较:(x)</span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">从应用部|上看:(x)</span> <span lang="EN-US"> <?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" /?> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用?/span> <span lang="EN-US">websphere</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">集群Q由一?/span> <span lang="EN-US">DeployManager</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q行分发Q部|应用,只需部v一ơ,?/span> <span lang="EN-US">DM</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">分发到几个节点上。?/span> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">每个</span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都是独立的,部v应用只能一台台部vQ如?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">较少差别q(sh)明显Q如果达?/span> <span lang="EN-US">10</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">C上,一台台部v是一个比较痛苦的事情?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">session</span> </b> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上看Q?/span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用?/span> <span lang="EN-US">websphere</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">集群Q可以用集提供的</span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">复制Q对于一些关键应用(某台服务器宕机,</span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也必M持的应用Q很有必要。而对于一些能够允?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">丢失的应用,才可以?/span> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。当?/span> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也可以关?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">复制Q因?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">复制不管是用数据库方式q是内存方式QM(x)消耗一定的性能。具体消耗多性能Q就要看不同?/span> <span lang="EN-US">application server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">复制Ҏ(gu)?jin),x(chng)入了(jin)解,可以看集方面的文档Q我也只记得一个比较简单的</span> <span lang="EN-US">round robbin</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?jin)?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">从架构复杂性看Q?/span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">更ؓ(f)单,因ؓ(f)没有</span> <span lang="EN-US">DM</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的概念,每台</span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都保持独立。而用了(jin)</span> <span lang="EN-US">DM</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有时也会(x)出现莫名奇妙的问题,q当然是׃不了(jin)?/span> <span lang="EN-US">DM</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的机制所_(d)但d也增加了(jin)复杂度,q点在后面的教训中进行说明?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">从水qx(chng)展性上看:(x)</span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">肯定更胜一{V只?/span> <span lang="EN-US">F5</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">能支持,多少?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都没关系。?/span> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">多台</span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做集,要看</span> <span lang="EN-US">websphere</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">支持的节Ҏ(gu)量,应该不会(x)太大。这个如果哪位同学知道,敬请告知?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">当然</span> <span lang="EN-US">A</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">B</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在服务器较多的情况下是可以共存的Q可以考虑几台机器做集,然后集群间做负蝲均衡Q这h可以减少部v的复杂度Q又可以带来较好的水qx(chng)展。由于没做过更大型的目Q这个也只是我的假象Q请做过的同学斧正?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US"> <o:p> (tng)</o:p> </span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">说一说集中到的问题?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">首先是对各节点的同步Q?/span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">有时Z(jin)方便试Q我们只对其中一个节点进行更改,试通过再放到其它节炏V而如果测试周期较长,有时׃(x)造成节点的不同步Q出现各U各栯名其妙的问题。一个经验就是:(x)<b style="mso-bidi-font-weight: normal">无论如何Q在每天下班前要保证各节点的同步Q不同步的现象不要过夜?/b></span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">然后是对</span> <span lang="EN-US">DM</span> </b> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的理解:(x)</span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我现在还只是实践阶段Q没有看q相x(chng)档。从意义上看Q它控制?jin)相关的配置文gQ如果进行节点同步,׃(x)由它把配|文件同步到它管理的节点上。这寚w|文件的修改提出?jin)要求。我们开始只修改节点的配|文件而没有修?/span> <span lang="EN-US">DM</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的,l果q行节点同步׃(x)覆盖修改的配|文Ӟ带来很多不必要的工作。经验就是:(x)<b style="mso-bidi-font-weight: normal">或者修?/b></span> <b style="mso-bidi-font-weight: normal"> <span lang="EN-US">DM</span> </b> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的配|文Ӟ然后q行节点同步Q或者直接同时修Ҏ(gu)有节点和</span> <span lang="EN-US">DM</span> </b> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的?/span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt 42pt; TEXT-INDENT: -21pt; mso-list: l0 level1 lfo1; tab-stops: list 42.0pt"> <span lang="EN-US" style="FONT-FAMILY: Wingdings; mso-fareast-font-family: Wingdings; mso-bidi-font-family: Wingdings"> <span style="mso-list: Ignore">Ø<span style="FONT: 7pt 'Times New Roman'"> (tng) (tng) (tng) (tng) (tng) (tng) (tng) (tng) </span></span> </span> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q有关于</span> <span lang="EN-US">cache</span> </b> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的:(x)</span> <span lang="EN-US"> <o:p> </o:p> </span> </b> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US">Cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">是性能优化的一个有效手Dc(din)在单机环境下,最单的是内存</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q?/span> <span lang="EN-US">static</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">Map</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">p。而在集群环境中,</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">变的比较复杂了(jin)。首先还是从应用需求入手,是否要保持每台机器的</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">同步。如果只是信息展C等要求不高?/span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q不需保证</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的同步,问题?sh)比较简单,自己写内?/span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q或者用开源的</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">lg?/span> <span lang="EN-US">ehcache,oscache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">{就可以很好的解决问题。而如果需?/span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在几个节点保持同步,需要特D的机制?jin)?/span> <span lang="EN-US">ehcache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">{号U支持分布式</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q但好像需?/span> <span lang="EN-US">jgroup</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q配|比较麻?ch),我没有用q,有用q的同学h教。我本来想?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">保存Q然后进?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">同步Q后?/span> <span lang="EN-US">IBM</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用数据?/span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q即自己写代码,</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">在数据库中。这样不需?/span> <span lang="EN-US">session</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">同步Q对象不大,性能也能得到保证Q现在用下来效果q可以?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span lang="EN-US"> <o:p> (tng)</o:p> </span> </p> <img src ="http://www.aygfsteel.com/pesome/aggbug/87468.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/pesome/" target="_blank">pesome</a> 2006-12-13 13:39 <a href="http://www.aygfsteel.com/pesome/archive/2006/12/13/87468.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>q次做portal的一些ȝQ一Q?/title><link>http://www.aygfsteel.com/pesome/archive/2006/11/28/84049.html</link><dc:creator>pesome</dc:creator><author>pesome</author><pubDate>Tue, 28 Nov 2006 06:49:00 GMT</pubDate><guid>http://www.aygfsteel.com/pesome/archive/2006/11/28/84049.html</guid><wfw:comment>http://www.aygfsteel.com/pesome/comments/84049.html</wfw:comment><comments>http://www.aygfsteel.com/pesome/archive/2006/11/28/84049.html#Feedback</comments><slash:comments>9</slash:comments><wfw:commentRss>http://www.aygfsteel.com/pesome/comments/commentRss/84049.html</wfw:commentRss><trackback:ping>http://www.aygfsteel.com/pesome/services/trackbacks/84049.html</trackback:ping><description><![CDATA[ <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q次?/span> <span lang="EN-US">ibm</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">portal</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q算是(f)危受命。做?jin)几个月?/span> <span lang="EN-US">SA</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">职Q留下一个功能和性能都有很多问题的项目,临时让我上。经q一个多月的紧张工作Q经常加班,上班上不?jin)网Q也没时间上|)(j)Qȝ功能和性能上都能达到客戯求了(jin)。而我也由一个不?/span> <span lang="EN-US">portal</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的hQ经q项目中实战Q不说成为高手,一般的概念、开发、配|、优化等也都有了(jin)很多体会(x)?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">q次技术上值得推荐的就?b style="mso-bidi-font-weight: normal">合理的?/b></span> <b style="mso-bidi-font-weight: normal"> <span lang="EN-US">ajax</span> </b> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q既加快?jin)首늚?/span> <span lang="EN-US">load</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">速度Q又带来?jin)很好的用户体验。开始首上所?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">都是串行加蝲Q有?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">比如新邮Ӟ依赖?/span> <span lang="EN-US">mail</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">pȝ提供的接口。开始这个接口在较大压力下就出现性能瓉Q后在我们的要求下替换了(jin)协议Q性能也在</span> <span lang="EN-US">1s-2s</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">之间。如果采用常规的办法Q加?/span> <span lang="EN-US">wps</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">验证、运,昄主题、皮肤,加蝲所?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q响应时间肯定在</span> <span lang="EN-US">10s</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">以上?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">我在</span> <span lang="EN-US">openfans</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中用了(jin)</span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q有些经验,所以决定采用异步加载:(x)首页</span> <span lang="EN-US">load</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时一?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">直接昄正在</span> <span lang="EN-US">loading</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的字P?/span> <span lang="EN-US">body onload</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时再使用</span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">填充内容Q?/span> <span lang="EN-US">iframe</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q也?/span> <span lang="EN-US">src</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">先指向一个静(rn)态的正在</span> <span lang="EN-US">loading</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">面Q?/span> <span lang="EN-US">body onload</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">时再替换</span> <span lang="EN-US">src</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">到实际地址Q这?/span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">模式的一U)(j)。这样首늙录实际上只经q?/span> <span lang="EN-US">wps</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">内部的验证和昄Q所有业务逻辑都是加蝲成功后再q行q行。实际表现效果就是:(x)头上的主题很快出来,一块块区域昄正在</span> <span lang="EN-US">loading</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">字样Q性能快的</span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">很快出来Q需要几U的</span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">随后出来Q而不是让用户?c)?/span> <span lang="EN-US">10</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">s</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">再一下全部显C?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用</span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">同时也能解决面h问题和获取返回值的问题。比如前面显C新邮g?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q用L(fng)M(jin)一邮Ӟ新邮件数应该?/span> <span lang="EN-US">1</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q刚点击的邮件也应该上页面上消失。原始的做法是h整个面Q既加大服务器压力,又带来很差的用户体验。?/span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q在点击?/span> <span lang="EN-US">1s</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q或者更长,q取决于邮gpȝ对点?yn)L作的响应快慢Q刷?/span> <span lang="EN-US">div</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的内容,用户甚至感觉不到内容已经更新。其?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">也不需要重新蝲入,大大减轻服务器的压力。有的操作需要提交给其它pȝQ而且可能成功可能p|Q这需要获得返回倹{如果用普通的</span> <span lang="EN-US">form</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">提交Q需要更新整个页面。而?/span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">提交Q可以方便的获得其返回|q而显CZ同的提示?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">另一个架构上的特点就?/span> <b style="mso-bidi-font-weight: normal"> <span lang="EN-US">portal</span> </b> <b style="mso-bidi-font-weight: normal"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">服务器职责单一</span> </b> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">。开始所有的业务逻辑都是写在</span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">里,加重?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">服务器的压力。我q来后做的一个大的规划就是,把业务逻辑抽离到其?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">上,然后通过</span> <span lang="EN-US">ajax</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">加蝲?/span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">中。这h可以充分利用服务器资源(新的</span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">使用单独的内存空间和U程池)(j)Q又使得</span> <span lang="EN-US">portal</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">服务器职责更单一Q仅q行验证、权限控制、主题、皮肤和</span> <span lang="EN-US">portlet</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">的展C?/span> </p> <p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; mso-char-indent-count: 2.0"> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">先写q么多。因Z用了(jin)</span> <span lang="EN-US">2</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">?/span> <span lang="EN-US">server</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">做集,在分布式环境下,开发也有了(jin)更多的要求(比如</span> <span lang="EN-US">cache</span> <span style="FONT-FAMILY: ?hu)? mso-ascii-font-family: 'Times New Roman'; mso-hansi-font-family: 'Times New Roman'">Q,后一文章再l细道来?/span> </p> <img src ="http://www.aygfsteel.com/pesome/aggbug/84049.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.aygfsteel.com/pesome/" target="_blank">pesome</a> 2006-11-28 14:49 <a href="http://www.aygfsteel.com/pesome/archive/2006/11/28/84049.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>E序之外http://www.aygfsteel.com/pesome/archive/2006/11/06/79484.htmlpesomepesomeMon, 06 Nov 2006 14:27:00 GMThttp://www.aygfsteel.com/pesome/archive/2006/11/06/79484.htmlhttp://www.aygfsteel.com/pesome/comments/79484.htmlhttp://www.aygfsteel.com/pesome/archive/2006/11/06/79484.html#Feedback2http://www.aygfsteel.com/pesome/comments/commentRss/79484.htmlhttp://www.aygfsteel.com/pesome/services/trackbacks/79484.html 隑־有空Q写程序之外的文章Q关于压力的Q也是自p来的亲n体会(x)?/span>

众所周知软gq行压力是很大的。各U各L(fng)问题层出不穷Q每天上班工作内定w是排的满满的Q遇到突发问题就得加班。如果不?qing)时q行疏解Q积累到一定的E度Q就可能产生一定的负面问题Q比如上班精状态差、注意力不能集中、遇事喜Ƣ逃避{等。我׃w经历了(jin)q样的状况,明知自己工作U极性差、效率很低,但也很难一下子扑֛自我?/span>

一ơ偶然的出游让我从中很快C(jin)出来。一个亲戚考上厦大的博士,我请?/span> 2 天的假,利用周末旉Zd门旅游。厦门依山傍P的确是旅游的好去处。晚上到Q凉风习(fn)?fn),光脚沿着沙W走过QQ赯的潮水在腿上脚上留下层层薄沙。内?j)也变得q静(rn)Q能够感受到L(fng)呼吸。天地间仿佛(jng)只剩下我和大P在进行心(j)늚交流Q俗世烦(ch)扰皆抛诸脑后Q只剩下Ҏ(gu)v的依恋。白天去爬南普陀山,q不太高Q慢慢爬到山Ӟ整个思明区尽收眼底,q处一艘快艇在面掠过Q留下一条美丽的花。然后顺p下到植物园Q途径无数奇花异草、层天老树(wi)Q走得篏?jin),找个湖边矛_休息一下,Z觉得L愉快?/span>

l过大自然的z礼Q回到单位,人的_面貌焕然一斎ͼqU极的心(j)态处理事情,很多问题q刃而解。压力测试做的很累,l常要熬夜,但通过一轮轮的测试,逐步定位到性能问题所在,自己也学?jin)不相关知识,x(chng)也就没那么烦(ch)?jin)?/span>

做事的方式,也有?jin)长q。我现在信奉Z时只做一件事效率最高的原则。事情再多,也是一件g做,每天安排好近日的工作Qƈ排个优先U,什么是要亲自处理的Q什么是让别人处理的Q什么是需要预先通知他h的,需要什么资源,每g事情的预计时间如何,需要如?/span> check {等。做好一件事打个勾Q做到心(j)中有数。如果事情有延误Q分析是什么原因,该如何补救,而不要有太大的心(j)理负担,自己力?jin)就好,是自q责Qp勇敢扛下Q死不了(jin)人的。这其实是很单的原则Q谁都能够学?x),但的很用?/span>

ȝQ压力是无处不在的,关键在于如何应对和排解。用U极的心(j)态和恰当的方法面对,压力也就没那么大?jin)。感觉压力积累到一定程度,在还未媄(jing)响正常工作之前就先想办法排解Q出L游、运动等都是~解压力的好办法?/span>



pesome 2006-11-06 22:27 发表评论
]]>
վ֩ģ壺 | ½| | | ɽ| | | | | | ɽ| п| ư| | | ն| ǭ| ͼ| ľ| | | | | ƽɽ| | | | | μ| | | ƽ| | | | ͤ| ׯ| | բ| | ɫ|