第一篇:優(yōu)化培訓(xùn)心得
參加《優(yōu)化培訓(xùn)》心得體會(huì)
6月15日下午聽了顧問公司金老師的《關(guān)于實(shí)施管理流程優(yōu)化培訓(xùn)》,受益良多,通過這次課程的學(xué)習(xí),我了解到一個(gè)真正有效的流程對(duì)企業(yè)的重要性。正所謂沒有規(guī)矩不成方圓,一個(gè)企業(yè)的運(yùn)營離不開科學(xué)的管理制度和規(guī)范的流程體系。環(huán)環(huán)相扣的作業(yè)流程,需要各個(gè)部門之間良好協(xié)作和配合。使我對(duì)公司的作業(yè)流程的作用有了更深入的了解和認(rèn)識(shí)。聽完此次課程本人對(duì)流程優(yōu)化有了些許見解:
為什么我們要優(yōu)化流程呢?在我們公司最常用到得流程是“自由流程”,原因很簡(jiǎn)單,我們處于一個(gè)人管人的階段,沒有一個(gè)屬于自己的系統(tǒng)化流程,老師說這樣的流程很容易讓我們的效率大大折扣。作為一個(gè)基礎(chǔ)人員,很能明白這個(gè)意思:往往遞交的文件要經(jīng)過很多流程來處理,每個(gè)人進(jìn)來都會(huì)發(fā)表自己的意見,雖然調(diào)動(dòng)了大家的積極性,但是當(dāng)整個(gè)流程結(jié)束的時(shí)候,擬稿人的原本意思已經(jīng)似是而非了。也許系統(tǒng)管人要比人管人要更見效。這也說明了一個(gè)固定的優(yōu)化流程不僅可以減少我們工作中的重復(fù)性工作,還可以使管理層從繁瑣的日常事務(wù)中解脫出來,進(jìn)而達(dá)到提高公司整體工作效率。
優(yōu)化的流程在實(shí)施過程中將人之間的關(guān)系轉(zhuǎn)化成了系統(tǒng)、流程與人之間的關(guān)系,讓每一個(gè)人不僅能做正確的事,還能正確地做事。流程優(yōu)化是以提高工作質(zhì)量、提高工作效率、降低成本為目的的,流程優(yōu)化要圍繞優(yōu)化對(duì)象要達(dá)到的目標(biāo)進(jìn)行;在現(xiàn)有的基礎(chǔ)上,提出改進(jìn)后的實(shí)施方案,并對(duì)其作出評(píng)價(jià);針對(duì)評(píng)價(jià)中發(fā)現(xiàn)的問題,再次進(jìn)行改進(jìn),直至滿意后開始試行,正式實(shí)施。
無論是怎樣優(yōu)化的流程,他一定要做到適應(yīng)企業(yè)的發(fā)展。也許每個(gè)人對(duì)講課內(nèi)容的理解都不一樣,但是只要我們明白和了解現(xiàn)在工作中的短板是什么?只有了解才可以做的取長補(bǔ)短,更進(jìn)一步。雖然老師只講了優(yōu)化流程的一些基本概念和概述了好的流程應(yīng)該是怎樣的,相信大家已經(jīng)迫切的期待下一堂課的到來。1
第二篇:企業(yè)部門流程優(yōu)化培訓(xùn)心得
參加天助華企《企業(yè)流程優(yōu)化培訓(xùn)》心得體會(huì)
引言
6月9日晚聽了天助華企培訓(xùn)老師關(guān)于《企業(yè)流程優(yōu)化》的培訓(xùn)課,受益良多,通過這次課程的學(xué)習(xí),我了解到一個(gè)真正有效的流程對(duì)企業(yè)的重要性。正所謂沒有規(guī)矩不成方圓,一個(gè)企業(yè)的運(yùn)營離不開科學(xué)的管理制度和規(guī)范的流程體系。環(huán)環(huán)相扣的作業(yè)流程,需要各個(gè)部門之間良好協(xié)作和配合。使我對(duì)公司的作業(yè)流程有了更深入的了解和認(rèn)識(shí)。
通過對(duì)企業(yè)流程建設(shè)、系統(tǒng)建設(shè)以及系統(tǒng)效率的了解學(xué)習(xí),對(duì)此我深有觸動(dòng)。對(duì)于企業(yè)系統(tǒng)效率流程、權(quán)責(zé)、績效考核的三者關(guān)系的緊密結(jié)合,在公司里,我希望在現(xiàn)在的崗位上,做好設(shè)計(jì)工作,服務(wù)好每一個(gè)產(chǎn)品和項(xiàng)目,把市場(chǎng)和設(shè)計(jì)緊密結(jié)合起來,努力在公司的價(jià)值鏈上做出應(yīng)有的貢獻(xiàn)。如何將組織結(jié)構(gòu)優(yōu)化與流程優(yōu)化結(jié)合起來與大家一起探討:
一、如何將組織結(jié)構(gòu)優(yōu)化與流程優(yōu)化結(jié)合起來
伴隨外部環(huán)境的劇烈變化以及信息技術(shù)的不斷發(fā)展,關(guān)于組織結(jié)構(gòu)的理論和概念層出不窮,包括有集團(tuán)總部定位,事業(yè)部制,職能型組織結(jié)構(gòu),客戶型組織結(jié)構(gòu),矩陣式組織結(jié)構(gòu)等等。組織結(jié)構(gòu)的實(shí)踐則更加豐富多彩,從戰(zhàn)略變革到流程再造,無不涉及組織結(jié)構(gòu)的調(diào)整與優(yōu)化。但現(xiàn)實(shí)卻不容樂觀,企業(yè)常常陷入組織結(jié)構(gòu)的困惑,面對(duì)不同的組織模型,不知如何選擇;或是設(shè)計(jì)了看似完美的組織結(jié)構(gòu),卻難以實(shí)施。這迫使我們不斷反思問題的根本原因,到底是企業(yè)戰(zhàn)略不清晰、方向不明確、還是是企業(yè)執(zhí)行力不夠、還是整體人員素質(zhì)不高。先讓我們暫時(shí)拋開眼花繚亂的概念,重新認(rèn)識(shí)企業(yè),重新認(rèn)識(shí)隱藏在組織結(jié)構(gòu)背后的問題,再來解決更深一步的問題。我們經(jīng)常需要調(diào)整組織結(jié)構(gòu)來適應(yīng)面對(duì)任務(wù)的資源再分配要求,每一次組織結(jié)構(gòu)的調(diào)整都在未進(jìn)行詳細(xì)分析的情況下做出,舊的模式已經(jīng)打破,新的還沒有建立;舊的問題還未解決,新的問題不斷涌現(xiàn),內(nèi)部一片混亂,企業(yè)原地待步。組織功能的不全使得工作難以進(jìn)行,有時(shí)候一項(xiàng)職能被分解為若干塊。因?yàn)楣ぷ鞯牟煌?,?jīng)常需要部門間的協(xié)調(diào),工作 量和難度的增加,使得部分職能重疊又不能進(jìn)行工作。而有些企業(yè)的內(nèi)部某些權(quán)力過于集中,某些權(quán)力又過于分散使得每個(gè)部門的功能不明確,管理者的職責(zé)不明確,人浮于事。各項(xiàng)資源被分散到不同的部門,每一個(gè)部門在完成一項(xiàng)工作時(shí),因權(quán)責(zé)不清而感到力不從心,這又無謂的增加了企業(yè)內(nèi)部成本和內(nèi)耗。組織內(nèi)部本位主義體現(xiàn)在:各部門之間沒有一個(gè)權(quán)責(zé)和職責(zé),采購部門重價(jià)格輕質(zhì)量,運(yùn)銷和預(yù)算部門重市場(chǎng)渠道輕管理,安裝公司重工程進(jìn)度輕費(fèi)用回收,設(shè)計(jì)部門由于初具規(guī)模不完善,沒有重點(diǎn)發(fā)展方向,只限于滿足現(xiàn)狀,其他各部門都是以自我利益為中心,公司重短期利益而輕企業(yè)長期利益。各個(gè)部門內(nèi)部缺少有效的溝通和橫向協(xié)調(diào),這就使得企業(yè)的發(fā)展難以推進(jìn)。
企業(yè)組織結(jié)構(gòu)對(duì)企業(yè)價(jià)值創(chuàng)造的所有功能,可以概括為三個(gè)方面:效果、效率和效益。企業(yè)組織結(jié)構(gòu)應(yīng)以客戶為中心,以價(jià)值為本,體現(xiàn)了企業(yè)創(chuàng)造價(jià)值的方式,組織結(jié)構(gòu)受企業(yè)中?人?的因素影響,包括人員素質(zhì)、技能水平,充分體現(xiàn)對(duì)現(xiàn)實(shí)的兼容。企業(yè)組織結(jié)構(gòu)是理想與現(xiàn)實(shí)的結(jié)合,沒有完美、理想化的組織結(jié)構(gòu),也沒有完全妥協(xié)現(xiàn)狀的結(jié)構(gòu),只有適合的組織結(jié)構(gòu)。
企業(yè)組織結(jié)構(gòu)設(shè)計(jì)必須根據(jù)公司的價(jià)值實(shí)現(xiàn)流程按工作性質(zhì)來劃分職能類別,再詳細(xì)設(shè)計(jì)組織結(jié)構(gòu),做到人流、物流、資金流、信息流、管理流五流合一。傳統(tǒng)的組織優(yōu)化咨詢?cè)诮鉀Q企業(yè)組織問題時(shí)常常會(huì)出現(xiàn)適用性問題。究其根本原因在于其“重方法”而對(duì)企業(yè)實(shí)際的了解不夠,導(dǎo)致咨詢方案往往束之高閣或者在企業(yè)落地過程中出現(xiàn)較大偏差。針對(duì)企業(yè)組織結(jié)構(gòu)難設(shè)計(jì),組織優(yōu)化方案難實(shí)施的問題。
二、建立一個(gè)完整的管理流程,夯實(shí)流程管理
流程管理的三個(gè)層次,推進(jìn)規(guī)范流程、優(yōu)化流程、再造流程。從而發(fā)展出基于流程執(zhí)行的結(jié)果性指標(biāo)和過程性指標(biāo),以(PDCA)“計(jì)劃、執(zhí)行、檢查、調(diào)整”,并循環(huán)不止地進(jìn)行下去以科學(xué)的管理程序使公司不斷發(fā)展壯大。以界定和落實(shí)組織結(jié)構(gòu)與崗位職責(zé)。基于流程的組織優(yōu)化,側(cè)重于在各項(xiàng)業(yè)務(wù)及管理活動(dòng)進(jìn)行過程進(jìn)行衡量和測(cè)定,并且組織優(yōu)化要與企業(yè)的信息化建設(shè)有效集成。通過 2 綜合考慮高層領(lǐng)導(dǎo)者、中層管理者和普通員工這三種人的需求,提供足夠的信息,從而確保組織結(jié)構(gòu)的有效運(yùn)轉(zhuǎn)。同時(shí)考慮到三個(gè)角度之間的互動(dòng),確保其完整性,譬如,在進(jìn)行部門設(shè)置時(shí),需要考慮是否能支持業(yè)務(wù)流程的運(yùn)作,以及部門崗位如何設(shè)置。在進(jìn)行崗位職責(zé)設(shè)計(jì)時(shí),需要考慮是否支持部門職能,以及崗位對(duì)價(jià)值流程的貢獻(xiàn)。
三、企業(yè)組織結(jié)構(gòu)和流程管理的必要性
企業(yè)原先組織結(jié)構(gòu)已經(jīng)不合時(shí)宜,應(yīng)及時(shí)作出調(diào)整,必須對(duì)組織結(jié)構(gòu)謹(jǐn)慎設(shè)計(jì)。這是牽一發(fā)而動(dòng)其身的大事,任何操之過急的做法都將交昂貴的學(xué)費(fèi),很多企業(yè)的組織結(jié)構(gòu)經(jīng)常因人員、業(yè)務(wù)的轉(zhuǎn)變不斷變化,業(yè)務(wù)重心穩(wěn),核心人才不穩(wěn),頻繁的變化或引起組織不斷陣痛。同時(shí)堅(jiān)持集中企業(yè)資源,絕不將同一種資源劃分的七零八落,保證重點(diǎn),維持企業(yè)的核心技能和關(guān)鍵技術(shù)的發(fā)展,從而保證企業(yè)的核心競(jìng)爭(zhēng)力,同時(shí)關(guān)鍵權(quán)力要集中決策,確保決策的權(quán)威性和統(tǒng)一性,將組織結(jié)構(gòu)的優(yōu)化與流程的優(yōu)化有效結(jié)合起來。組織結(jié)構(gòu)的迅速調(diào)整,明確了組織功能,優(yōu)化了管理結(jié)構(gòu),提升了運(yùn)營效率,因此這種組織結(jié)構(gòu)的優(yōu)化和調(diào)整也為企業(yè)帶來了更大的利潤,推動(dòng)企業(yè)可持續(xù)發(fā)展 建議:
1、明確設(shè)計(jì)公司定位方向、目標(biāo)、范圍。
2、盡快落實(shí)建立推行設(shè)計(jì)公司的組織結(jié)構(gòu)、管理流程、崗位職責(zé),在推行中試行,在管理中完善。
3、大力拓展市場(chǎng)來源,對(duì)信息項(xiàng)目來源成功簽約給予適當(dāng)提高獎(jiǎng)勵(lì)額度。以上是通過這次培訓(xùn)的點(diǎn)滴感悟,有不對(duì)之處請(qǐng)批評(píng)指正。
2011.06.15
第三篇:CDMA網(wǎng)絡(luò)優(yōu)化培訓(xùn)心得(最終版)
CDMA網(wǎng)絡(luò)優(yōu)化培訓(xùn)心得
XX電信分公司 XXX
8月,我有幸參加了華為組織的CDMA無線網(wǎng)絡(luò)規(guī)劃與優(yōu)化培訓(xùn),短短15天的培訓(xùn),使我對(duì)CDMA網(wǎng)絡(luò)優(yōu)化工作有了新的更深的認(rèn)識(shí),學(xué)習(xí)到了很多東西,下面談一談我的心得。
這次培訓(xùn)主要針對(duì)華為設(shè)備區(qū)的CDMA網(wǎng)規(guī)網(wǎng)優(yōu)人員,培訓(xùn)內(nèi)容主要是CDMA2000 1X和EVDO的技術(shù)體系、硬件介紹、覆蓋和容量規(guī)劃、功控和切換算法、性能統(tǒng)計(jì)分析、優(yōu)化常用參數(shù)和命令等,內(nèi)容比較多,時(shí)間比較緊張。在培訓(xùn)過程中,我最深刻的體會(huì)是基礎(chǔ)較差,對(duì)老師所講的內(nèi)容尤其是EVDO理解起來比較困難。雖然以前也參加過CDMA基本原理的培訓(xùn),而且培訓(xùn)之前我又認(rèn)真地學(xué)習(xí)了網(wǎng)上大學(xué)的課程,但沒有實(shí)際工作經(jīng)驗(yàn),對(duì)C網(wǎng)的認(rèn)識(shí)僅僅停留在淺薄的理論階段。而這次培訓(xùn)比較系統(tǒng)、全面,使我對(duì)C網(wǎng)優(yōu)化有了全新的認(rèn)識(shí)提高。
培訓(xùn)的重點(diǎn)是CDMA2000 1X,其中幾個(gè)關(guān)鍵技術(shù):軟切換、功率控制、Rake接收,它們是保證CDMA網(wǎng)絡(luò)容量與質(zhì)量的前提;無線信道和編號(hào)方案是邏輯的網(wǎng)絡(luò)元素;這些內(nèi)容都是很基本的東西,是建立起CDMA技術(shù)體系的基礎(chǔ)。設(shè)備部分是技術(shù)的具體實(shí)現(xiàn),組網(wǎng)的基本物理單元,是我們現(xiàn)實(shí)當(dāng)中接觸較多的。覆蓋規(guī)劃、容量規(guī)劃、PN規(guī)劃與站址選擇,這些雖然是網(wǎng)絡(luò)規(guī)劃的內(nèi)容,但是是合理建立一張CDMA網(wǎng)絡(luò)的基礎(chǔ),只有對(duì)現(xiàn)實(shí)中各種影響因素綜合全面地考慮,才
能保證網(wǎng)絡(luò)在運(yùn)行時(shí)少出問題。功控算法和切換算法內(nèi)容比較細(xì),也比較難,真正涉及到實(shí)際使用的參數(shù),參數(shù)之間有很多關(guān)系,如何使參數(shù)配合起來,在實(shí)際應(yīng)用中達(dá)到最優(yōu)的效果,這才是最重要的。信令流程和配置消息幫助我們了解了在什么情況下哪個(gè)網(wǎng)元需要?jiǎng)幼?、如何?dòng)作、動(dòng)作的內(nèi)容是什么,只有對(duì)信令流程和信令內(nèi)容了解清楚了,才能發(fā)現(xiàn)問題的所在。無線性能統(tǒng)計(jì)和分析是對(duì)網(wǎng)絡(luò)運(yùn)行情況的量化指標(biāo),直接反映了網(wǎng)絡(luò)性能的好壞。路測(cè)分析教給我們測(cè)量網(wǎng)絡(luò)性能、查找網(wǎng)絡(luò)問題的方法。整個(gè)CDMA2000 1X培訓(xùn)課程的內(nèi)容很多,但都是必須掌握的東西。
這次培訓(xùn)的難點(diǎn)是EVDO,這部分內(nèi)容是以前從沒接觸過的,而且它的技術(shù)體系與CDMA2000 1X完全不同,對(duì)我來說理解起來比較吃力。老師講的很仔細(xì),經(jīng)過反復(fù)提煉,使我對(duì)EVDO的原理有了基本的了解。EVDO的無線信道劃分比較細(xì),前反向所用的復(fù)用技術(shù)不同,這都是由其業(yè)務(wù)需求所決定的,因此它還引進(jìn)了T2P、H-ARQ、虛擬軟切換等新技術(shù),使快速的數(shù)據(jù)業(yè)務(wù)得以實(shí)現(xiàn)。在系統(tǒng)編碼上,EVDO與1X大同小異,但是更復(fù)雜,編碼都比較長。EVDO的信令流程主要是掌握會(huì)話與連接的關(guān)系。切換算法保證了數(shù)據(jù)業(yè)務(wù)的需求即服務(wù)速率及業(yè)務(wù)連續(xù)性。功控算法則由于EVDO的前向是全功率發(fā)射,只考慮對(duì)移動(dòng)臺(tái)的功控,相應(yīng)的針對(duì)前向,就有了調(diào)度算法和速率控制的技術(shù)。雖然EVDO的內(nèi)容比較難,但是相信經(jīng)過以后工作中的實(shí)際應(yīng)用,會(huì)幫助我更好地理解。
在培訓(xùn)中,同班的福建學(xué)員提出了一些實(shí)際應(yīng)用中的問題,雖然比較深入,但是給了我一個(gè)提示:小到某個(gè)參數(shù)的設(shè)置都可能造成很大的影響,因?yàn)镃DMA系統(tǒng)是自干擾系統(tǒng),牽一發(fā)而動(dòng)全局,不可不細(xì)心,不可不謹(jǐn)慎。
俗話說,師傅領(lǐng)進(jìn)門,修行靠個(gè)人。網(wǎng)優(yōu)工作不是僅僅知道幾個(gè)參數(shù)、會(huì)做幾條命令就可以完成的,如何在以后的工作中將所學(xué)的知識(shí)與實(shí)際中碰到的問題結(jié)合起來,并分析得出解決問題可行的方案,才是培訓(xùn)的根本目的,是最大的困難,但也是必須要掌握的技能。在今后的工作中,我還要不斷的充實(shí)自己,將所學(xué)知識(shí)與實(shí)踐相結(jié)合,學(xué)會(huì)去融會(huì)貫通、舉一反三,不斷地積累經(jīng)驗(yàn),力爭(zhēng)盡快熟悉網(wǎng)優(yōu)工作。
XXXX年XX月XX日
第四篇:性能優(yōu)化課堂筆記和培訓(xùn)心得
軟件性能優(yōu)化心得體會(huì)
隨著企業(yè)級(jí)開發(fā)平臺(tái)諸如J2EE的普及和發(fā)展,越來越多的企業(yè)應(yīng)用采用了這些技術(shù)作為快速開發(fā)平臺(tái),但是,這些應(yīng)用也面臨著一些困擾,特別是性能問題。這主要是由這些系統(tǒng)的分布性、復(fù)雜性和數(shù)據(jù)無關(guān)性引起的。高性能是軟件高質(zhì)量的重要體現(xiàn),也是用戶滿意度提高的重要軟件特征,為了提高軟件的性能,在這次培訓(xùn)中,老師從以下幾個(gè)層次討論軟件性能優(yōu)化。
一、Java底層代碼的性能優(yōu)化
1、首先根據(jù)Jvm虛擬機(jī)的內(nèi)存機(jī)制來優(yōu)化系統(tǒng)
堆(Heap)是一個(gè)復(fù)雜的結(jié)構(gòu),對(duì)象及其成員通常保存在堆中。運(yùn)行時(shí)在數(shù)據(jù)區(qū), 動(dòng)態(tài)創(chuàng)建,堆中的內(nèi)容由 GC 負(fù)責(zé)回收。棧(Stack)是一個(gè)簡(jiǎn)單的結(jié)構(gòu),方法的參數(shù)(基本型別的值、指向?qū)ο蟮囊茫┩ǔ14嬖跅V小V械膬?nèi)容在方法執(zhí)行完時(shí)就被回收了。
棧的存取速度比堆要快,棧數(shù)據(jù)可以共享,存在棧中的數(shù)據(jù)大小與生存期必須是確定的,棧中主要存放一些基本類型的變量(,int, short, long, byte, float, double, boolean, char)和對(duì)象句柄。
使用局部變量的好處在于作用范圍是變量定義的方法內(nèi)部,一旦離開作用域,棧內(nèi)存將被快速釋放,與GC無關(guān),而其他變量,如靜態(tài)變量、實(shí)例變量等,都在堆(Heap)中創(chuàng)建,速度較慢,但是可以自動(dòng)回收。所以要盡量使用局部變量。在這里,培訓(xùn)的老師舉了個(gè)人例子 A for(int i=0;i<10000;i++){
Object o = new Object();} B Object o = null;for(int i=0;i<10000;i++){
o = new Object();} A和B之間究竟哪個(gè)性能更加好呢?
在這里A和B的唯一區(qū)別在于,B在循環(huán)體外定義Object,而A是在循環(huán)體內(nèi)定義Object,顯然A的Object作用域是在局部,一旦執(zhí)行下一輪循環(huán),立即釋放原先定義的Object,而B的Object作用域是在全局,必須等到循環(huán)全部結(jié)束,Object才能被釋放,因此A的性能要好于B,而且兩者運(yùn)行速度不是一個(gè)數(shù)量級(jí)。
2、需要慎用異常處理機(jī)制
因?yàn)楫惓V荒苡糜阱e(cuò)誤處理,不適合用來控制流程,拋出異常的同時(shí),系統(tǒng)往往會(huì)創(chuàng)建一個(gè)新的對(duì)象,只要有異常被拋出,VM就必須調(diào)整調(diào)用堆棧,因?yàn)樵谔幚磉^程中創(chuàng)建了一個(gè)新的對(duì)象。這樣對(duì)系統(tǒng)的性能會(huì)造成一定的影響,因此,要盡量少用自定義的異常拋出機(jī)制。
3、使用多線程會(huì)提高系統(tǒng)的性能,但是處理多線程的時(shí)候,為了防止資源競(jìng)爭(zhēng),需要加鎖。
一般鎖是Synchronized,jdk 1.5 版本多加了個(gè)ReetrantLock,我查閱了官方說明:重入鎖(ReentrantLock)是一種遞歸無阻塞的同步機(jī)制,它可重入的互斥鎖定 Lock,它具有與使用 synchronized 方法和語句所訪問的隱式監(jiān)視器鎖定相同的一些基本行為和語義,但功能更強(qiáng)大。ReentrantLock 將由最近成功獲得鎖定,并且還沒有釋放該鎖定的線程所擁有。當(dāng)鎖定沒有被另一個(gè)線程所擁有時(shí),調(diào)用 lock 的線程將成功獲取該鎖定并返回。如果當(dāng)前線程已經(jīng)擁有該鎖定,此方法將立即返回??梢允褂?isHeldByCurrentThread()和 getHoldCount()方法來檢查此情況是否發(fā)生。
雖然 ReentrantLock 是個(gè)非常動(dòng)人的實(shí)現(xiàn),相對(duì) synchronized 來說,它有一些重要的優(yōu)勢(shì),但是我認(rèn)為急于把 synchronized 視若敝屣,絕對(duì)是個(gè)嚴(yán)重的錯(cuò)誤。java.util.concurrent.lock 中的鎖定類是用于高級(jí)用戶和高級(jí)情況的工具。一般來說,除非對(duì) Lock 的某個(gè)高級(jí)特性有明確的需要,或者有明確的證據(jù)(而不是僅僅是懷疑)表明在特定情況下,同步已經(jīng)成為可伸縮性的瓶頸,否則還是應(yīng)當(dāng)繼續(xù)使用 synchronized。
為什么在一個(gè)顯然“更好的”實(shí)現(xiàn)的使用上主張保守呢?因?yàn)閷?duì)于 java.util.concurrent.lock 中的鎖定類來說,synchronized 仍然有一些優(yōu)勢(shì)。比如,在使用 synchronized 的時(shí)候,不能忘記釋放鎖;在退出 synchronized 塊時(shí),JVM 會(huì)為你做這件事。很容易忘記用 finally 塊釋放鎖,這對(duì)程序非常有害。你的程序能夠通過測(cè)試,但會(huì)在實(shí)際工作中出現(xiàn)死鎖,那時(shí)會(huì)很難指出原因(這也是為什么根本不讓初級(jí)開發(fā)人員使用 Lock 的一個(gè)好理由。)
另一個(gè)原因是因?yàn)椋?dāng) JVM 用 synchronized 管理鎖定請(qǐng)求和釋放時(shí),JVM 在生成線程轉(zhuǎn)儲(chǔ)時(shí)能夠包括鎖定信息。這些對(duì)調(diào)試非常有價(jià)值,因?yàn)樗鼈兡軜?biāo)識(shí)死鎖或者其他異常行為的來源。Lock 類只是普通的類,JVM 不知道具體哪個(gè)線程擁有 Lock 對(duì)象。而且,幾乎每個(gè)開發(fā)人員都熟悉 synchronized,它可以在 JVM 的所有版本中工作。在 JDK 5.0 成為標(biāo)準(zhǔn)(從現(xiàn)在開始可能需要兩年)之前,使用 Lock 類將意味著要利用的特性不是每個(gè) JVM 都有的,而且不是每個(gè)開發(fā)人員都熟悉的。
既然如此,我們什么時(shí)候才應(yīng)該使用 ReentrantLock 呢?答案非常簡(jiǎn)單 —— 在確實(shí)需要一些 synchronized 所沒有的特性的時(shí)候,比如時(shí)間鎖等候、可中斷鎖等候、無塊結(jié)構(gòu)鎖、多個(gè)條件變量或者鎖投票。ReentrantLock 還具有可伸縮性的好處,應(yīng)當(dāng)在高度爭(zhēng)用的情況下使用它,但是請(qǐng)記住,大多數(shù) synchronized 塊幾乎從來沒有出現(xiàn)過爭(zhēng)用,所以可以把高度爭(zhēng)用放在一邊。我建議用 synchronized 開發(fā),直到確實(shí)證明 synchronized 不合適,而不要僅僅是假設(shè)如果使用 ReentrantLock “性能會(huì)更好”。請(qǐng)記住,這些是供高級(jí)用戶使用的高級(jí)工具。(而且,真正的高級(jí)用戶喜歡選擇能夠找到的最簡(jiǎn)單工具,直到他們認(rèn)為簡(jiǎn)單的工具不適用為止。)。一如既往,首先要把事情做好,然后再考慮是不是有必要做得更快。
4、線程池
創(chuàng)建和銷毀線程是非常耗資源的,當(dāng)服務(wù)器同時(shí)接受很多請(qǐng)求時(shí),根據(jù)操作系統(tǒng)和內(nèi)存容量,可以創(chuàng)建的線程是有限的,因此需要容易造成內(nèi)存泄漏,產(chǎn)生異常。因此我們采用線程池技術(shù),Executor創(chuàng)建一個(gè)可根據(jù)需要?jiǎng)?chuàng)建新線程的線程池,以前構(gòu)造的線程可用時(shí)將重用它們。對(duì)于執(zhí)行很多短期異步任務(wù)的程序而言,這些線程池通常可提高程序性能。例,創(chuàng)建20個(gè)線程大小的線程池:Executors.newFixedThreadPool(20);
5、原子并發(fā)
Hashtable(或者替代方案 Collections.synchronizedMap)的可伸縮性的主要障礙是它使用了一個(gè) map 范圍(map-wide)的鎖,為了保證插入、刪除或者檢索操作的完整性必須保持這樣一個(gè)鎖,而且有時(shí)候甚至還要為了保證迭代遍歷操作的完整性保持這樣一個(gè)鎖。這樣一來,只要鎖被保持,就從根本上阻止了其他線程訪問 Map,即使處理器有空閑也不能訪問,這樣大大地限制了并發(fā)性
6、ConcurrentHashMap摒棄了單一的 map 范圍的鎖,取而代之的是由 32 個(gè)鎖組成的集合,其中每個(gè)鎖負(fù)責(zé)保護(hù) hash bucket 的一個(gè)子集。鎖主要由變化性操作(put()和 remove())使用。具有 32 個(gè)獨(dú)立的鎖意味著最多可以有 32 個(gè)線程可以同時(shí)修改 map。絕大多數(shù)系統(tǒng)應(yīng)用絕對(duì)夠用。并發(fā)有32個(gè)鎖,超過了32個(gè)鎖就會(huì)處于等待狀態(tài)。ConcurrentLinkedQueue也具有類似的原理。
7、對(duì)于對(duì)象的操作New, clone, reflection之間的比較
對(duì)象生成效率:new一個(gè)對(duì)象生成的效率高于深clone,深clone效率高于反射 復(fù)雜對(duì)象(帶有數(shù)據(jù)結(jié)構(gòu)參數(shù),如Map,List),淺clone對(duì)象生成的效率高于new一個(gè)對(duì)象,new一個(gè)對(duì)象效率高于反射
采用深clone和淺clone效率高,而采用Reflection效率低,因此我們平時(shí)編寫代碼時(shí)要盡量少用反射。
8、字符串優(yōu)化
采用字符串打印out.println()會(huì)影響效率,因此需要減少字符串打印 多使用StringBuffer,避免多字符串級(jí)聯(lián)
二、數(shù)據(jù)庫的性能優(yōu)化
1、對(duì)數(shù)據(jù)庫系統(tǒng)進(jìn)行設(shè)置,方便優(yōu)化,以db2為例,使用 DB2 的自動(dòng)功能,尤其是 DB2 9 支持的 STMM,以及 DB2 Version 8 和 DB2 9 都支持的 Automatic Maintenance(尤其是自動(dòng)的 runstats)。這些功能不但會(huì)減少監(jiān)控和維護(hù)數(shù)據(jù)庫所需的操作,也能對(duì)數(shù)據(jù)庫進(jìn)行更加有效的調(diào)優(yōu)。
2、死鎖檢測(cè)以及提高鎖的并發(fā)性能的方法
數(shù)據(jù)的鎖定分為兩種方法,第一種叫做悲觀鎖,第二種叫做樂觀鎖。什么叫悲觀鎖呢,悲觀鎖顧名思義,就是對(duì)數(shù)據(jù)的沖突采取一種悲觀的態(tài)度,也就是說假設(shè)數(shù)據(jù)肯定會(huì)沖突,所以在數(shù)據(jù)開始讀取的時(shí)候就把數(shù)據(jù)鎖定住。而樂觀鎖就是認(rèn)為數(shù)據(jù)一般情況下不會(huì)造成沖突,所以在數(shù)據(jù)進(jìn)行提交更新的時(shí)候,才會(huì)正式對(duì)數(shù)據(jù)的沖突與否進(jìn)行檢測(cè),如果發(fā)現(xiàn)沖突了,則讓用戶返回錯(cuò)誤的信息,讓用戶決定如何去做
在DB2等很多數(shù)據(jù)庫中,數(shù)據(jù)的鎖定通常采用頁級(jí)鎖的方式,也就是說對(duì)一張表內(nèi)的數(shù)據(jù)是一種串行化的更新插入機(jī)制,在任何時(shí)間同一張表只會(huì)插1條數(shù)據(jù),別的想插入的數(shù)據(jù)要等到這一條數(shù)據(jù)插完以后才能依次插入。帶來的后果就是性能的降低,在多用戶并發(fā)訪問的時(shí)候,當(dāng)對(duì)一張表進(jìn)行頻繁操作時(shí),會(huì)發(fā)現(xiàn)響應(yīng)效率很低,數(shù)據(jù)庫經(jīng)常處于一種假死狀態(tài)。而Oracle用的是行級(jí)鎖,只是對(duì)想鎖定的數(shù)據(jù)才進(jìn)行鎖定,其余的數(shù)據(jù)不相干,所以在對(duì)Oracle表中并發(fā)插數(shù)據(jù)的時(shí)候,基本上不會(huì)有任何影響。
在數(shù)據(jù)庫中可以通過改變鎖來提高應(yīng)用程序并發(fā)性能。DB2檢測(cè)死鎖采用如下方法
首先建立一個(gè)死鎖事件監(jiān)控器db2 connect to sample db2 “create event monitor dlmon for tables, deadlocks with details write to file 'C:dlmon'” mkdir C:dlmon db2 “set event monitor dlmon state 1” 其次等待死鎖,第三通過 db2evmon 工具可以獲得死鎖信息的日志,并且把日志文件導(dǎo)入到本地機(jī)器的文件系統(tǒng)當(dāng)中。在下面一節(jié),我們將詳細(xì)分析導(dǎo)出的日志文件。db2 connect reset db2evmon-path c:dlmon > c:dlmondllog1.txt Db2結(jié)束引起死鎖的應(yīng)用采用如下3種方法:(1)、SELECT AGENT_ID_HOLDING_LK, LOCK_MODE, TABNAME, AGENT_ID FROM SYSIBMADM.LOCKWAITS查找死鎖
(2)根據(jù)AGENT_ID查出應(yīng)用程序db2 list application show detail(3)結(jié)束引發(fā)死鎖的應(yīng)用db2 “force application(id)”
3、sql語句的優(yōu)化
(1)使用索引來可以更快地遍歷表,提高系統(tǒng)速度,但索引不能過量添加,會(huì)增加數(shù)據(jù)庫的極大開銷。有時(shí)候索引不一定能帶來速度快,比如用到in,or子句對(duì)索引沒用處。(2)采用NOT IN會(huì)多次掃描表,建議使用EXIST,NOT EXIST,IN,LEFT OUTER JOIN(3)EXISTS要遠(yuǎn)比IN的效率高。里面關(guān)系到full table scan和range scan。幾乎將所有的IN操作符子查詢改寫為使用EXISTS的子查詢。
(4)在海量查詢時(shí)盡量少用格式轉(zhuǎn)換,比如把字符型轉(zhuǎn)換成數(shù)字型。
(5)慎用游標(biāo)。在某些必須使用游標(biāo)的場(chǎng)合,可考慮將符合條件的數(shù)據(jù)行轉(zhuǎn)入臨時(shí)表中,再對(duì)臨時(shí)表定義游標(biāo)進(jìn)行操作,這樣可使性能得到明顯提高。對(duì)于一些多表操作,少用游標(biāo),在oracle中用臨時(shí)表比用索引要快,但是在其他操作系統(tǒng)中不一定。
(6)不用“<>”或者“!=”操作符。對(duì)不等于操作符的處理會(huì)造成全表掃描,可以用“<” or “>”代替
(7)Where子句中出現(xiàn)IS NULL或者IS NOT NULL時(shí),Oracle會(huì)停止使用索引而執(zhí)行全表掃描??梢钥紤]在設(shè)計(jì)表時(shí),對(duì)索引列設(shè)置為NOT NULL(8)當(dāng)通配符“%”或者“_”作為查詢字符串的第一個(gè)字符時(shí),索引不會(huì)被使用。
(9)Order By語句中的非索引列會(huì)降低性能,可以通過添加索引的方式處理。嚴(yán)格控制在Order By語句中使用表達(dá)式
三、應(yīng)用服務(wù)器的優(yōu)化
1、對(duì)應(yīng)用服務(wù)器的連接池優(yōu)化,連接池的增長速度等
2、Web線程等待隊(duì)列一般情況下應(yīng)該為0.頁面提交的線程請(qǐng)求
weblogic并發(fā)的鎖機(jī)制好,所以訪問的速度快。比WebSphere和tomcat都要速度快。
四、表示層的優(yōu)化
1、html的標(biāo)記壓縮,采用gzip工具壓縮
2、盡量采用div來代替table,嵌套table很影響render性能。
五、優(yōu)化工具的使用 P6Spy & IronTrackSQL SqlDbxPersonal JProfiler HttpAnalyzerFullV4 Fiddler2
通過這次的培訓(xùn)活動(dòng),我有了如下收獲和體會(huì):
1、開闊了視野,了解了很多新的知識(shí)。了解了oracle和db2的差異之處,這是我過去一直想要知道的。
2、在編程技巧方面,學(xué)習(xí)到了以往都沒有注意過得,特別是jvm最底層的性能優(yōu)化,對(duì)我以后應(yīng)用jfw框架技術(shù)處理業(yè)務(wù)邏輯提供了很好的借鑒。因?yàn)榭蚣軐?duì)底層代碼進(jìn)行了一系列的封裝,采用內(nèi)存堆棧和并發(fā)鎖的觀點(diǎn)去編程,可以減少很多不必要的對(duì)系統(tǒng)的開銷。
3、擁有了更多的方法和手段來優(yōu)化系統(tǒng),在軟件的各個(gè)層面上都需要做處理來優(yōu)化系統(tǒng),或許在某個(gè)細(xì)節(jié)處做處理效果并不突出,但是在各個(gè)層面的綜合作用下,性能提高會(huì)非常明顯。
4、學(xué)習(xí)了性能優(yōu)化工具,以后開發(fā)程序多使用輔助工具,能真正提高效率。
5、因?yàn)閰⒓恿诉@次培訓(xùn),我查閱了很多相關(guān)資料,還了解到了很多培訓(xùn)中沒有提到內(nèi)容,更加充實(shí)了知識(shí)。
6、軟件技術(shù)的日新月異也促使我要不斷更新自己的知識(shí)結(jié)構(gòu),為應(yīng)對(duì)不同體系結(jié)構(gòu)的軟件分析與設(shè)計(jì)做好準(zhǔn)備。
第五篇:優(yōu)化經(jīng)濟(jì)環(huán)境心得
優(yōu)化經(jīng)濟(jì)發(fā)展環(huán)境學(xué)習(xí)心得體會(huì)
“邵陽發(fā)展事關(guān)你我,優(yōu)化環(huán)境人人有責(zé)” 發(fā)展環(huán)境是影響一個(gè)地方經(jīng)濟(jì)社會(huì)發(fā)展的關(guān)鍵因素之一。一個(gè)地方的發(fā)展如果缺乏資金、技術(shù)、項(xiàng)目、人才,都可以通過引進(jìn)來解決,惟有發(fā)展環(huán)境不能引進(jìn),只能靠自己去創(chuàng)造。創(chuàng)優(yōu)發(fā)展環(huán)境是推動(dòng)經(jīng)濟(jì)和社會(huì)發(fā)展的客觀需要,有利于激發(fā)全民創(chuàng)業(yè),推動(dòng)經(jīng)濟(jì)發(fā)展,促進(jìn)社會(huì)和諧,實(shí)現(xiàn)邵陽人民的“中國夢(mèng)”。因此創(chuàng)優(yōu)發(fā)展環(huán)境是一項(xiàng)重要職責(zé),我們每個(gè)邵陽人都應(yīng)該努力為營造一個(gè)良好的發(fā)展環(huán)境而奮斗。
開展整頓機(jī)關(guān)作風(fēng)是優(yōu)化經(jīng)濟(jì)發(fā)展環(huán)境的核心內(nèi)容。市委和市政府圍繞我市經(jīng)濟(jì)發(fā)展環(huán)境主要存在的各種問題,召開會(huì)議,深入測(cè)評(píng)。充分表明了市委、市政府優(yōu)化經(jīng)濟(jì)發(fā)展環(huán)境建設(shè)和整頓機(jī)關(guān)作風(fēng)的決心,我作為一名新進(jìn)的國家公務(wù)人員要從自身做起,認(rèn)清形勢(shì),統(tǒng)一思想,充分認(rèn)識(shí)開展優(yōu)化經(jīng)濟(jì)發(fā)展環(huán)境的重要意義,切實(shí)增強(qiáng)投身優(yōu)化經(jīng)濟(jì)發(fā)展環(huán)境的緊迫感、責(zé)任感和自覺性。
從九月底進(jìn)入單位開始,優(yōu)化經(jīng)濟(jì)環(huán)境算是我在房產(chǎn)局第一次正式接觸的工作,參加會(huì)議,積極探討,做好記錄,保障后勤服務(wù),積極關(guān)注措施情況。了解到市房產(chǎn)局近年來認(rèn)真的履行職責(zé),嚴(yán)格依法行政,精簡(jiǎn)辦事程序,提高行政效能,優(yōu)化了房產(chǎn)環(huán)境,先后榮獲“省建設(shè)系統(tǒng)精神文明先進(jìn)單位”、“省住房和城鄉(xiāng)建設(shè)系統(tǒng)文明窗口單位”、“省住房保障和房地產(chǎn)市場(chǎng)監(jiān)管先進(jìn)單位”、“邵陽市文明單位”、“邵陽市績效文明先進(jìn)單位”等40多項(xiàng)榮譽(yù)。同時(shí)積極聽取市民的意見與建議,接受民眾的監(jiān)督,兌現(xiàn)了對(duì)市民的承諾,為此我感到十分的榮耀,也明白要再接再厲,不斷前行。
本人從一開始就嚴(yán)格要求自己,把自己放到與民眾一同的方向上,把心態(tài)放到為民眾服務(wù)的位置上,關(guān)注邵陽發(fā)展,為其憂,為其樂,希望把自己投身到發(fā)展邵陽,發(fā)展家鄉(xiāng)的偉大事業(yè)中。