Archive for September, 2010

Java 6中的性能優化

J2SE 6(代號:Mustang野馬)主要設計原則之壹就是提升J2SE的性能和擴展能力,主要通過最大程度提升運行效率,更好的垃圾收集和壹些客戶端性能來達到。

1、偏向鎖(Biased locking)
Java 6以前加鎖操作都會導致壹次原子CAS(Compare-And-Set)操作,CAS操作是比較耗時的,即使這個鎖上實際上沒有沖突,只被壹個線程擁有,也會帶來較大開銷。為解決這壹問題,Java 6中引入偏向鎖技術,即壹個鎖偏向於第壹個加鎖的線程,該線程後續加鎖操作不需要同步。大概的實現如下:壹個鎖最初為NEUTRAL狀態,當第壹個線程加鎖時,將該鎖的狀態修改為BIASED,並記錄線程ID,當這壹線程進行後續加鎖操作時,若發現狀態是BIASED並且線程ID是當前線程ID,則只設置壹下加鎖標誌,不需要進行CAS操作。其它線程若要加這個鎖,需要使用CAS操作將狀態替換為REVOKE,並等待加鎖標誌清零,以後該鎖的狀態就變成 DEFAULT,常用舊的算法處理。這壹功能可用-XX:-UseBiasedLocking命令禁止。

2、鎖粗化(Lock coarsening)
如果壹段代碼經常性的加鎖和解鎖,在解鎖與下次加鎖之間又沒幹什麽事情,則可以將多次加加鎖解鎖操作合並成壹對。這壹功能可用-XX:-EliminateLocks禁止。

3、自適應自旋(Adaptive spinning)
壹般在多CPU的機器上加鎖實現都會包含壹個短期的自旋過程。自旋的次數不太好決定,自旋少了會導致線程被掛起和上下文切換增加,自旋多了耗CPU。為此Java 6中引入自適應自旋技術,即根據壹個鎖最近自旋加鎖成功概率動態調整自旋次數。

4、常用大內存分布的堆(large page heap)
在大內分頁是x86/amd64架構上用來減小TLB(虛擬地址到物理地址翻譯緩存)大小的TLB失配率。Java 6中的內存堆可以使用這壹技術。

5、提高數組拷貝性能
對每種類型大小寫壹個定制的匯編數組拷貝程序。

6、後臺進行代碼優化
Background Compilation in HotSpot™ Client Compiler: 後臺進行代碼優化

7、線性掃描寄存器分配算法(Linear Scan Register Allocation):
壹種新的寄存器分配策略,基於SSA(static single assignment),性能提高10%左右。常用的寄存器分配算法將寄存器分配看作圖著色問題,時間復雜度是O(n^4),不適用於Java的JIT編譯。原來的JVM裏是根據壹些本地啟發式規則來分配寄存器,效果不太好,Java 6中使用的線性掃描寄存器算法能夠達到與圖顏色算法相似的效果,並且時間復雜度是線性的。

8、並行縮並垃圾收集器(Parallel Compaction Collector)
進行Full GC時使用並行垃圾收集(JDK 5裏原來非Full GC是並行的但Full GC是串行的),使用-XX:+UseParallelOldGC開啟這壹功能

9、並行低停頓垃圾收集器(Concurrent Low Pause Collector)
顯式調用gc(如System.gc)時也可以並行進行標記-清掃式垃圾收集,使用-XX:+ExplicitGCInvokesConcurrent開啟。

10、Ergonomics in the 6.0 Java Virtual Machine
自動調整垃圾收集策略、堆大小等配置,這壹功能在JDK 5中加入,JDK 6中得到顯著增強,SPECjbb2005性能提高70%。

11、boot類裝載器的優化
jre中增加壹個描述package所在jar文件的元索引文件,加快classloader加載類性能,提高桌面Java應用啟動速度(+15%)。內存占用也減少了10%

12、圖形程序優化
在jvm啟動之前顯示splash。

Swing程序中每個窗口有壹個後臺顯示緩存,當該窗口原來被遮擋,現在要顯示時直接從該緩存拷貝數據進行渲染,即使該窗口的繪制線程被阻塞也可以完成這壹渲染。

,

No Comments

PHP Zend 介紹

PHP,壹個嵌套的縮寫名稱,是英文超級文本預處理語言(PHP:Hypertext Preprocessor)的縮寫。PHP 是壹種HTML內嵌式的語言,PHP與微軟的ASP頗有幾分相似,都是壹種在服務器端執行的嵌入HTML文檔的腳本語言,語言的風格有類似於C語言,現在被很多的網站編程人員廣泛的運用。PHP 5.0認證考試科目200-500。最新的考試題庫是由KillTest考試題庫網提供。PHP 獨特的語法混合了 C、Java、Perl 以及 PHP 自創新的語法。它可以比 CGI 或者 Perl 更快速的執行動態網頁。考試名稱:Zend PHP 5 Certification

用PHP做出的動態頁面與其他的編程語言相比,PHP是將程序嵌入到HTML文檔中去執行,執行效率比完全生成HTML標記的CGI要高許多;與同樣是嵌入HTML文檔的腳本語言JavaScript相比,PHP在服務器端執行,成分利用了服務器的性能;PHP執行引擎還會將用戶經常訪問的PHP程序駐留在內存中,其他用戶在壹次訪問這個程序時就不需要重新編譯程序了,只要直接執行內存中的代碼就可以了,這也是PHP高效率的體現之壹。PHP具有非常強大的功能,所有的CGI或者JavaScript的功能PHP都能實現,而且支持幾乎所有流行的數據庫以及操作系統。

PHP 最初是1994年Rasmus Lerdorf創建的,剛剛開始只是壹個簡單的用Perl語言編寫的程序,用來統計他自己網站的訪問者。後來又用C語言重新編寫,包括可以訪問數據庫。在1995年以Personal Home Page Tools (PHP Tools) 開始對外發表第壹個版本,Lerdorf寫了壹些介紹此程序的文檔,並且發布了PHP1.0。在這早期的版本中,提供了訪客留言本、訪客計數器等簡單的功能。以後越來越多的網站使用了PHP,並且強烈要且增加壹些特性,比如循環語句和數組變量等等,在新的成員加入開發行列之後,在1995年中,PHP2.0發布了。第二版定名為PHP/FI(Form Interpreter)。PHP/FI加入了對mSQL的支持,從此建立了PHP在動態網頁開發上的地位。到了1996年底,有15000個網站使用 PHP/FI;時間到了1997年中,使用PHP/FI的網站數字超過五萬個。而在1997年中,開始了第三版的開發計劃,開發小組加入了 Zeev Suraski 及 Andi Gutmans,而第三版就定名為PHP3。2000年,PHP4.0又問世了,其中增加了許多新的特性。

,

No Comments

配置DHCP代理

多網段的DHCP構建

DHCP協議用於在局域網環境中動態分配IP地址。
 
網絡中的客戶機(DHCP Client)通過廣播向DHCP服務器(DHCP Server)發出請求,DHCP服務器為客戶機分配IP地址,再以廣播的方式回傳給客戶機,客戶機綁定獲得的IP地址就可以開始正常的網絡通信了。
由於DHCP服務是以廣播方式進行的,這使得這種應用只能限定在壹個網段之中,對於多網段的局域網環境常用的解決方案有:
1、每個網段設立壹個DHCP Server:


這種方法可由各個網段自行設立DHCP服務器,為本網段的客戶機提供IP地址。
2、使用DHCP代理:


在這種方法中,只需在壹個網段中設立DHCP服務器,把3層交換機配置為DHCP代理(DHCP Relay Agent),它可以把收到的DHCP請求轉發給DHCP服務器,再把DHCP響應報文轉發給客戶機,這樣就可以實現DHCP的跨網段服務。

 DHCP代理的配置

在缺省情況下,3層交換機的DHCP代理服務是關閉的,配置時,需要打開該服務。
1、打開DHCP Relay Agent:
模式:全局配置模式。
命令:
Switch(config)#service dhcp
service dhcp命令用於打開DHCP Relay Agent,這時,交換機就可以進行代理工作了。
2、配置DHCP Server的IP地址:
如果沒有指定DHCP服務器的IP地址,交換機會以255.255.255.255為地址轉發DHCP請求,這種轉發是向所有接口轉發,我們不推薦這種做法。解決方法就是把DHCP服務器的IP地址告知交換機。
模式:全局配置模式。
命令:
Switch(config)#ip helper-address IP-address
這條命令用於指定DHCP服務器的IP地址。
3、關閉DHCP代理:
在全局配置模式下,可以用 no ip helper-address 命令把DHCP Server的IP地址恢復為默認值,用 no service dhcp 命令可以關閉交換機的DHCP Relay Agent功能。
4、查看DHCP Relay Agent狀態:
在特權模式下,可以用 show ip management 命令查看DHCP Relay Agent狀態。
配置舉例:已知DHCP服務器的IP地址為192.168.1.15,把交換機配置成DHCP Relay Agent。
Switch>enable
Switch#configure terminal
Switch(config)#service dhcp
Switch(config)#ip helper-address 192.168.1.15
Switch(config)#end
Switch#
說明:想要實現多網段的DHCP服務功能,除了把交換機配置為DHCP Relay Agent外,還需要把DHCP服務器配置成可為多網段提供IP地址的工作方式,相關內容請參考DHCP服務器的配置。

,

No Comments

70-553:UPGRADE: MCSD Microsoft .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft .NET Framework: Part 1

Exam Code:70-553
Full Name:UPGRADE: MCSD Microsoft .NET Skills to MCPD Enterprise Application Developer by Using the Microsoft .NET Framework: Part 1
Language(s):English, French, German, Japanese
Audience(s):Developers
Technology:Microsoft Visual Studio 2005

About 70-553 Exam
When the exam begins, you can choose the programming language in which the code segments will appear. The available code languages for this exam are:
Microsoft Visual Basic 2005
Microsoft Visual C# 2005

Audience Profile
Candidates for this exam work on a team in a medium-sized or large development environment that uses Microsoft Visual Studio .NET 2003 Enterprise Developer or Visual Studio 2005. Candidates should have at least two years of experience developing Windows-based applications by using the Microsoft .NET Framework. Candidates should have a working knowledge of Visual Studio 2005.
Candidates should have at least three to four years of on-the-job experience dedicated to Windows-based and Web-based application development. Candidates should have worked in the following phases of the application life cycle:
Technical envisioning and planning
Design and development
Stabilizing and releasing
Candidates should be able to design and develop the Web interface of common business applications, such as:
Web-based client applications, both intranet and Internet, that may connect to data stores or middle-tier business logic
Data-oriented applications that provide data entry, data analysis, and reporting capabilities
Workflow and communication applications
Inventory and resource planning applications
Financial and accounting applications
Applications for the insurance and pharmaceutical industries
Business-to-business (B2B) applications
Business-to-customer (B2C) applications
Company Web sites
Web-based shopping cart applications

,

No Comments

Oracle的dump命令與dump函數

壹.Memory Dumps

1).Global Area

ALTER SESSION SET EVENTS ‘immediate trace name global_area level n’;

1 包含PGA

2 包含SGA

4 包含UGA

8 包含indrect memory

2).Library Cache

ALTER SESSION SET EVENTS ‘immediate trace name library_cache level n’;

1 library cache統計信息

2 包含hash table histogram

3 包含object handle

4 包含object結構(Heap 0)

3).Row Cache

ALTER SESSION SET EVENTS ‘immediate trace name row_cache level n’;

1 row cache統計信息

2 包含hash table histogram

8 包含object結構

4).Buffers

ALTER SESSION SET EVENTS ‘immediate trace name buffers level n’;

1 buffer header

2 level 1 + block header

3 level 2 + block contents

4 level 1 + hash chain

5 level 2 + hash chain

6 level 3 + hash chain

8 level 4 + users/waiters

9 level 5 + users/waiters

10 level 6 + users/waiters

5).Buffer

ALTER SESSION SET EVENTS ‘immediate trace name buffer level n’;

n為某個指定block的rdba,該命令可以轉儲某個block在buffer中的所有版本。

6).Heap

ALTER SESSION SET EVENTS ‘immediate trace name heapdump level level’;

1 PGA摘要

2 SGA摘要

4 UGA摘要

8 Current call(CGA)摘要

16 User call(CGA)摘要

32 Large call(LGA)摘要

1025 PGA內容

2050 SGA內容

4100 UGA內容

8200 Current call內容

16400 User call內容

32800 Large call內容

7).Sub Heap

Oracle 9.0.1版本之前

ALTER SESSION SET EVENTS ‘immediate trace name heapdump_addr level n’;

若n為subheap的地址,轉儲的是subheap的摘要信息

若n為subheap的地址+1,轉儲的則是subheap的內容

Oracle 9.2.0版本之後

ALTER SESSION SET EVENTS ‘immediate trace name heapdump_addr level n, addr m’;

其中m為subheap的地址

n為1轉儲subheap的摘要,n為2轉儲subheap的內容

8).Process State

ALTER SESSION SET EVENTS ‘immediate trace name processstate level n’;

9).System State

ALTER SESSION SET EVENTS ‘immediate trace name systemstate level n’;

10).Error State

ALTER SESSION SET EVENTS ‘immediate trace name errorstack level n’;

0 Error stack

1 level 0 + function call stack

2 level 1 + process state

3 level 2 + context area

11).Hang Analysis

ALTER SESSION SET EVENTS ‘immediate trace name hanganalyze level n’;

12).Work Area

ALTER SESSION SET EVENTS ‘immediate trace name workareatab_dump level n’;

1 SGA信息

2 Workarea Table摘要信息

3 Workarea Table詳細信息

13).Latches

ALTER SESSION SET EVENTS ‘immediate trace name latches level n’;

1 latch信息

2 統計信息

14).Events

ALTER SESSION SET EVENTS ‘immediate trace name events level n’;

1 session

2 process

3 system

15).Locks

ALTER SESSION SET EVENTS ‘immediate trace name locks level n’;

16).Shared Server Process

ALTER SESSION SET EVENTS ‘immediate trace name shared_server_state level n’;

n取值為1~14

17).Background Messages

ALTER SESSION SET EVENTS ‘immediate trace name bg_messages level n’;

n為pid+1

二.File Dumps

1).Block

Oracle 7之前

ALTER SESSION SET EVENTS ‘immediate trace name blockdump level n’;

n為block的rdba

Oracle8以後

ALTER SYSTEM DUMP DATAFILE file# BLOCK block#;

ALTER SYSTEM DUMP DATAFILE file#

BLOCK MIN minimum_block#

BLOCK MAX maximum_block#;

2).Tree Dump

ALTER SESSION SET EVENTS ‘immediate trace name treedump level n’;

n為object_id

3).Undo Segment Header

ALTER SYSTEM DUMP UNDO_HEADER ’segment_name’;

4).Undo for a Transaction

ALTER SYSTEM DUMP UNDO BLOCK ’segment_name’ XID xidusn xidslot xidsqn;

5).File Header

ALTER SESSION SET EVENTS ‘immediate trace name file_hdrs level n’;

1 控制文件中的文件頭信息

2 level 1 + 文件頭信息

3 level 2 + 數據文件頭信息

10 level 3

6).Control file

ALTER SESSION SET EVENTS ‘immediate trace name controlf level n’;

1 文件頭信息

2 level 1 + 數據庫信息 + 檢查點信息

3 level 2 + 可重用節信息

10 level 3

7).Redo log Header

ALTER SESSION SET EVENTS ‘immediate trace name redohdr level n’;

1 控制文件中的redo log信息

2 level 1 + 文件頭信息

3 level 2 + 日誌文件頭信息

10 level 3

8).Redo log

ALTER SYSTEM DUMP LOGFILE ‘FileName’;

ALTER SYSTEM DUMP LOGFILE ‘FileName’

SCN MIN MinimumSCN

SCN MAX MaximumSCN

TIME MIN MinimumTime

TIME MAX MaximumTime

LAYER Layer

OPCODE Opcode

DBA MIN FileNumber . BlockNumber

DBA MAX FileNumber . BlockNumber

RBA MIN LogFileSequenceNumber . BlockNumber

RBA MAX LogFileSequenceNumber . BlockNumber;

其中time = (((((yyyy – 1988)) * 12 + mm – 1) * 31 + dd – 1) * 24 + hh) * 60 + mi) * 60

+ ss;

9).Loghist

ALTER SESSION SET EVENTS ‘immediate trace name loghist level n’;

1 dump控制文件中最早和最遲的日誌歷史項

1 dump 2^n個日誌歷史項

No Comments

The Information for MCITP 70-453 Exam

As follows is the exam detail for the Microsoft 70-453 test:
Published: November 11, 2008
Language(s): English, French, German, Japanese, Spanish, Chinese (Simplified)
Audience(s): IT Professionals
Technology: Microsoft SQL Server 2008

About this Exam
This is an upgrade exam that is designed to assess candidates’ knowledge of installing, configuring and maintaining a SQL Server 2008 system.

Audience Profile
Candidates should have one to two years of experience using SQL Server 2008 or two to three years of experience using a previous version of SQL Server. Candidates for this exam are IT professionals who work in jobs in which database administration is their main area of responsibility, or they work in environments in which databases are central to their primary job roles.

These job roles include the following:
•IT generalists who work in environments in which SQL Server 2008 is part of an overall solution
•IT professionals who manage systems that run SQL Server 2008
•Developers who build applications that use SQL Server 2008
•IT professionals who work with third-party applications that are built on SQL Server 2008

Credit Toward Certification
When you pass Exam 70-453: Upgrade: Transition Your MCITP SQL Server 2005 DBA to MCITP SQL Server 2008, you complete the requirements for the following certification(s):
MCITP: SQL Server 2008 Database Administrator

,

No Comments

MCITP認證介紹

MCITP認證是Microsoft Certified IT Professional的簡稱,翻譯過來就是微軟IT專家認證,在整個微軟認證體系中屬於中級證書,獲得MCITP證書主要是按照易證寶學習方案的考試順序來進行。MCITP認證主要的技術分為系統、數據庫、信息和辦公及項目管理,通常大家主要報考的是系統和數據庫類別的MCITP證書,ITExamPrep.com指出MCITP認證對應的職位崗位側重於特定的工作角色包括設計、項目管理、運營管理以及規劃等。

數據庫類的MCITP證書:

SQL2008是采用微軟SQL Server 2008作為企業數據庫服務器,易證寶學員學成出來數據庫日常管理工作,包括數據的備份/恢復、對數據庫性能的調整等,另外還有從事數據庫開發,相關調試等。

SQL2005也是同樣,只不過數據庫服務器環境是SQL Server 2005罷了,工作內容和性質同SQL2005的MCITP壹樣。IT認證考試資源網的老師提示無論從事哪個版本MCITP都要求以後要具備有豐富的管理經驗和處理突發事件(如數據突然丟失、網絡失效)的應變能力。

報考MCITP的基礎條件
資格:按要求得先通過MCTS,但留意壹下兩者的考試科目就會明白,MCITP考試都包含了MCTS的科目,所以只要按照MCITP易證寶學習方案的考試順序來就行了,只是壹個考試科目順序上的先後而已。
學歷:報考MCITP不限制考生的文憑,任何人都可以報考
能力:基本的計算機應用能力,微軟公司建議考生最好相應的軟件使用和技術應用的經驗

考取MCITP可以獲得什麽
方向:項目管理、運營管理
職位:技術支持工程師、系統分析員、網絡分析員、技術顧問
能力:具備成功從事設計、項目管理、運營管理以及規劃等工作所需的綜合技能,根據工作崗位的不同而有所差異
薪水:平均年薪6~15萬人民幣

,

No Comments

【KillTest考題網】最新PMI-002考試題庫

最新的PMI-002 考題由KillTest 考題網提供,以下是最新的PMI-002 考試題庫信息:

考試編號:PMI-002
考試全稱:Certified Associate in Project Management (CAPM) Certification
考題數目:742題

PMP(Project Management Professional)指項目管理專業人士資格認證。美國項目管理協會(PMI)舉辦的項目管理專業人員(PMP)認證考試在全球180多個國家和地區推廣,是目前項目管理領域含金量最高的認證。獲取PMP證書,不僅提升項目經理的項目管理水平,也直接體現項目經理的個人競爭力,是項目管理專業人士身份的象征。

No Comments

CCNA部分命令

RAM/DRAM-保存路由表,各種cache以及運行配置文件;其中共享RAM用於數據包的緩沖;掉電後內容丟失。NVRAM-保存配置文件;掉電後內容不丟失。Flash-可擦洗、可編程ROM;保存IOS,升級方便;掉電後內容不丟失;多個IOS的拷貝可保存於其中。ROM-保存開機自檢、引導程序;及壹個IOS。可通過換芯片方法升級。Interfaces-數據包進出路由器的接口。Interfaces在母板上或在獨立的接口模塊上。部分命令如下:

1.進入SETUP模式Router#setup
2.時間設置 router#clock set hh:mm:ss date moth year
3.router>show history
Router>terminal history size lines 
. n( D8 p# r: W1 C) Y1 [CCNA,CCNA培訓,CCNP,CCIE
4.router#show version
5.router#show running-config
6.router#show starup-config
7.router(config)#hostname name 主機命名
8.router(config)#banner motd # message # 開機時的固定顯示信息 
9.router(config)#enable password password 特權模式明文密碼
10.router(config)#no enable password
11.router(config)#enable secret password 特權模式加密密碼
12.router(config)#no enable secret
13.router(config)#service password-encryption特權模式把明文密碼加密密碼,但沒enable secret安全可以反解
14.router(config)#line console控制臺密碼
15.router(config-line)#login
16.router(config-line)#password password
17.router(config-line)#exec-timeout mm ss 禁止控制臺會話自動退出
18.router(config-line)#logging synchronous重顯被打亂的控制臺輸入
router(config)#no ip domain-lookup 禁止域名解析
19.router(config)#line vty 0 4虛擬終端密碼
20.router(config-line)#login
21.router(config-line)#password password
22.router(config)#interface type number(slot/port)端口設置
23.router(config-if)#ip address ip summast
24.router(config-if)#clock rate 64000(時鐘頻率單位為bps,只在DCE端設置)
25.router(config-if)#bandwith 64(帶寬設置,單位為KB)
26.router(config-if)#no shutdown(shutdown)
27.router(config-if )#media-type type(10base) 為以太網端口選擇適當的介質類型
28.router(config-if )#ctrl+z保存退出到特權模式
29.router#

,

No Comments

最新IBM LOT-838 考古題

KillTest 提供 LOT-838 考古題含蓋了當前最新的真實考題,並且全部附有正確答案。如果您正在準備LOT-838考試,它將是最佳的學習助手,是您通過考試取得Lotus證照的捷徑。

考試編號: LOT-838
考試名稱: IBM Lotus Notes Domino 8 Developing Composite Applications

版本:V8.02
考題數目:100 題Q&As
更新:2010-09-07
價格:$ 78.00 USD   約NT$ 2496 台幣

我們保證您一次性通過 LOT-838 考試。購買了我們的 LOT-838 考古題的用戶,只要是首次參加考試失敗,憑蓋有PROMETRIC或VUE考試中心鋼印的考試成績單,我們將退還您購買LOT-838考古題的全部費用。

No Comments

Cisco 642-384 考試問題和答案

KillTest 為您提供一個明確的和特殊的解決方案,我們為您提供詳細的 642-384  的問題和答案。我們的專家來自不同地區有經驗的技術專家編寫 642-384  考古題。我們的 642-384  考古題是我們經過多次測試和整理答案。
VUE/Prometric 考試編號: 642-384
考試名稱: Cisco Express Foundation design Specialist

版本:V21.02
考題數目:434 Q&As
價格: $ 79.00 USD
約「NT$ 2528」台幣
更新:2010-08-14

我們會持續不斷從世界各地用戶在他們的地區參加Specialist 642-384  考試信息反饋,能過輕鬆的獲取考試信息,及時的更新Specialist題庫,這使我們的其他用戶可以共享這些考試資訊,參加考試更有信心!這是通過Specialist考試最有效的方法之一。

No Comments

分享Cisco Specialist 646-364 題庫

Cisco 646-364  題庫由“KillTest題庫網”資深IT認證講師和Cisco產品專家結合Prometric或VUE的真實考試環境最新原題精心打造。KillTest 646-364 考題助您一次輕鬆通過Specialist考試。

VUE/Prometric 考試編號: 646-364
考試名稱: Cisco Express Foundation design Specialist

版本:V21.02
考題數目:434 Q&As
價格: 79.00 USD
約「NT$ 2528」台幣
更新:2010-08-14

我們保證您一次性通過 646-364  考試。購買了我們的 646-364  考古題的用戶,只要是首次參加考試失敗,憑蓋有PROMETRIC或VUE考試中心鋼印的考試成績單,我們將退還您購買646-364 考古題的全部費用。

No Comments