国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開(kāi)APP
userphoto
未登錄

開(kāi)通VIP,暢享免費(fèi)電子書(shū)等14項(xiàng)超值服

開(kāi)通VIP
Liferay Portal額外研究(二):對(duì)Liferay進(jìn)行瘦身

Liferay Portal額外研究(二):對(duì)Liferay進(jìn)行瘦身

Liferay的體系是很龐雜的,居然有些文章對(duì)外宣稱(chēng)Liferay是微內(nèi)核,我想寫(xiě)這文章的哥們沒(méi)有搞清楚什么是“微內(nèi)核”。
 
       Liferay 受其企業(yè)版本影響不小,畢竟Liferay公司主要還是“企業(yè)行為”,而不是一個(gè)單純的一個(gè)“開(kāi)源團(tuán)體”行為。所以Liferay Portal本身內(nèi)嵌了大量的Portlet,而且這些Portlet和Liferay Portal Framework甚至還有些交融。這就是為什么liferay portal-ejb.jar會(huì)有3M多。
 
       雖然我們可以通過(guò)修改system.properties,portlet.properties,protal-spring這些基礎(chǔ)配置文件來(lái)修改聲明哪些服務(wù)不需要加載,也可以通過(guò)修改 WEB-INF目錄下的portlet.xml,liferay-portlet.xml以及l(fā)iferay-display.xml這些文件來(lái)刪除一些不需要的portlet。
 
       但是,我想真正敢真么干的,估計(jì)很少。這是為什么呢,就是應(yīng)為L(zhǎng)iferay內(nèi)部實(shí)現(xiàn)的結(jié)構(gòu)和代碼,并不是非常良好。而對(duì)于這一塊的優(yōu)化,也沒(méi)有很詳細(xì)的幫助使用手冊(cè)。在Liferay的網(wǎng)站上,只有一些教開(kāi)發(fā)人員如何部署在不同服務(wù)器和數(shù)據(jù)庫(kù),如何新增一些portlet和theme,以及如何修改權(quán)限方面的淺顯參考手冊(cè)。
 
       接下來(lái)就講一講對(duì)Liferay的瘦身操作,Liferay變成一個(gè)只提供最基本的Portal框架和部署機(jī)制的portal context,而去掉那些多余的portlet?!?因?yàn)檫@些多余的portlet大多國(guó)內(nèi)的項(xiàng)目沒(méi)有任何利用價(jià)值,但是如果需要部署的話(huà),則會(huì)大大影響系統(tǒng)響應(yīng)性能,而且讓開(kāi)發(fā)也變得比較麻煩。
 
       當(dāng)然,是否按照我今天說(shuō)的方式對(duì)Liferay進(jìn)行瘦身,這全憑習(xí)慣。有些朋友不愿改變Liferay的結(jié)構(gòu),只希望單純通過(guò)配置來(lái)加載,也是可以的。
 
(1)保留Liferay最基本的一些組件
      
       Liferay提供了一些基本組件,這些組件不屬于Portal框架之內(nèi),但是整個(gè)portal服務(wù)是基于這些組件。
包結(jié)構(gòu)
說(shuō)明
com.liferay.counter
主要提供主建操作服務(wù),Liferay內(nèi)部的提供的組織結(jié)構(gòu)表維護(hù),就是采用counter提供的主建自增機(jī)制
com.liferay.filters
提供一些基礎(chǔ)的基于servlet filter的過(guò)濾器
com.liferay.taglib
提供最基本的web展示標(biāo)簽
com.liferay.util
提供最基本的一些公共組件
       以上這四個(gè)組件是必須保留的,另外還有兩個(gè)基本組件:com.liferay.mail(提供郵件服務(wù))和com.liferay.wsrp(提供webservice服務(wù))。這個(gè)實(shí)際上應(yīng)該屬于可選的,如果覺(jué)得需要的話(huà),也可以納入。
 
(2)保留Liferay的Portal基礎(chǔ)服務(wù)
       Liferay的基礎(chǔ)服務(wù)是以com.liferay.portal作為基礎(chǔ)的,基本屬于此包內(nèi)的都盡量保留。目前其子package說(shuō)明如下:
包結(jié)構(gòu)
說(shuō)明
com.liferay.portal
此包下放置了portal服務(wù)相關(guān)的一些異常
com.liferay.portal.action
負(fù)責(zé)一些struts action處理,比如Login等
com.liferay.portal.definitions
此包不是類(lèi)包,而是負(fù)責(zé)放置一些定義相關(guān)的dtd文件資源。具體需要哪些dtd,可以參考com.liferay.portal.util. EntityResolver類(lèi)
com.liferay.portal.dependencies
此包也不是類(lèi)包,而是負(fù)責(zé)一些依賴(lài)性的資源文件。
com.liferay.portal.deploy
負(fù)責(zé)自動(dòng)部署和熱部署
com.liferay.portal.events
這個(gè)包內(nèi)主要是一些行為處理類(lèi)
com.liferay.portal.im
即時(shí)消息的支持
com.liferay.portal.jcr
提供JSR-170 JCR的支持,并內(nèi)部提供Jackrabbit的實(shí)現(xiàn)支持
com.liferay.portal.job
對(duì)一些時(shí)間調(diào)度性Job的支持
com.liferay.portal.language
對(duì)語(yǔ)言的支持包
com.liferay.portal.lucene
對(duì)全文檢索的支持
com.liferay.portal.model
一些模型對(duì)象的集合
com.liferay.portal.security
 
com.liferay.portal.servlet
 
com.liferay.portal.spring
 
com.liferay.portal.struts
 
com.liferay.portal.theme
提供對(duì)“主題”,也就是界面風(fēng)格的支持
com.liferay.portal.tools
 
com.liferay.portal.util
 
com.liferay.portal.velocity
 
com.liferay.portal.wsrp
 
 
       其實(shí)我們可以把Liferay這些portal服務(wù)再縮簡(jiǎn)一些,但剛開(kāi)始建議大家不要隨便的刪減,保留原始的即可。
 
(3)縮減portlet應(yīng)用
       Liferay提供了大量的portlet應(yīng)用,有大概七八十個(gè)。正應(yīng)為這些portlet的加載和部署,讓Liferay啟動(dòng)緩慢,消耗系統(tǒng)資源多。實(shí)際上,保持Liferay Portal正常運(yùn)行,只需要其中幾個(gè)就可以了,剩下的,我們可以根據(jù)需要進(jìn)行刪減。
 
       下面列出了一些最基本的portlet,只需要保留如下的這些portlet即可保證liferay的正常啟動(dòng)和運(yùn)行
包結(jié)構(gòu)
說(shuō)明
com.liferay.portlet
Liferay Portlet的一些基礎(chǔ)類(lèi)
com.liferay.portlet.admin
管理portlet
com.liferay.portlet.calendar
日期portlet雖然可以不需要,但是其內(nèi)部提供對(duì)job的調(diào)度。
com.liferay.portlet.communities
這個(gè)是負(fù)責(zé)配置用戶(hù)其所在的group,利用可以配置用戶(hù)所擁有的工作區(qū)。
com.liferay.portlet.enterpriseadmin
 
com.liferay.portlet.language
 
com.liferay.portlet.layoutconfiguration
 
com.liferay.portlet.login
 
com.liferay.portlet.myaccount
用于配置用戶(hù)信息
com.liferay.portlet.myplaces
用于控制用戶(hù)的工作區(qū)選擇
com.liferay.portlet.portletconfiguration
 
com.liferay.portlet.themegallery
用于控制主題風(fēng)格
com.liferay.portlet.translator
這個(gè)包必須要,雖然portlet可以不用,但是被portal.language包引入了
com.liferay.portlet.wsrp
這個(gè)包必須要。
 
       只需要保證如上的portlet在系統(tǒng)中,即可保證Liferay的正常運(yùn)行。
 
       但是,不以為只需要簡(jiǎn)單得講起他的Porlet刪除即可,那就大錯(cuò)特錯(cuò)了。Liferay在這一層面做的非常不友善,內(nèi)部代碼由一點(diǎn)點(diǎn)地耦合。很多地方依靠寫(xiě)if else來(lái)判斷,所以造成了在portal這個(gè)服務(wù)包中,竟然存在很多地方引用portlet中的類(lèi)。
       不過(guò)這個(gè)倒不難修改,只需要花費(fèi)一點(diǎn)點(diǎn)時(shí)間,簡(jiǎn)單修改一下就可以了。比較容易,此處就不多說(shuō)。
 
(4)從配置文件中刪除無(wú)用portlet的部署
      
       這個(gè)主要是修改WEB-INF目錄下的portlet.xml,liferay-portlet.xml以及l(fā)iferay-display.xml這些文件。只需要依次把那些不需要的portlet刪除即可。沒(méi)有什么難度,細(xì)心點(diǎn)就可以了。
 
(5)修改服務(wù)配置文件
 
       Liferay的配置文件也是很多,放置也是在好幾個(gè)地方:
位置
配置文件說(shuō)明
/WEB-INF
portlet描述和struts等配置文件
/WEB-INF/classes
system.properties和portal.properties配置文件
/WEB-INF/classes/META-INF
portal-spring.xml,portal-hbm.xml,portal-log4j.xml配置文件。此位置可調(diào),具體可以修改portal.properties內(nèi)容。
 
       為了讓系統(tǒng)正確運(yùn)行,我們還需要修改system.properties和portal.properties配置文件,這是Liferay核心配置文件。Liferay的很多服務(wù)都是在此配置文件中聲明和修改。具體修改哪些本文不細(xì)說(shuō),改篇專(zhuān)門(mén)作個(gè)專(zhuān)題講。
 
       還需要修改portal-spring.xml(如果是professional版,則是portal-spring-professional.xml)。需要將那些已經(jīng)沒(méi)有的類(lèi)bean刪除。否則Liferay現(xiàn)在的加載機(jī)制,一旦碰到?jīng)]有的類(lèi)的bean,則加載不成功了。
       當(dāng)然portal-hbm.xml也是需要修改的,去掉那些不需要的類(lèi)即可。
 
       基本上經(jīng)過(guò)以上五個(gè)步驟,Liferay即可完成手身了。在真實(shí)系統(tǒng)研發(fā)過(guò)程中,不一定非要選擇這樣的瘦身方式,畢竟這種方式,對(duì)后續(xù)Liferay版本的維護(hù)帶來(lái)一定的工作量?!?但是,如果這么嘗試一把,則可以在通過(guò)調(diào)試過(guò)程中,對(duì)Liferay的配置體系和代碼結(jié)構(gòu)體系有個(gè)較為清晰的認(rèn)識(shí)
本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶(hù)發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)。
打開(kāi)APP,閱讀全文并永久保存 查看更多類(lèi)似文章
猜你喜歡
類(lèi)似文章
liferay 瘦身(2)
為L(zhǎng)iferay開(kāi)發(fā)Portlet - 玻璃瓶中的光明
liferay二次開(kāi)發(fā)指南
關(guān)于Liferay的配置文件 —— 基于Struts開(kāi)發(fā)Portlet
JFoxPortal(JFox門(mén)戶(hù))開(kāi)發(fā)計(jì)劃
基于 Struts 2 構(gòu)建 WebSphere Portal 上的 Portlet 應(yīng)用
更多類(lèi)似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長(zhǎng)圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服