1.4 Portal 6.1.0.3在Windows平台上安装或升级失败
1.4.1 问题描述
已经安装了Portal 6.1.0.1或者6.1.0.2,试图升级到6.1.0.3,发现在Windows平台上升级失败。
检查升级日志,例如20100122_135338_WP_PTF_6103_selective-install.log文件,发现与PeopleFinder有关,是系统在安装peoplefinder_portlet期间发生错误导致的,这个错误几乎在portal的每个版本中都曾经出现过,如图1-19所示。
图1-19 PeopleFinder导致了安装失败
检查people_finder portlet install日志,例如20100122_135338_WP_PTF_6103_people.impl_._ peoplefinder_._portlet_install.log文件,发现是由FilenotFound例外带着的,这是由于PeopleFinder少配置了属性。此问题虽然2011年才被发现,但我们从历史日志中看到,这个问题早在2009年就出现了,如图1-20所示。
图1-20 这个异常说明PeopleFinder有属性丢失
这是由于安装过程中两个文件的属性被定义成了只读属性,无法取代导致的。可以肯定的是,系统安装完成后,没有手工去改过这两个文件的属性,怀疑是在系统升级时,升级程序篡改了文件属性。6.1.0.3升级程序刚刚推出没多久,出现这种可能的错误也是正常的。
1.4.2 解决方案
登录Portal 6.1.0.3系统,找到路径:D:/IBM/WebSphere/PortalServer/pcc.impl/people.impl/ peoplefinder/portlet/lwp_peoplefinder_war.ear/lwp.peoplefinder.jsr168.war/html/,查看help文件夹的权限,发现果然是只读的,如图1-21所示。
图1-21 help文件夹具有只读属性
修改该文件夹属性,确保该文件夹及子文件、子文件夹不具有只读属性。
重新安装补丁包,安装成功,系统成功升级到6.1.0.3。
1.5 使用WAS 6动态缓存机制提高WCM Content View Portlet性能及响应速度
1.5.1 问题描述
WCM模块的速度之慢是众所周知的。除了保证业务逻辑上的连贯性之外,使用Cache技术也是提高WCM内容展示的一个好思路。
假设我们使用WCM authory构建了有100多个站点区域的站点,然后自己开发Content View Portlet,依据参数分别将这100多个站点区域展示到100多个栏目。
接下来,我们将采用适当的WAS 6 动态缓存(WAS 6 Dynomic Cache)机制来提高WCM Content View的性能及响应速度,这是充分利用Portal 6.1所使用的JSR286容器优势的一个绝佳方法。
1.5.2 WAS 6 动态缓存解决方案
在开发好的Portlet中创建 cachespec.xml 文件来定义动态缓存,如图1-22所示。
图1-22 在Portlet配置文件中启用基于WAS动态缓存的技术提升性能
创建一个JavaBean来生成合理的CacheID,如图1-23所示。
图1-23 动态缓存实现的JavaBean代码
安装该Portlet并重新测试,验证缓存是否起效。
1.5.3 使用同一个用户ID在同一台机器或多台机器上同时登录会导致系统错误
系统测试尤其是执行压力测试时,用户往往无法提供并发数要求数量的真实用户名和密码,例如上面的例子,我们需要用户提供936个真实用户的用户名和密码,而这通常是不现实的。很多项目组就决定使用其中的50对或者100对用户名/密码模拟真实的936个用户,实质上这是不允许的。
IBM WebSphere Portal严格禁止同一ID同时多次登录系统,不管是在同一台机器上还是模拟出多个IP地址,这将会导致不可预知的后果,甚至系统崩溃,如图1-24所示。
图1-24 Portal信息中心明令禁止同一ID多次登录
对应中文的信息中心也对该问题有明确的定义,如图1-25所示。
图1-25 对应中文的信息中心对禁止同-ID多次登录也有明确的定义
原创文章,作者:carmelaweatherly,如若转载,请注明出处:https://blog.ytso.com/tech/opensource/186101.html