• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            天空之城
            new,think,program,happy to live
            posts - 39,comments - 39,trackbacks - 0

            啟動(dòng)IIS出現(xiàn)0x8ffe2740錯(cuò)誤的解決辦法


                系統(tǒng)提示了錯(cuò)誤號(hào)“0x8ffe2740”,百度一下,答案是:IIS要使用的80端口被程序占用,只需要更改IIS所使用的端口即可解決問題。改了端口后問題果然解決。

             

                但是,在調(diào)試程序或在瀏覽器中瀏覽本地程序時(shí),總是要在地址后面增加端口號(hào),很不方便。再就是以前已經(jīng)做了N個(gè)Web應(yīng)用程序,再逐個(gè)改項(xiàng)目文件,太麻煩。還是希望用80作IIS端口。

             

                于是用netstat -an -p tcp -o命令查看本地所開放的端口,以及進(jìn)程號(hào)PID(命令詳細(xì)意思可以查看幫助)。得到本地確實(shí)是有一個(gè)0.0.0.0:80的連接PID是848(不知道這是什么進(jìn)程),知道進(jìn)程號(hào)后于是用tskill 848殺掉此進(jìn)程,再次重啟IIS,并且以80作為其端口,啟動(dòng)成功,問題解決。

            (注:摘自http://hi.baidu.com/key8086/blog/item/759232092380b9ad2fddd452.html )

             

            netstat 命令參數(shù)說明:

            -n 是查端口號(hào)相關(guān)的進(jìn)程

            -o 是查出相關(guān)進(jìn)程的ID

            netstat -an -o 可以查出端口及進(jìn)程ID

             

            查到對(duì)應(yīng)ID 后,可以在 "任務(wù)管理器" 中,在查看菜單中,選擇 "選擇列" 選中 PID 列項(xiàng), 可以查出哪個(gè)程序,對(duì)應(yīng)這個(gè)ID 占著哪個(gè)端口。

             

            posted @ 2007-07-10 18:02 太極虎~宏 閱讀(283) | 評(píng)論 (0)編輯 收藏
            1.運(yùn)行regedit進(jìn)入注冊(cè)表,HKEY_LOCAL_MACHINE\ SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\Notify\WgaLogon,刪除它,重新啟動(dòng).wgatray.exe就不會(huì)自動(dòng)啟動(dòng)了.
            2.把系統(tǒng)盤:\windows\system32中的wgatray.exe刪除.
            3.徹搜索文件wgatray,統(tǒng)統(tǒng)刪除...
            posted @ 2007-06-07 09:04 太極虎~宏 閱讀(1496) | 評(píng)論 (0)編輯 收藏

            要安裝LogMiner工具,必須首先要運(yùn)行下面這樣兩個(gè)腳本,這兩個(gè)腳本必須均以SYS用戶身份運(yùn)行。其中第一個(gè)腳本用來創(chuàng)建DBMS_LOGMNR包,該包用來分析日志文件。第二個(gè)腳本用來創(chuàng)建DBMS_LOGMNR_D包,該包用來創(chuàng)建數(shù)據(jù)字典文件。

            1..$ORACLE_HOME/rdbms/admin/dbmslm.sql 2. $ORACLE_HOME/rdbms/admin/dbmslmd.sql.

            SQL> @d:\oracle\product\10.2.0\db_2\RDBMS\ADMIN\dbmslm.sql

            程序包已創(chuàng)建。

            授權(quán)成功。

            SQL> @d:\oracle\product\10.2.0\db_2\RDBMS\ADMIN\dbmslmd.sql

            程序包已創(chuàng)建。

             

            使用LogMiner工具

             

            1、創(chuàng)建數(shù)據(jù)字典文件(data-dictionary)

            數(shù)據(jù)字典文件是一個(gè)文本文件,使用包DBMS_LOGMNR_D來創(chuàng)建。如果我們要分析的數(shù)據(jù)庫中的表有變化,影響到庫的數(shù)據(jù)字典也發(fā)生變化,這時(shí)就需要重新創(chuàng)建該字典文件。另外一種情況是在分析另外一個(gè)數(shù)據(jù)庫文件的重作日志時(shí),也必須要重新生成一遍被分析數(shù)據(jù)庫的數(shù)據(jù)字典文件。

            在ORACLE8I的時(shí)候,首先在init.ora初始化參數(shù)文件中,指定數(shù)據(jù)字典文件的位置,也就是添加一個(gè)參數(shù)UTL_FILE_DIR,該參數(shù)值為服務(wù)器中放置數(shù)據(jù)字典文件的目錄。如:

            UTL_FILE_DIR = (e:\Oracle\logs) 

            ORACLE9I后,推薦使用SPFILE啟動(dòng),可以動(dòng)態(tài)調(diào)整參數(shù);

            SQL> show parameter spfile

            NAME                                 TYPE        VALUE                         

            ------------------------------------ ----------- ------------------------------

            spfile                               string      D:\ORACLE\PRODUCT\10.2.0\DB_2\

                                                             DATABASE\SPFILESGTEST2.ORA    

            SQL> alter system set utl_file_dir='d:\oracle\logs' scope=spfile;

            系統(tǒng)已更改。

            SQL> startup force

            ORACLE 例程已經(jīng)啟動(dòng)。

             

            Total System Global Area  289406976 bytes                                      

            Fixed Size                  1248600 bytes                                      

            Variable Size              96469672 bytes                                      

            Database Buffers          188743680 bytes                                      

            Redo Buffers                2945024 bytes                                      

            數(shù)據(jù)庫裝載完畢。

            數(shù)據(jù)庫已經(jīng)打開。

            SQL> show parameter utl_file_dir

             

            NAME                                 TYPE        VALUE                         

            ------------------------------------ ----------- ------------------------------

            utl_file_dir                         string      d:\oracle\logs  

             

            然后創(chuàng)建數(shù)據(jù)字典文件

            SQL> @d:\dbms_logmnr_d.build.txt

             

            PL/SQL 過程已成功完成。

             

            腳本dbms_logmnr_d.build.txt

            BEGIN

            dbms_logmnr_d.build(

            dictionary_filename => 'logminer_dict.dat',

            dictionary_location => 'd:\oracle\logs');

            END;

            /


            2、創(chuàng)建要分析的日志文件列表

                Oracle的重作日志分為兩種,在線(online)和離線(offline)歸檔日志文件,我這里主要分析歸檔日志,在線日志原理一樣。

                A.創(chuàng)建列表
            SQL>execute dbms_logmnr.add_logfile(options =>dbms_logmnr.new,logfilename =>'D:\oracle\product\10.2.0\oradata\oracle9i\REDO01.LOG');


            B.添加另外的日志文件到列表
            SQL>execute dbms_logmnr.add_logfile(options =>dbms_logmnr.addfile,logfilename=>'D:\oracle\product\10.2.0\oradata\oracle9i\REDO02.LOG');

            SQL> execute dbms_logmnr.add_logfile(options =>dbms_logmnr.addfile,logfilename=>'D:\oracle\product\10.2.0\oradata\oracle9i\REDO03.LOG');
            刪除
            SQL> execute dbms_logmnr.add_logfile(options =>dbms_logmnr.removefile,logfilenam

            e =>'D:\oracle\product\10.2.0\oradata\oracle9i\REDO03.LOG');

             8.啟動(dòng)LogMiner進(jìn)行分析

            BEGIN

            dbms_logmnr.start_logmnr(

            dictfilename => 'd:\oracle\logs\logminer_dict.dat');

            END;

            /

             
            4、觀察分析結(jié)果(v$logmnr_contents)

            到現(xiàn)在為止,我們已經(jīng)分析得到了重作日志文件中的內(nèi)容。動(dòng)態(tài)性能視圖v$logmnr_contents包含LogMiner分析得到的所有的信息。

            SELECT sql_redo FROM v$logmnr_contents; 




            網(wǎng)上這種東西很多,但好多都會(huì)報(bào)錯(cuò),著是經(jīng)過我實(shí)際操作過的.
            posted @ 2007-06-06 14:07 太極虎~宏 閱讀(4800) | 評(píng)論 (3)編輯 收藏
            考研很大程度上既是對(duì)以往生活的一次認(rèn)真的審判,也是對(duì)前途愿景的一次美好的憧憬;既然是審判就包含許多否決和重建,既然是憧憬就包含許多希望和誘惑。考研是對(duì)生命的一次認(rèn)真的思考和全新的探索,它深藏著一種對(duì)人生、對(duì)社會(huì)、對(duì)宇宙的價(jià)值判斷和理性認(rèn)知,當(dāng)這種或許處于無意識(shí)狀態(tài)的精神被驚醒乃至被強(qiáng)化為明白的自我意識(shí)后,隱藏在你心靈深處的智慧之眼將變得炯炯有神,一種可以支配人生的驚人力量將無限爆發(fā)以致包圍你的生活,你的靈魂將展示一個(gè)向上的方向和飛躍的姿態(tài)。
                相對(duì)來說,以下八種人士在沐浴考研之滾滾大潮時(shí)更加無需猶豫逡巡,考研之存在甚而壯大確實(shí)有其不可否認(rèn)的原因,而這八種人完全可以輕易地給自己找到一個(gè)或幾個(gè)考研的理由:
                其一曰:感覺工作乏味者。不少人干著不痛不癢的事情,工作起來有如機(jī)器一般乏味無聊,每天就是那三五件重復(fù)了千百遍的舊事,月復(fù)一月,年復(fù)一年,歲月已近乎停止,時(shí)間已近乎凝固,生命只是坐等無聊,這樣的人選擇考研還需猶豫?
                其二曰:覺察前途渺茫者。一個(gè)很可能要在鄉(xiāng)村中小學(xué)站一輩子講臺(tái)的人,一個(gè)很可能要在小縣城的雞肋部門的某個(gè)科室做一輩子職員的人,一個(gè)在外面漂泊滾打多年仍然一事無成的人,選擇考研難道不是一個(gè)改變命運(yùn)的契機(jī)?
                其三曰:有志學(xué)術(shù)事業(yè)者。現(xiàn)在很少聽到本科生搞學(xué)問的人了,相反,博士生、博士后才是做學(xué)問、搞研究的人才的觀點(diǎn)逐漸成為社會(huì)共識(shí);因此,想耕耘大學(xué)講壇、想苦思于書齋、想活躍于實(shí)驗(yàn)室的人除了考研別無選擇。
                 其四曰:就讀基礎(chǔ)專業(yè)者。諸如讀歷史、哲學(xué)、物理等基礎(chǔ)專業(yè)的本科生往往在求職途中更為艱難,雖然要因人因情而言,但一般說來這樣的學(xué)生不考研不繼續(xù)深造想學(xué)以致用、想輕松找到工作難度不小。
                 其五曰:擁有名校情結(jié)者。仰慕名校從壞的角度看是虛榮心,從好的角度看是進(jìn)取心,這種虛榮心通常都是善良和積極的,通過樹立高遠(yuǎn)目標(biāo)來激發(fā)自己的潛力難道不是好事嗎?金字塔下層學(xué)校的學(xué)生可以通過考研滿足自己的名校情結(jié)。
                 其六曰:性情內(nèi)向孤僻者。這樣說不是鼓勵(lì)大家離群索居、沉默自守,恰恰相反,適當(dāng)?shù)慕煌突钴S是完善人格、適應(yīng)社會(huì)所需要的品質(zhì);之所以說內(nèi)向性格的人更適合考研是因?yàn)樗麄兺苣偷美浒宓省⒏莒o心學(xué)習(xí)和研究。
                 其七曰:希望有高學(xué)歷者。這樣的人選擇考研的原因其實(shí)很白了,細(xì)細(xì)品味一下,容易發(fā)現(xiàn)這類人考研考博通常與上面提到的帶有理想主義色彩的虛榮心不同,往往帶有較為強(qiáng)烈的功利色彩,多是為職稱、職務(wù)、待遇所迫。
                 其八曰:改變學(xué)歷成色者。在我們的社會(huì)里,有不少的一批人由于早先各種原因選擇了中專教育,后來他們通過自己的努力參加成人教育考試、函授考試、電大教育獲得了本科文憑,這樣的人參加考研可以大大提升自己先前學(xué)歷的成色。
                 每個(gè)考研的人都需要一個(gè)理由,關(guān)鍵是這個(gè)理由最后能否上升為一種信念,這一信念能否改變你的學(xué)習(xí)和生活態(tài)度,這一態(tài)度能否最終改變你的行動(dòng)!
            posted @ 2007-06-06 13:52 太極虎~宏 閱讀(217) | 評(píng)論 (0)編輯 收藏

            談?wù)勎覍?duì)攻讀計(jì)算機(jī)研究生的看法
              就我自己的理解,談?wù)勎覍?duì)讀研和軟件學(xué)院的看法,不妥之處一笑了之即可。
              
              如果你有實(shí)際開發(fā)工作經(jīng)驗(yàn),感覺自己的水平和實(shí)力進(jìn)入了一個(gè)高原期,迫切需要從

            理論上提高,那么計(jì)算機(jī)學(xué)院是唯一選擇。因?yàn)橛?jì)算機(jī)學(xué)院才能讓你在理論上更上一層樓

            。軟件學(xué)院從教學(xué)計(jì)劃上就沒有把你往這方面帶。當(dāng)然能不能更上一層樓最終還是完全取

            決于你自己。需要特別說明的是,工作經(jīng)驗(yàn)并不一定等于開發(fā)經(jīng)驗(yàn),我見過很多工作2-3年

            的人,但是沒有一點(diǎn)開發(fā)經(jīng)驗(yàn)。
              
              你說:“他們都有很強(qiáng)的開發(fā)能力,只是不太喜歡讀書,也只是希望混個(gè)學(xué)歷對(duì)今后在

            崗位上晉升有好處”,我可以向你保證,你所說的人絕對(duì)不是開發(fā)能力很強(qiáng)的人。因?yàn)椋?/p>

            1)高手不可能不喜歡讀書;2)高手不可能想去混一個(gè)學(xué)歷;3)高手不可能認(rèn)為晉升是因

            為學(xué)歷的原因。
              
              還需要說明的是,考計(jì)算機(jī)的人未必個(gè)個(gè)都是高手,嚴(yán)格來說,大部分都不會(huì)編程序

            。也就是說,庸庸碌碌之輩仍然占絕大多數(shù)。研究生畢業(yè)的師兄只拿2500元左右的比比皆

            是,所以不要寄希望于拿一張研究生文憑出去賺高薪。但是,對(duì)于有實(shí)際開發(fā)工作經(jīng)驗(yàn)的

            人,要想自己在3年之中有一個(gè)真正的提高的話,計(jì)算機(jī)學(xué)院提供了廣闊的平臺(tái)。就我所知

            ,每一個(gè)月拿2萬以上的也有(上海育碧,圖形特效算法設(shè)計(jì))。所以,同為研究生畢業(yè),

            能力的差距是極大的。所以,不要去問“研究生畢業(yè)能拿多少?”,要問“像我這種水平

            的人,研究生畢業(yè)能拿多少錢?”這樣人家才能夠準(zhǔn)確地回答你。
              
              所謂“有實(shí)際開發(fā)工作經(jīng)驗(yàn)”是指你目前已經(jīng)具備下列能力:1)你已經(jīng)認(rèn)為C++和匯

            編語言都是很簡(jiǎn)單的語言,并能夠自如地運(yùn)用;2)你能夠在30分鐘之內(nèi)想到正確的五子棋

            AI算法設(shè)計(jì)思路和方向;3)你完全理解STL為什么這么重要;4)你能夠獨(dú)立地解決所有的

            編譯與鏈接問題,哪怕你從來沒有遇到的問題,你也不需要詢問任何人;5)英文網(wǎng)站是你

            的首要信息來源;6)能夠讀懂英語寫成的國(guó)際標(biāo)準(zhǔn),比如NTFS磁盤格式標(biāo)準(zhǔn)。7)你經(jīng)常

            站在集合論的角度思考算法問題;8)能夠理解一個(gè)簡(jiǎn)單的驅(qū)動(dòng)程序,能夠理解一個(gè)簡(jiǎn)單3

            D交互程序;9)你能夠認(rèn)識(shí)到線性代數(shù)和概率論在實(shí)際編程工作中的極端重要性;10)你

            完全理解COM的設(shè)計(jì)思想,尤其能夠理解COM為什么要設(shè)計(jì)成這樣;11)當(dāng)我說到虛函數(shù)的

            重要作用時(shí),你不會(huì)急著去找書來翻;12)你能夠說出C++為什么比其他語言優(yōu)秀的理由,

            記住這種理由應(yīng)該來自于你的開發(fā)體會(huì),而不是因?yàn)槠渌硕歼@么說。此外還有很多判斷

            標(biāo)準(zhǔn),但如果你同時(shí)具備5條以上,可以認(rèn)為你已經(jīng)具備相應(yīng)的開發(fā)經(jīng)驗(yàn)了。在這種狀態(tài)下

            讀研,你將取得讀研效益的最大值。
              
              讀研最重要的是要明白你自己要干什么,不能等導(dǎo)師來告訴你你應(yīng)該干什么。研究生

            的優(yōu)勢(shì)在于理論功底深厚,思維具有穿透力,當(dāng)然編程能力首先要過關(guān),不要讀完研究生

            還不知道MFC程序的WinMain函數(shù)在哪里。所以,研究生期間,你一定要做有理論深度的算

            法設(shè)計(jì),比如大規(guī)模數(shù)據(jù)的搜索算法,性能是首要考慮因素,不要奢望SQL函數(shù)能夠幫你解

            決問題,所有的問題你都必須自己解決,你必須解決內(nèi)外存交換的性能瓶頸。再比如極品

            飛車的3D場(chǎng)景生成,圖形變換,碰撞檢測(cè),物性模擬,紋理映射,燈光模型等等,這些都

            是可以保證你能拿到2萬以上月薪的技術(shù)。如果你認(rèn)為這些東西太難,不可能做得出來的話

            ,那么你就不適合讀研。真的,要是你認(rèn)為讀研之后還是要去搞一般的程序設(shè)計(jì),如信息

            管理系統(tǒng)之類的軟件,那么你讀研的價(jià)值就完全不會(huì)得到體現(xiàn),因?yàn)檫@些工作根本就不需

            要讀研。
              
              軟件學(xué)院宣稱培養(yǎng)軟件開發(fā)人才,恕我直言,我從來沒有看見那個(gè)高手是培訓(xùn)成功的

            。成為軟件開發(fā)高手的路只有一條:自學(xué)!軟件開發(fā)中需要大量的編程實(shí)踐和獨(dú)立思考,

            只有在此過程中,你才能夠逐步成長(zhǎng)起來。軟件學(xué)院宣稱培養(yǎng)軟件項(xiàng)目經(jīng)理,這更是搞笑

            ,在某種意義上這是欺騙行為。學(xué)院里面能夠培養(yǎng)出軟件開發(fā)經(jīng)理更是十足的謊言,軟件

            項(xiàng)目經(jīng)理必須,或者說更強(qiáng)調(diào)從戰(zhàn)爭(zhēng)中學(xué)會(huì)戰(zhàn)爭(zhēng)。沒有實(shí)踐經(jīng)驗(yàn)的項(xiàng)目經(jīng)理就是繡花枕頭

            一個(gè)。
              
               
              總之一句話,如果你只想成為軟件開發(fā)高手(比如認(rèn)為會(huì)編驅(qū)動(dòng)程序或殺毒軟件就是

            高手的那種),建議工作,不要考研;完全沒有工作經(jīng)驗(yàn)的,也不建議考研,你進(jìn)來了只

            有瞎混一通。如果你有上述工作經(jīng)驗(yàn)且想成為高級(jí)軟件工程師(能夠獨(dú)立理解并設(shè)計(jì)出快

            速傅立葉變換算法的那種軟件工程師)的話,那么強(qiáng)烈建議考研。考研讓你有3年放松思考

            的機(jī)會(huì),也有3年讓你思想和技術(shù)積累沉淀的機(jī)會(huì)。非常難得的機(jī)會(huì)。不考研的話,這種機(jī)

            會(huì)就是一種奢侈,可望而不可即的那么一種奢侈。
              
                
              1)關(guān)于讀書的機(jī)會(huì)成本問題。讀研的機(jī)會(huì)成本的確是很高。任何人都可以簡(jiǎn)單地計(jì)算

            出來。所以,我也不贊成所有的人都去讀研。讀研只適合那些痛感數(shù)學(xué)在編程中的極端重

            要性的人。如果對(duì)理論工具和理論思維的極端重要性沒有切膚的認(rèn)識(shí),那么讀研的價(jià)值幾

            乎為0;讀研的好處在于:A,把你自己放在一個(gè)學(xué)術(shù)和工程的交叉點(diǎn)上;B,讓你具備了進(jìn)

            入微軟等世界頂級(jí)軟件研發(fā)機(jī)構(gòu)的可能性;記住只是可能性。但是不讀研這種可能性為0;

            C,如前所述,如果沒有讀研的機(jī)會(huì),你也就沒有靜下心來好好鉆研幾年理論的機(jī)會(huì);一邊

            工作拿高薪,一邊深入地學(xué)習(xí)各種理論,諸位認(rèn)為這可能嗎?我反正認(rèn)為不可能,我覺得

            學(xué)習(xí)鉆研理論最需要的就是一個(gè)長(zhǎng)期安靜獨(dú)處的環(huán)境,一邊工作一邊讀書是不可能有這樣

            的環(huán)境的,你會(huì)覺得每天都在疲于奔命。而讀研正好可以提供這樣一個(gè)環(huán)境。我同時(shí)還反

            對(duì)整天跟著導(dǎo)師的屁股后面跑,這樣會(huì)浪費(fèi)很多時(shí)間。讀計(jì)算機(jī)的研究生,主要依靠自己

            去查閱最新文獻(xiàn),自己去研讀文獻(xiàn),和導(dǎo)師的口頭交流一個(gè)月一次就足夠了,前提還需要

            導(dǎo)師的水平足夠牛。如果導(dǎo)師的水平不牛,這也沒關(guān)系,不理他就是了,自己做好自己的

            事情即可。
              
              2)關(guān)于研究生教學(xué)質(zhì)量問題。坦白地說,全國(guó)都是“洪桐縣中無好人”,尤其在計(jì)算

            科學(xué)領(lǐng)域,大牛極少。那為什么還要去讀研?大哉問!把讀研的收獲寄托在名校或名師的

            名我認(rèn)為氣上,是注定要失敗的。讀研全靠自學(xué),研究生之間的差距全部體現(xiàn)在自學(xué)能力

            上面。又有人問,既然是自學(xué),為什么非要讀研?回答是:因?yàn)樽x研就是為你買一份保險(xiǎn)

            ,就是買一份你自學(xué)三年之后不會(huì)失業(yè)的保險(xiǎn)。這份保險(xiǎn)主要是一種心理上的后盾,讓你

            在自學(xué)過程中經(jīng)得起誘惑,能夠從容鎮(zhèn)定地去追尋計(jì)算機(jī)理論發(fā)展的堅(jiān)實(shí)足跡,從歐拉,

            費(fèi)馬,高斯,康托,圖靈等巨匠那里尋找方法論的珠寶。倘若沒有這份保證,你在家里面

            自學(xué)3個(gè)月,保證你會(huì)被失業(yè)的壓力壓得喘不過氣來,何談安心學(xué)習(xí)?
              
              3)關(guān)于實(shí)戰(zhàn)經(jīng)驗(yàn)與理論學(xué)習(xí)的優(yōu)劣問題。這沒有定論,如前所述,管理信息系統(tǒng),設(shè)

            備驅(qū)動(dòng)開發(fā),工具軟件開發(fā),軟件病毒剖析等等這些工作不太需要?jiǎng)?chuàng)造性,需要的是耐心

            和經(jīng)驗(yàn),需要的是對(duì)既有規(guī)范的準(zhǔn)確理解,這類開發(fā)工作最適合在實(shí)戰(zhàn)中提高,理論學(xué)習(xí)

            沒什么作用。但是在人工智能,模式識(shí)別,圖像壓縮,虛擬現(xiàn)實(shí),巨量數(shù)據(jù)檢索,自然語

            言理解,計(jì)算機(jī)圖形學(xué)等等領(lǐng)域,理論學(xué)習(xí)就占據(jù)著絕對(duì)的統(tǒng)治地位!這些領(lǐng)域的突破對(duì)

            人類的生活的影響是極其巨大而深刻的。某些領(lǐng)域處于一個(gè)極其快速發(fā)展的態(tài)勢(shì)之中,比

            如計(jì)算機(jī)圖形學(xué),相信諸君能夠從眾多3D游戲的燦爛輝煌中體認(rèn)到我的這種說法。在這些

            領(lǐng)域,如果沒有扎實(shí)的理論功底,一切都是那么遙遠(yuǎn),不管你花了多少時(shí)間在編程上面。


              
              4)關(guān)于高級(jí)研發(fā)人員的知識(shí)結(jié)構(gòu)問題。首先聲明,我不是一個(gè)純粹理論激進(jìn)分子,即

            認(rèn)為除了理論之外,一切都不重要。我認(rèn)為,純熟的編程技能是最基本但也是最必不可少

            的技能。沒有這個(gè)基礎(chǔ),一切計(jì)算機(jī)理論就是空談(研究圖靈可計(jì)算性理論的研究者除外

            )。有了這個(gè)基礎(chǔ)之后,下列理論學(xué)習(xí)方向必須重點(diǎn)突破:
              
              1,科學(xué)哲學(xué)。這是核心中的核心!可惜國(guó)內(nèi)不開這門課。不但不開課,而且還作為批

            判對(duì)象來引用,實(shí)在是遺憾至極!這是一門教你如何“釣魚”的學(xué)科,在一切科學(xué)研究中

            居于最核心的地位。它是古今科研方法和思維方法的集大成者,很難想象一個(gè)成熟的研究

            者沒有一套自己的方法論體系。科學(xué)哲學(xué)最需要的是領(lǐng)會(huì)與總結(jié),它的思想與啟示會(huì)伴隨

            我們的一生。
              
              2,康托集合論,矩陣方法,離散結(jié)構(gòu),圖論方法,群論方法之間的緊密關(guān)系。最重要

            的認(rèn)識(shí)這些理論對(duì)實(shí)踐的重要啟示和方法引導(dǎo)。我始終認(rèn)為,如果你學(xué)了一門理論之后,

            卻不知道這門理論有什么作用,那么你的理論就白學(xué)了,你什么東西都沒有撈著。所以,

            學(xué)習(xí)任何理論之前,先問自己:它有什么用?在哪里用?如何用?帶著這些問題去學(xué)習(xí)理

            論,你才會(huì)真正地學(xué)到東西。用這三個(gè)問題去問你的理論課老師,他的回答就是判斷其實(shí)

            際水平的最佳標(biāo)準(zhǔn)。
              
              3,思維要有極強(qiáng)的穿透力,學(xué)會(huì)看透文獻(xiàn)作者沒有寫出來的動(dòng)機(jī)。絕大部分大師都有

            隱瞞自己最具有方法論啟示意義的思考環(huán)節(jié)的習(xí)慣。牛頓和華羅庚先生都有這個(gè)壞習(xí)慣。

            這讓大家認(rèn)為他們是天才,因?yàn)楹芏鄦栴}他想到了,我們想不到。但是為什么他們能想到

            ,我們想不到?他們是怎樣想到的?沒有人告訴我們牛頓發(fā)現(xiàn)萬有引力定律時(shí)的思考過程

            ,當(dāng)然,牛頓可以慷慨地把他的思考結(jié)果告訴我們,但是,他那可以點(diǎn)石成金的“金手指

            ”卻沒有教給我們。我們的任務(wù)就是要培養(yǎng)透過文章看穿作者背后意圖和動(dòng)機(jī)的能力,在

            這方面,臺(tái)灣的侯捷和美國(guó)的Donbox是絕佳典范。這兩只老狐貍(呵呵,是愛稱)憑著其

            獵犬一般的嗅覺,抽絲剝繭,一個(gè)把COM背后的幕后設(shè)計(jì)動(dòng)機(jī)揭開并暴露到了光天化日之下

            ,另一個(gè)把MFC的宏觀架構(gòu)做了一次完美的外科手術(shù)。其非凡的思維穿透力令人驚嘆。
              
              4,英語。英語本身不重要,但是用英語寫成的文獻(xiàn)就極其重要了。所以,專門把英語

            作為一個(gè)重頭戲列出來。大家不要相信英語無用論的鬼話。對(duì)于搞計(jì)算機(jī)的而言,英語就

            是你的母語!
              
              5,其它的具體理論還有很多,但是都不如這三個(gè)方面重要,因?yàn)槲矣X得這三個(gè)方面是

            最具有根本性,全局性的能力培養(yǎng)環(huán)節(jié)。需要指出的是,很多高深理論對(duì)你的工作是無意

            義的,當(dāng)心時(shí)間陷進(jìn)去。一定要把效率最高的時(shí)間段用在最具有決定性意義的理論學(xué)習(xí)上


              
              5)關(guān)于讀研之后的出路是否光明的問題。我們應(yīng)該承認(rèn),讀研之后,你的工作機(jī)會(huì)不

            是變多了,而是變少了。而且越是高手,他的工作機(jī)會(huì)和工作范圍就越少。這是因?yàn)椋?/p>

            是搞前沿研發(fā)的公司,其數(shù)量越少,在這個(gè)圈子的人也就越少。你找工作的范圍就越小,

            試問:如果微軟的OS設(shè)計(jì)專家出來找工作,能夠讓他選擇的公司能有幾家?但是,這種公

            司數(shù)量的減少是以工資待遇的急劇上升為補(bǔ)償?shù)模瑫r(shí),你在工作中所受到的充分尊重也

            是在一般公司中體會(huì)不到的。所以不要擔(dān)心學(xué)了高科技用不上,呵呵,你只會(huì)越來越感覺

            自己學(xué)的不夠用。相信接到過獵頭公司電話的人會(huì)體會(huì)得到。真正的高手從來就不會(huì)擔(dān)心

            工作的問題,也從來不會(huì)到人才市場(chǎng)上去找工作。既然選擇了理論深入,那么就應(yīng)該把眼

            光放得更遠(yuǎn)


            ?

            posted @ 2006-09-29 13:51 太極虎~宏 閱讀(344) | 評(píng)論 (2)編輯 收藏


            如何學(xué)習(xí)Java

            Tag:學(xué)習(xí)Java
            ?
            一、前言

            ??? 在開始之前有必要再討論一下J2ME,J2SE,J2EE這些概念。J2ME,The Micro Edition of the Java 2 Platform。主要用于嵌入式Java,如手機(jī),PDA等等。J2SE,Java 2 Platform,Standard Edition,我們通常所說的JDK(Java Development Kit)包含在此,是J2EE的基礎(chǔ)。J2EE,Java 2 Platform,Enterprise Edition,就是所謂的企業(yè)級(jí)Java。這些只是從API級(jí)別上的劃分,實(shí)際上Sun給J2EE的定義是:開發(fā)基于組件的多層的企業(yè)級(jí)應(yīng)用的規(guī)范。也就是為各種不同的技術(shù)定義一個(gè)Java的規(guī)范,使這些不同的技術(shù)結(jié)合起來,在Java平臺(tái)上構(gòu)建強(qiáng)壯的企業(yè)級(jí)應(yīng)用。從這一點(diǎn)來看,J2EE這個(gè)概念應(yīng)該是涵蓋J2ME,J2SE的。比如一個(gè)典型的J2EE應(yīng)用,網(wǎng)上商店,它支持web方式下訂單,也支持手機(jī)下訂單。顯然必須用到J2SE,J2ME。所以也就不存在所謂的從J2SE轉(zhuǎn)向J2EE的問題了,只是后者包含的范圍更廣而已。

            ?

            來看看Sun給出的J2EE 相關(guān)技術(shù)主要分為幾大塊。

            1. Web Service技術(shù)

            -? Java API for XML Processing (JAXP)

            -? Java API for XML Registries (JAXR)

            -? Java API for XML-based RPC (JAX-RPC)

            -??? SOAP with Attachments API for Java (SAAJ)

            ?

            2. 組件模型技術(shù)(Component Model Technologies)

            -? Java Servlet

            -? JavaServer Pages

            -? JavaServer Faces

            -? Enterprise JavaBeans

            -? Java Message Service

            -??? J2EE Connector Architecture

            ?

            3. 管理技術(shù)(Management Technologies)

            -? J2EE Deployment Specification

            -? J2EE Management Specification

            -? J2EE Client Provisioning

            -??? Java Authorization Contract for Containers

            ?

            4. 其他相關(guān)技術(shù)(Other J2EE Technologies)

            -? JDBC

            -? Java Data Objects (JDO)

            -? CORBA (Java IDL and Java RMI-IIOP)

            -? JavaMail

            -? Transactions

            ??? 如此之多的技術(shù)難免使初學(xué)者無所適從,望而卻步。即使是一位經(jīng)驗(yàn)豐富的J2EE開發(fā)者,又有幾個(gè)人敢說J2EE相關(guān)的技術(shù)我都熟練掌握了。不過作為一名普通J2EE應(yīng)用程序的開發(fā)者來說,我們只需要重點(diǎn)學(xué)習(xí)其中的一部分技術(shù)就可以了,對(duì)于其他部分只要做到心中有數(shù),哪天需要用到了知道跑哪里去找到資料就行了。以我個(gè)人的觀點(diǎn),下面這些技術(shù)是一般J2EE應(yīng)用開發(fā)人員所必須熟練掌握的。Java Server Page,Java Servlet,Enterprise JavaBean,JDBC,Transactions。還有JAXP等XML相關(guān)技術(shù),Java Message Service,Java Mail,JDO等等是最好應(yīng)該掌握的。其他Management Technologies,Connector Architecture等等主要是給容器提供商中間件提供商參考的,應(yīng)用開發(fā)者不需要怎么關(guān)心,等用到了再去學(xué)習(xí)也不遲。

            ?

            二、語言學(xué)習(xí)篇

            ?? 首先是J2SE基礎(chǔ)。學(xué)習(xí)一門新技術(shù),無外乎閱讀和實(shí)踐了。而一本好的參考書對(duì)于初學(xué)者來說顯得格外重要。現(xiàn)在市面上的 Java書籍可以說是鋪天蓋地,質(zhì)量也是良莠不齊,令初學(xué)者無所適從。所以還是先推薦幾本書籍吧。目前對(duì)于Java基礎(chǔ)知識(shí),大家一般都比較推薦兩本書<>和<< Core Java? 2, Volume I: Fundamentals >>。第一本書不必多說了,Bruce Eckel的大作,Jolt獲獎(jiǎng)書籍。內(nèi)容比較全面,基本涵蓋了java語言的方方面面。這本書提供了相當(dāng)豐富的例子,非常有利于對(duì)學(xué)習(xí)內(nèi)容的了解。另外書中第一部分對(duì)于OO基本書籍的介紹,我覺得對(duì)于剛接觸OO的人來說幫助會(huì)很大。而且此書是Open Source的,可以從作者網(wǎng)上下載http://www.mindview.net/Books/TIJ/而對(duì)于習(xí)慣于讀中文版的學(xué)習(xí)者來說,侯捷翻譯的中文版是不錯(cuò)的選擇。要說這本說的缺點(diǎn)可能就是對(duì)于初學(xué)者來說厚了一點(diǎn),這也是一些人并不推薦此書作為初學(xué)者學(xué)習(xí)用書的原因吧。后面一本<< Core Java? 2, Volume I: Fundamentals >>。目前已經(jīng)是第七版了,單從它出版的次數(shù)來看也可以看出此書受歡迎的程度,這本書特點(diǎn)也是講述比較全面系統(tǒng),基本上一路啃下來的話Java語言基礎(chǔ)應(yīng)該算過關(guān)了。缺點(diǎn)也是太厚了,有點(diǎn)像參考手冊(cè),前面部分花了不少篇幅講Swing和Applet,可能對(duì)初學(xué)者不是很有用。還有一些像<< Java in a nutshell>>也是比較不錯(cuò)的基礎(chǔ)書籍。

            ?? 學(xué)習(xí)了基本的語言基礎(chǔ),別忘了最重要也是最有用的資料還是JDK文檔。從你學(xué)習(xí)java的第一天開始JDK文檔應(yīng)該是常備手頭了。如果你碰到問題首先想到的是到論壇上去提問而不是查閱Jdk文檔,那先別繼續(xù)往下學(xué)習(xí)了,學(xué)會(huì)查JDK文檔先。不夸張的說在我們的初學(xué)者論壇中60%的問題是光查一下JDK文檔就能解決問題的。最新JDK Documentation下載地址http://java.sun.com/j2se/1.4.2/download.html(目前最新版是J2SE5 http://java.sun.com/j2se/1.5.0/download.jsp)不能光說不練,同一下載頁面把JDK給下載回來。安裝完后有一點(diǎn)我想提一下,安裝路徑下有一個(gè)src.zip(有些jdk版本是src.jar),好東西啊---JDK源代碼,老是有人在論壇上問哪里有JDK源代碼下載,你說東西就放在你家里還到處找。有了這個(gè)有些問題就需要在論壇上跟人家爭(zhēng)來爭(zhēng)去了,翻開源代碼瞧一下什么疑問都沒有了。幾個(gè)最重要的命令行工具是

            javac:?????????? 編譯源文件到class文件

            java:???????????? 運(yùn)行class

            jar:?????????????? 打包工具。

            javadoc:??????? 生成java doc的工具。

            ??? 對(duì)于初學(xué)java的人來說,我不推薦使用IDE而直接用文本編輯器,然后用命令行編譯運(yùn)行。這樣有利于理解CLASSPATH,PATH這些最基本概念。CLASSPATH是初學(xué)者比較容易感覺迷惑的地方。現(xiàn)在的IDE太聰明了,給個(gè)名字就給你自動(dòng)生成java source code,自動(dòng)編譯。可能你運(yùn)行完了你的第一個(gè)Hello World程序,還不知道java和javac是用來做什么的。至于實(shí)際的項(xiàng)目開發(fā),一款合適的IDE還是十分重要的,我們稍后再對(duì)java開發(fā)工具做一些介紹。

            ?

            三、J2EE基礎(chǔ)和Java語言進(jìn)階

            ??? 學(xué)習(xí)完語言基礎(chǔ),就可以比較自然地轉(zhuǎn)入J2EE實(shí)際技術(shù)的學(xué)習(xí)了。J2EE實(shí)在是比較龐雜,而EJB,Servlet,這些核心技術(shù)是作為每一個(gè)J2EE開發(fā)人員所需要掌握的。關(guān)于servlet,我比較推薦<>和<>,第一本是Sun推薦的Servlet教材。第二本是當(dāng)年Amazon最暢銷Java書籍,五星級(jí)書籍。這本書機(jī)械工業(yè)出版社有中文版叫<<與JSP權(quán)威指南>>,感覺翻譯得還可以,第二版好像還沒有看到有中文版。兩本書都全面系統(tǒng)地介紹了JSP和Sevlet知識(shí),從web服務(wù)器配置,JSP,Servlet基本編程,標(biāo)記庫(Tag Lib),過濾器,事件框架都有很好地描述。提供地例子也比較實(shí)用。對(duì)于EJB學(xué)習(xí),比較著名有兩本書,<< Enterprise JavaBeans, 3nd Edition>>和<< Mastering Enterprise Java Beans Third Edition>>,兩位作者Richard Monson,Ed Roman都是屬于業(yè)界重量級(jí)人物。而Richard Monson本身就是EJB規(guī)范專家組成員。對(duì)我來說,兩本書難分優(yōu)劣,第二本書有個(gè)好處就是可以免費(fèi)下載http://www.theserverside.com/books/wiley/masteringEJB/index.tss

            ??? 還是那句話,不能光說不練,不過J2EE的練習(xí)做起來有一點(diǎn)麻煩,應(yīng)用服務(wù)器是不可少的,最好還得準(zhǔn)備個(gè)輕量級(jí)的數(shù)據(jù)庫。下面簡(jiǎn)單介紹一下這些工具。

            web服務(wù)器(Servlet Container)方面有:

            Tomcat:????????? http://jakarta.apache.org/tomcat/

            Jetty:????????????? http://jetty.mortbay.org/jetty/

            應(yīng)用服務(wù)器常用的有:

            Jboss:??????????? http://www.jboss.org/products/index

            Weblogic:?????? http://www.bea.com/framework.jsp?CNT=index.htm&FP=/content/products/server

            WebSphere:??? http://www-128.ibm.com/developerworks/downloads/ws/was/?S_TACT=105AGX28&S_CMP=DLMAIN

            ?? Tomcat,Jetty,Jboss都是Open Source。Weblogic和WebSphere是J2EE服務(wù)器中的老大級(jí)人物,價(jià)格也不菲。不過對(duì)于開發(fā)者有免費(fèi)的試用版下載。

            ?? 如果單單只是學(xué)習(xí)Servlet,推薦使用Tomcat,它是Sun官方指定的Servlet,JSP規(guī)范的參考實(shí)現(xiàn)。對(duì)初學(xué)者最重要的是它使用比較簡(jiǎn)單,自帶文檔比較齊全,使用者眾多,有什么問題容易在論壇上面得到幫助。如果學(xué)習(xí)EJB的話,推薦使用Jboss,不僅僅是因?yàn)樗荗pen Source的,主要是配置比較簡(jiǎn)單,使用方便。比如說對(duì)于連接數(shù)據(jù)庫,對(duì)于常用的MySQL,Oracle,MS SQL等等都提供了Sample Config文件,直接拿過來做些小改動(dòng)扔到Deploy目錄下就可以用DataSource了,部署J2EE應(yīng)用也簡(jiǎn)單,把整個(gè).ear或者.war扔到deploy下就可以了。唯一不方便的地方是從Jboss3.0開始,它的文檔開始收費(fèi)了。但是對(duì)于一些基本的配置,在網(wǎng)上還是非常容易找到的,畢竟它太流行了。至于Weblogic,也比較容易使用,不過比起Jboss來個(gè)頭大了很多,通過強(qiáng)大的管理界面使得一些常用的配置工作變得十分簡(jiǎn)單。和Jboss比起來它的文檔就太多了,簡(jiǎn)直是有點(diǎn)羅里八嗦,比如要部署一個(gè).ear文件,一般我們也就是直接扔到domain下的applications目錄下就會(huì)自動(dòng)deploy了,但是要看它的文檔可是長(zhǎng)篇大論,容易嚇著初學(xué)者,以為這又是什么高深的學(xué)問。至于WebSphere,個(gè)人不推薦初學(xué)者使用,相比前倆個(gè)Server比較難使,而且狂吃內(nèi)存。不過在企業(yè)級(jí)市場(chǎng)這個(gè)家伙表現(xiàn)不俗,畢竟是出生于IBM這樣的豪門。

            ?? 數(shù)據(jù)庫方面,目前常見的主要有PostgreSQL,MySQL,Oracle,MS SQL,DB2等等。前面兩個(gè)是開源數(shù)據(jù)庫,后面幾個(gè)基本上壟斷著大部分的數(shù)據(jù)庫市場(chǎng)。對(duì)于初學(xué)者用來做做EJB,JDBC的練習(xí),我推薦MySQL,理由還是很簡(jiǎn)單,開源軟件不要錢,個(gè)頭小使用方面,用戶眾多文檔齊全。下載地址http://www.mysql.com/products/mysql/。PostgreSQL也可以考慮,不過國(guó)內(nèi)使用者遠(yuǎn)不如MySQL多,所以要在論壇上問起問題來就少方便一些了,下載地址http://www.pervasive-postgres.com/downloads/。至于后面那些比較重量級(jí)的數(shù)據(jù)庫,為了做做練習(xí)而言就不用考慮了, 咱也花不起這個(gè)錢啊。

            ?? 學(xué)習(xí)完J2EE的這些具體技術(shù),這個(gè)時(shí)候進(jìn)行基本的J2EE開發(fā)應(yīng)該是不成問題了。此時(shí)應(yīng)該考慮提高自己的代碼質(zhì)量了。這里我強(qiáng)烈推薦Martin Fowler的<>,這本書不是一本非常實(shí)際的書,作者完全是手把手地教你如何提高代碼質(zhì)量,從具體地代碼中告訴你什么是代碼的Bad Smell,如何去掉這些Bad Smell。不少書評(píng)是這么說的,這本書對(duì)于初級(jí),中級(jí)的讀者幫助是立桿見影的。至少就我接觸到的幾個(gè)學(xué)習(xí)編程不久的程序員,編碼質(zhì)量在短期內(nèi)都有很大提高。當(dāng)然重構(gòu)(Refactoring)這一概念并不只針對(duì)Java語言的,它對(duì)所有OO語言都是適用的。重構(gòu)的概念是如此深入人心,以至于今天幾乎所有流行的IDE工具都有對(duì)重構(gòu)的支持。這里我還想再推薦一本<>。從C++過來的程序員都知道<>在C++領(lǐng)域的地位,至今還流傳著這樣的趣話,C++程序員分為兩種,一種是讀過<>的,另一種是沒有讀過C++的。雖然這本<>在Java領(lǐng)域的影響也許沒有那么大,但對(duì)于Java程序員絕對(duì)有相當(dāng)?shù)闹笇?dǎo)價(jià)值。作者是Sun公司的Joshua Bloch,java Collection framework的設(shè)計(jì)者。作者站在JDK設(shè)計(jì)者的角度向你介紹他的Best Practice,應(yīng)該這樣做而不應(yīng)該那樣做,對(duì)于JDK中某些API設(shè)計(jì)的缺陷他也毫不袒護(hù)的指出。Java語言之父James Gosling為此書寫的前言是這么說的“I sure wish I had had this book ten years ago。 Some might think that I don't need any Java books, but I need this one”。這本書會(huì)讓你覺得原來你對(duì)Java還是有很多東西不了解的。舉個(gè)例子來說,對(duì)象的equals方法,我們認(rèn)為它很簡(jiǎn)單,也許你每天都在為你新寫的Class重載這個(gè)方法,但是你在重載的時(shí)候注意過“自反”,“對(duì)稱”,“傳遞”這些必須要考慮的因素,你是否同時(shí)還小心謹(jǐn)慎的重載了hashcode這個(gè)方法?如果沒有,建議你要讀一下這本書。讀完這本書,你會(huì)覺得離Java的距離更近了。上面兩本書都出過中文版,后面一本<>還有兩個(gè)版本的中文版,第一次翻譯的比較差一點(diǎn),后來機(jī)械工業(yè)出版社又委托潘愛民先生重新翻譯了一遍。同一本書在同一個(gè)出版社連續(xù)被翻譯了兩次也說明國(guó)內(nèi)出版界對(duì)這本書還是比較重視的。

            ?? 這個(gè)階段,在看書的同時(shí),可以結(jié)合著學(xué)習(xí)一些優(yōu)秀的開源項(xiàng)目的源代碼。這些開源項(xiàng)目的代碼風(fēng)格,注釋都是值得借鑒的。實(shí)在太懶也別忘了手頭上還有個(gè)Jdk的源代碼。其實(shí)也不用刻意去找源代碼,在實(shí)際的J2EE項(xiàng)目開發(fā)中,基本上都會(huì)用到一些優(yōu)秀的開源項(xiàng)目。Framework可能會(huì)用到Spring,Struts,Log機(jī)制基本上都會(huì)JarkartaCommons Log或者Log4j,單元測(cè)試會(huì)大多會(huì)用Junit,結(jié)合項(xiàng)目閱讀一下其中的一些源代碼,既可以提高自己又對(duì)項(xiàng)目會(huì)有所幫助,說不定因此而得到PM的賞識(shí)呢。一舉兩得,何樂而不為呢。呵呵,有點(diǎn)扯遠(yuǎn)了。過了初學(xué)者階段,該學(xué)會(huì)如何找到適合自己的Java書籍了。歷經(jīng)數(shù)十載,今天的Java技術(shù)已經(jīng)變的如此之龐雜,我相信即使窮凈一個(gè)人畢生之精力也不可能把Java所有的相關(guān)技術(shù)都學(xué)通,何況新技術(shù)還在層出不窮地推出,3年之前誰會(huì)知道Struts會(huì)成為Web框架事實(shí)上的工業(yè)標(biāo)準(zhǔn)。2年之前誰會(huì)知道Hibernate會(huì)在今天獨(dú)領(lǐng)風(fēng)騷。既然已經(jīng)不能指望一次性把java技術(shù)的方方面面都學(xué)個(gè)通,在實(shí)際中也只能是需要什么技術(shù)再學(xué)習(xí)什么技術(shù)了。而能否選擇一本好的參考書籍帶來的就是事半功倍和事倍工半的效果。所以我覺得花點(diǎn)時(shí)間放在選擇書籍上面還是很值得的,否則你在后面只會(huì)花更多的時(shí)間。下面我談?wù)勛约哼x擇書籍的一些經(jīng)驗(yàn),不一定正確。首先看作者,像上面提到的那些書的作者,都是業(yè)界鼎鼎大名的,選擇他們的書一般錯(cuò)不了。大家看的書多了,自己胸中自然也會(huì)有一個(gè)list,哪些作者是信得過的。二看出版社,計(jì)算機(jī)書籍方面,Oreilly,Addison-Wesley都是公認(rèn)比較好的出版社。對(duì)于目前比較流行的Java技術(shù),Oreilly的<>系列是不錯(cuò)的選擇。另外我還會(huì)去看看Amazon網(wǎng)站(http://www.amazon.com/)的書評(píng),一般小于3星級(jí)的書我都不會(huì)考慮。還有一個(gè)好去處http://www.theserverside.com/的書評(píng),這里的書評(píng)比較有趣,往往都有很激烈的爭(zhēng)論,里面經(jīng)常會(huì)看到一些名人在發(fā)言。我要向所有Java學(xué)習(xí)者推薦,如果我的收藏夾里面只能存放兩個(gè)網(wǎng)站,我會(huì)選擇java.sun和theserverside。在這里你可以了解最新的Java動(dòng)態(tài),可以學(xué)習(xí)第一手的Java資料,可以看到Java高手們(里面不乏業(yè)界大腕)激烈辯論。

            ?? 到此階段,Java Developer的基本功底應(yīng)該算是打好了吧,往后就是不斷學(xué)習(xí)嘍。結(jié)束這一段之前,最后再介紹一本書Oreilly的<>,因?yàn)槲矣X得多線程編程屬于Java基本功,每一個(gè)想學(xué)好Java的人都應(yīng)該好好掌握。

            ?

            四、提高篇

            ?? 在這個(gè)階段應(yīng)該從軟件架構(gòu),F(xiàn)ramework層次上來學(xué)習(xí)了。作為面向?qū)ο蟮氖ソ?jīng)<>, 這本書是不得不推薦的。不用再多說了,這本在面向?qū)ο箢I(lǐng)域地位完全是屬于教父級(jí)別的。不管你學(xué)習(xí)的是什么OO語言,不管你現(xiàn)在是用.Net還是J2EE開發(fā),這本書都是你進(jìn)階之路上的必讀之書。而<>則專門針對(duì)于J2EE來討論設(shè)計(jì)模式,書中Sun Java Center的資深設(shè)計(jì)師描述了J2EE關(guān)鍵技術(shù)的模式。最佳實(shí)踐,設(shè)計(jì)策略和經(jīng)過驗(yàn)證的解決方案。對(duì)于每一個(gè)希望成為J2EE 架構(gòu)師或者設(shè)計(jì)師,這本書值得一讀。學(xué)習(xí)設(shè)計(jì)模式的時(shí)候,建議是結(jié)合實(shí)際的源代碼來看,比如看看Junit源代碼,你可以看到很多設(shè)計(jì)模式優(yōu)雅的實(shí)現(xiàn),作者之一Erich Gamma本身就是<>的作者。至于J2EE的設(shè)計(jì)模式,Sun還開辟了專門的空間http://java.sun.com/blueprints/patterns/,里面有對(duì)常用模式的討論又提供了詳細(xì)的源代碼樣例。正如Grady Booch所說,模式對(duì)于普遍問題提供了通用的解決方案,利用模式就等于擁有一個(gè)強(qiáng)大的專家隊(duì)伍。如果你還沒有學(xué)習(xí),現(xiàn)在就開始吧。此外對(duì)于面向?qū)ο蠓椒ㄕ摚瑯O限編程的思想也應(yīng)該有所了解http://www.extremeprogramming.org/。對(duì)于J2EE項(xiàng)目的具體實(shí)施,Rod Johnson的<>也很有價(jià)值,該書以作者豐富的實(shí)戰(zhàn)經(jīng)驗(yàn)向我們展示如何用盡可能簡(jiǎn)單的解決方案構(gòu)建J2EE 應(yīng)用,書中作者第一次提出這樣的觀點(diǎn),很多時(shí)候,J2EE應(yīng)用完全沒有必要用到EJB,對(duì)于言必稱EJB的廣大J2EE開發(fā)者來說,怎么說也有點(diǎn)驚世咳俗的味道。當(dāng)然,作為Servlet和JDO兩個(gè)專家組的成員,這可不是作者信口胡騶的。今天風(fēng)靡Java世界的Spring框架最初便是源于此書,而IOC,AOP等概念更是被時(shí)下的java開發(fā)者掛在嘴邊。最后,作為對(duì)Java的深入學(xué)習(xí),Java技術(shù)的各個(gè)Specification也有必要一讀。暫時(shí)就寫到這里吧。

            五、結(jié)語

            ?? 相信大家看了這篇文章后會(huì)有較大的提高,如果你想了解更多的關(guān)于Java方面的知識(shí),你可以瀏覽“Java學(xué)習(xí)筆記”(http://sylan215.bokee.com/)網(wǎng)站,對(duì)于學(xué)習(xí)Java,這是一個(gè)相當(dāng)不錯(cuò)的選擇。

            ?

            ?

            posted @ 2006-06-11 13:58 太極虎~宏 閱讀(311) | 評(píng)論 (0)編輯 收藏
            索引組織表的數(shù)據(jù)按主鍵排序手段被存儲(chǔ)在B-樹索引中,除了存儲(chǔ)主鍵列值外還存儲(chǔ)非鍵列的值。普通索引只存儲(chǔ)索引列,而索引組織表則存儲(chǔ)表的所有列的值。
            索引組織表一般適應(yīng)于靜態(tài)表,且查詢多以主鍵列。當(dāng)表的大部分列當(dāng)作主鍵列時(shí),且表相對(duì)靜態(tài),比較適合創(chuàng)建索引組織表!(8i以上)
            索引組織表的創(chuàng)建:
            CREATE TABLE docindex(
            token char(20),
            doc_id NUMBER,
            token_frequency NUMBER,
            token_offsets VARCHAR2(512),
            CONSTRAINT pk_docindex PRIMARY KEY (token, doc_id))
            ORGANIZATION INDEX TABLESPACE ind_tbs;
            必須給索引結(jié)構(gòu)表指定主鍵。
            posted @ 2006-06-08 00:42 太極虎~宏 閱讀(436) | 評(píng)論 (0)編輯 收藏
            Oracle 的位圖索引

            ?????????

            ?Oracle的索引主要包含兩類:BTree和位圖索引。默認(rèn)情況下大多使用Btree索引,該索引就是通常所見?唯一索引、聚簇索引等等,Btree用在OLTP,加快查詢速度。位圖索引是Oracle的比較引人注目的地方,其主要用在OLAP(聯(lián)機(jī)數(shù)據(jù)分析)方面,也就是數(shù)據(jù)倉(cāng)庫方面用到,目的是在加快查詢速度是,節(jié)省存儲(chǔ)空間。通常情況下,索引都要耗費(fèi)比較大的存儲(chǔ)空間,位圖采用了壓縮技術(shù)實(shí)現(xiàn)磁盤空間縮減。Btree用在高基數(shù)(即列的數(shù)據(jù)相異度大),位圖用在低基數(shù)列。位圖索引的基本原理是在索引中使用位圖而不是列值。通常在事實(shí)表和維表的鍵之間有很低的集的勢(shì)(cardinality),使用位圖索引,存儲(chǔ)更為有效,與B*Tree索引比較起來,只需要更少的存儲(chǔ)空間,這樣每次讀取可以讀到更多的記錄,而且與B*Tree索引相比,位圖索引將比較,連接和聚集都變成了位算術(shù)運(yùn)算,大大減少了運(yùn)行時(shí)間,從而得到性能上的極大的提升。

            在Oracle中如何合理的使用位圖索引?以下的幾個(gè)事項(xiàng)應(yīng)該考慮。
            ??
            ?????????? *? 如果要使用位圖索引,初始化參數(shù)STAR_TRANSFORMATION_ENABLED應(yīng)該設(shè)置為
            ? ????????? ??TRUE.
            ?????? ??? *?? 優(yōu)化模式應(yīng)該是CBO。對(duì)于數(shù)據(jù)倉(cāng)庫的環(huán)境中,總是應(yīng)該考慮使用CBO(COST-BASED? ?
            ? ?????????? OPTIMIZER)。
            ????? ???? *?? 位圖索引應(yīng)該建立在每一個(gè)事實(shí)表的外鍵列上。(這只是一個(gè)一般的規(guī)則.)
            ??
            ????? 此外,對(duì)于數(shù)據(jù)表中的cardinality如何客觀的確定也是一個(gè)問題,一萬條數(shù)據(jù)中只包含3個(gè)值的集和算是低的了,那么一億條記錄中包含3萬條記錄算不算低的呢?對(duì)于這樣的情況,建議幾行一下數(shù)據(jù)的模擬測(cè)試,一般來說,在數(shù)據(jù)倉(cāng)庫環(huán)境中,位圖索引的性能要好于B*Tree索引。還要注意位圖索引不是為OLTP數(shù)據(jù)庫設(shè)計(jì)的,不應(yīng)該在OLTP數(shù)據(jù)庫中大量的使用它,尤其是對(duì)那些有更新操作的表?。?

            posted @ 2006-06-07 00:34 太極虎~宏 閱讀(365) | 評(píng)論 (0)編輯 收藏

            #include <stdio.h>
            void main()
            {
            ??? int i,m=1;
            ??? for(i=0;i<19;i++)
            ??? {
            //??%*s\n *表示控制寬度,s字符串
            //??m<=10?10+m :30-m 表示輸出的位置,
            //??(m<=10?20-2*m:2*m-20)控制輸出的個(gè)數(shù)
            printf("%*s\n",m<=10?10+m :30-m ,"*******************"+(m<=10?20-2*m:2*m-20)
            ????? );
            ??????? m++;???????
            ??? }

            }

            posted @ 2006-06-04 18:00 太極虎~宏 閱讀(983) | 評(píng)論 (0)編輯 收藏
            網(wǎng)絡(luò)安全中防火墻和IDS的作用

            業(yè)界的同行曾經(jīng)說過“安全,是一種意識(shí),而不是某種的技術(shù)就能實(shí)現(xiàn)真正的安全。”隨著工作的時(shí)間漸長(zhǎng),對(duì)這句話的體會(huì)就越深。再防守嚴(yán)密的網(wǎng)絡(luò),利用人為的疏忽,管理員的懶惰和社會(huì)工程學(xué)也可能被輕易攻破。

              因此,在這里我介紹的防火墻和IDS技術(shù),只是我們?cè)诰W(wǎng)絡(luò)安全環(huán)節(jié)中進(jìn)行的一個(gè)防御步驟。在網(wǎng)絡(luò)內(nèi)進(jìn)行防火墻與IDS的設(shè)置,并不能保證我們的網(wǎng)絡(luò)就絕對(duì)安全了,但是設(shè)置得當(dāng)?shù)姆阑饓虸DS,至少會(huì)使我們的網(wǎng)絡(luò)更為堅(jiān)固一些,并且能提供更多的攻擊信息供我們分析。

              接下來,讓我們正確地認(rèn)識(shí)一下防火墻和IDS的作用吧。 

              防火墻

              一、防火墻能夠做到些什么?

              1.包過濾

              具備包過濾的就是防火墻?對(duì),沒錯(cuò)!根據(jù)對(duì)防火墻的定義,凡是能有效阻止網(wǎng)絡(luò)非法連接的方式,都算防火墻。早期的防火墻一般就是利用設(shè)置的條件,監(jiān)測(cè)通過的包的特征來決定放行或者阻止的,包過濾是很重要的一種特性。雖然防火墻技術(shù)發(fā)展到現(xiàn)在有了很多新的理念提出,但是包過濾依然是非常重要的一環(huán),如同四層交換機(jī)首要的仍是要具備包的快速轉(zhuǎn)發(fā)這樣一個(gè)交換機(jī)的基本功能一樣。通過包過濾,防火墻可以實(shí)現(xiàn)阻擋攻擊,禁止外部/內(nèi)部訪問某些站點(diǎn),限制每個(gè)ip的流量和連接數(shù)。

              2.包的透明轉(zhuǎn)發(fā)

              事實(shí)上,由于防火墻一般架設(shè)在提供某些服務(wù)的服務(wù)器前。如果用示意圖來表示就是 Server—FireWall—Guest 。用戶對(duì)服務(wù)器的訪問的請(qǐng)求與服務(wù)器反饋給用戶的信息,都需要經(jīng)過防火墻的轉(zhuǎn)發(fā),因此,很多防火墻具備網(wǎng)關(guān)的能力。

              3.阻擋外部攻擊

              如果用戶發(fā)送的信息是防火墻設(shè)置所不允許的,防火墻會(huì)立即將其阻斷,避免其進(jìn)入防火墻之后的服務(wù)器中。

              4.記錄攻擊

              如果有必要,其實(shí)防火墻是完全可以將攻擊行為都記錄下來的,但是由于出于效率上的考慮,目前一般記錄攻擊的事情都交給IDS來完成了,我們?cè)诤竺鏁?huì)提到。

              以上是所有防火墻都具備的基本特性,雖然很簡(jiǎn)單,但防火墻技術(shù)就是在此基礎(chǔ)上逐步發(fā)展起來的。

              二、防火墻有哪些缺點(diǎn)和不足?

              1.防火墻可以阻斷攻擊,但不能消滅攻擊源

              “各掃自家門前雪,不管他人瓦上霜”,就是目前網(wǎng)絡(luò)安全的現(xiàn)狀。互聯(lián)網(wǎng)上病毒、木馬、惡意試探等等造成的攻擊行為絡(luò)繹不絕。設(shè)置得當(dāng)?shù)姆阑饓δ軌蜃钃跛麄儯菬o法清除攻擊源。即使防火墻進(jìn)行了良好的設(shè)置,使得攻擊無法穿透防火墻,但各種攻擊仍然會(huì)源源不斷地向防火墻發(fā)出嘗試。例如接主干網(wǎng)10M網(wǎng)絡(luò)帶寬的某站點(diǎn),其日常流量中平均有512K左右是攻擊行為。那么,即使成功設(shè)置了防火墻后,這512K的攻擊流量依然不會(huì)有絲毫減少。

              2.防火墻不能抵抗最新的未設(shè)置策略的攻擊漏洞 

              就如殺毒軟件與病毒一樣,總是先出現(xiàn)病毒,殺毒軟件經(jīng)過分析出特征碼后加入到病毒庫內(nèi)才能查殺。防火墻的各種策略,也是在該攻擊方式經(jīng)過專家分析后給出其特征進(jìn)而設(shè)置的。如果世界上新發(fā)現(xiàn)某個(gè)主機(jī)漏洞的cracker的把第一個(gè)攻擊對(duì)象選中了您的網(wǎng)絡(luò),那么防火墻也沒有辦法幫到您的。

              3.防火墻的并發(fā)連接數(shù)限制容易導(dǎo)致?lián)砣蛘咭绯?/u>

              由于要判斷、處理流經(jīng)防火墻的每一個(gè)包,因此防火墻在某些流量大、并發(fā)請(qǐng)求多的情況下,很容易導(dǎo)致?lián)砣蔀檎麄€(gè)網(wǎng)絡(luò)的瓶頸影響性能。而當(dāng)防火墻溢出的時(shí)候,整個(gè)防線就如同虛設(shè),原本被禁止的連接也能從容通過了。 

              4.防火墻對(duì)服務(wù)器合法開放的端口的攻擊大多無法阻止

              某些情況下,攻擊者利用服務(wù)器提供的服務(wù)進(jìn)行缺陷攻擊。例如利用開放了3389端口取得沒打過sp補(bǔ)丁的win2k的超級(jí)權(quán)限、利用asp程序進(jìn)行腳本攻擊等。由于其行為在防火墻一級(jí)看來是“合理”和“合法”的,因此就被簡(jiǎn)單地放行了。

              5.防火墻對(duì)待內(nèi)部主動(dòng)發(fā)起連接的攻擊一般無法阻止

              “外緊內(nèi)松”是一般局域網(wǎng)絡(luò)的特點(diǎn)。或許一道嚴(yán)密防守的防火墻內(nèi)部的網(wǎng)絡(luò)是一片混亂也有可能。通過社會(huì)工程學(xué)發(fā)送帶木馬的郵件、帶木馬的URL等方式,然后由中木馬的機(jī)器主動(dòng)對(duì)攻擊者連接,將鐵壁一樣的防火墻瞬間破壞掉。另外,防火墻內(nèi)部各主機(jī)間的攻擊行為,防火墻也只有如旁觀者一樣冷視而愛莫能助。

              6.防火墻本身也會(huì)出現(xiàn)問題和受到攻擊

              防火墻也是一個(gè)os,也有著其硬件系統(tǒng)和軟件,因此依然有著漏洞和bug。所以其本身也可能受到攻擊和出現(xiàn)軟/硬件方面的故障。

              7.防火墻不處理病毒 

              不管是funlove病毒也好,還是CIH也好。在內(nèi)部網(wǎng)絡(luò)用戶下載外網(wǎng)的帶毒文件的時(shí)候,防火墻是不為所動(dòng)的(這里的防火墻不是指單機(jī)/企業(yè)級(jí)的殺毒軟件中的實(shí)時(shí)監(jiān)控功能,雖然它們不少都叫“病毒防火墻”)。

              看到這里,或許您原本心目中的防火墻已經(jīng)被我拉下了神臺(tái)。是的,防火墻是網(wǎng)絡(luò)安全的重要一環(huán),但不代表設(shè)置了防火墻就能一定保證網(wǎng)絡(luò)的安全。“真正的安全是一種意識(shí),而非技術(shù)!”請(qǐng)牢記這句話。

              不管怎么樣,防火墻仍然有其積極的一面。在構(gòu)建任何一個(gè)網(wǎng)絡(luò)的防御工事時(shí),除了物理上的隔離和目前新近提出的網(wǎng)閘概念外,首要的選擇絕對(duì)是防火墻。那么,怎么選擇需要的防火墻呢?

              防火墻的分類

              首先大概說一下防火墻的分類。就防火墻(本文的防火墻都指商業(yè)用途的網(wǎng)絡(luò)版防火墻,非個(gè)人使用的那種)的組成結(jié)構(gòu)而言,可分為以下三種:

              第一種:軟件防火墻

              軟件防火墻運(yùn)行于特定的計(jì)算機(jī)上,它需要客戶預(yù)先安裝好的計(jì)算機(jī)操作系統(tǒng)的支持,一般來說這臺(tái)計(jì)算機(jī)就是整個(gè)網(wǎng)絡(luò)的網(wǎng)關(guān)。軟件防火墻就象其它的軟件產(chǎn)品一樣需要先在計(jì)算機(jī)上安裝并做好配置才可以使用。防火墻廠商中做網(wǎng)絡(luò)版軟件防火墻最出名的莫過于Checkpoint。使用這類防火墻,需要網(wǎng)管對(duì)所工作的操作系統(tǒng)平臺(tái)比較熟悉。

              第二種:硬件防火墻

              這里說的硬件防火墻是指所謂的硬件防火墻。之所以加上"所謂"二字是針對(duì)芯片級(jí)防火墻說的了。它們最大的差別在于是否基于專用的硬件平臺(tái)。目前市場(chǎng)上大多數(shù)防火墻都是這種所謂的硬件防火墻,他們都基于PC架構(gòu),就是說,它們和普通的家庭用的PC沒有太大區(qū)別。在這些PC架構(gòu)計(jì)算機(jī)上運(yùn)行一些經(jīng)過裁剪和簡(jiǎn)化的操作系統(tǒng),最常用的有老版本的Unix、Linux和FreeBSD系統(tǒng)。 值得注意的是,由于此類防火墻采用的依然是別人的內(nèi)核,因此依然會(huì)受到os本身的安全性影響。國(guó)內(nèi)的許多防火墻產(chǎn)品就屬于此類,因?yàn)椴捎玫氖墙?jīng)過裁減內(nèi)核和定制組件的平臺(tái),因此國(guó)內(nèi)防火墻的某些銷售人員常常吹噓其產(chǎn)品是“專用的os”等等,其實(shí)是一個(gè)概念誤導(dǎo),下面我們提到的第三種防火墻才是真正的os專用。 

              第三種:芯片級(jí)防火墻

              它們基于專門的硬件平臺(tái),沒有操作系統(tǒng)。專有的ASIC芯片促使它們比其他種類的防火墻速度更快,處理能力更強(qiáng),性能更高。做這類防火墻最出名的廠商莫過于NetScreen.其他的品牌還有FortiNet,算是后起之秀了。這類防火墻由于是專用OS,因此防火墻本身的漏洞比較少,不過價(jià)格相對(duì)比較高昂,所以一般只有在“確實(shí)需要”的情況下才考慮。

              在這里,特別糾正幾個(gè)不正確的觀念:

              1.在性能上,芯片級(jí)防火墻>硬件防火墻>軟件防火墻

              在價(jià)格上看來,的確倒是如此的關(guān)系。但是性能上卻未必。防火墻的“好”,是看其支持的并發(fā)數(shù)、最大流量等等性能,而不是用軟件硬件來區(qū)分的。事實(shí)上除了芯片級(jí)防火墻外,軟件防火墻與硬件防火墻在硬件上基本是完全一樣的。目前國(guó)內(nèi)的防火墻廠商由于大多采用硬件防火墻而不是軟件防火墻,原因1是考慮到用戶網(wǎng)絡(luò)管理員的素質(zhì)等原因,還有就是基于我國(guó)大多數(shù)民眾對(duì)“看得見的硬件值錢,看不到的軟件不值錢”這樣一種錯(cuò)誤觀點(diǎn)的迎合。不少硬件防火墻廠商大肆詆毀軟件防火墻性能,不外是為了讓自己那加上了外殼的普通pc+一個(gè)被修改后的內(nèi)核+一套防火墻軟件能夠賣出一個(gè)好價(jià)錢來而已。而為什么不作芯片級(jí)防火墻呢?坦白說,國(guó)內(nèi)沒有公司有技術(shù)實(shí)力。而且在中國(guó)市場(chǎng)上來看,某些國(guó)內(nèi)的所謂硬件防火墻的硬件質(zhì)量連diy的兼容機(jī)都比不上。看看國(guó)內(nèi)XX的硬件防火墻那拙劣的硬盤和網(wǎng)卡,使用過的人都能猜到是哪家,我就不點(diǎn)名了。真正看防火墻,應(yīng)該看其穩(wěn)定性和性能,而不是用軟、硬來區(qū)分的。至少,如果筆者自己選購(gòu),我會(huì)選擇購(gòu)買CheckPoint而非某些所謂的硬件防火墻的。

              2.在效果上,芯片防火墻比其他兩種防火墻好

              這同樣也是一種有失公允的觀點(diǎn)。事實(shí)上芯片防火墻由于硬件的獨(dú)立,的確在OS本身出漏洞的機(jī)會(huì)上比較少,但是由于其固化,導(dǎo)致在面對(duì)新興的一些攻擊方式時(shí),無法及時(shí)應(yīng)對(duì);而另外兩種防火墻,則可以簡(jiǎn)單地通過升級(jí)os的內(nèi)核來獲取系統(tǒng)新特性,通過靈活地策略設(shè)置來滿足不斷變化的要求,不過其OS出現(xiàn)漏洞的概率相對(duì)高一些。

              3.唯技術(shù)指標(biāo)論

              請(qǐng)以“防火墻買來是使用的”為第一前提進(jìn)行購(gòu)買。防火墻本身的質(zhì)量如何是一回事,是否習(xí)慣使用又是另一回事。如果對(duì)一款產(chǎn)品的界面不熟悉,策略設(shè)置方式不理解,那么即使用世界最頂級(jí)的防火墻也沒有多大作用。就如小說中武林中人無不向往的“倚天劍”、“屠龍刀”被我拿到,肯定也敵不過喬峰赤手的少林長(zhǎng)拳是一般道理。防火墻技術(shù)發(fā)展至今,市場(chǎng)已經(jīng)很成熟了,各類產(chǎn)品的存在,自然有其生存于市場(chǎng)的理由。如何把產(chǎn)品用好,遠(yuǎn)比盲目地比較各類產(chǎn)品好。

              IDS

              什么是IDS呢?早期的IDS僅僅是一個(gè)監(jiān)聽系統(tǒng),在這里,你可以把監(jiān)聽理解成竊聽的意思。基于目前局網(wǎng)的工作方式,IDS可以將用戶對(duì)位于與IDS同一交換機(jī)/HuB的服務(wù)器的訪問、操作全部記錄下來以供分析使用,跟我們常用的widnows操作系統(tǒng)的事件查看器類似。再后來,由于IDS的記錄太多了,所以新一代的IDS提供了將記錄的數(shù)據(jù)進(jìn)行分析,僅僅列出有危險(xiǎn)的一部分記錄,這一點(diǎn)上跟目前windows所用的策略審核上很象;目前新一代的IDS,更是增加了分析應(yīng)用層數(shù)據(jù)的功能,使得其能力大大增加;而更新一代的IDS,就頗有“路見不平,拔刀相助”的味道了,配合上防火墻進(jìn)行聯(lián)動(dòng),將IDS分析出有敵意的地址阻止其訪問。

              就如理論與實(shí)際的區(qū)別一樣,IDS雖然具有上面所說的眾多特性,但在實(shí)際的使用中,目前大多數(shù)的入侵檢測(cè)的接入方式都是采用pass-by方式來偵聽網(wǎng)絡(luò)上的數(shù)據(jù)流,所以這就限制了IDS本身的阻斷功能,IDS只有靠發(fā)阻斷數(shù)據(jù)包來阻斷當(dāng)前行為,并且IDS的阻斷范圍也很小,只能阻斷建立在TCP基礎(chǔ)之上的一些行為,如Telnet、FTP、HTTP等,而對(duì)于一些建立在UDP基礎(chǔ)之上就無能為力了。因?yàn)榉阑饓Φ牟呗远际鞘孪仍O(shè)置好的,無法動(dòng)態(tài)設(shè)置策略,缺少針對(duì)攻擊的必要的靈活性,不能更好的保護(hù)網(wǎng)絡(luò)的安全,所以IDS與防火墻聯(lián)動(dòng)的目的就是更有效地阻斷所發(fā)生的攻擊事件,從而使網(wǎng)絡(luò)隱患降至較低限度。

              接下來,我簡(jiǎn)單介紹一下IDS與防火墻聯(lián)動(dòng)工作原理

              入侵檢測(cè)系統(tǒng)在捕捉到某一攻擊事件后,按策略進(jìn)行檢查,如果策略中對(duì)該攻擊事件設(shè)置了防火墻阻斷,那么入侵檢測(cè)系統(tǒng)就會(huì)發(fā)給防火墻一個(gè)相應(yīng)的動(dòng)態(tài)阻斷策略,防火墻根據(jù)該動(dòng)態(tài)策略中的設(shè)置進(jìn)行相應(yīng)的阻斷,阻斷的時(shí)間、阻斷時(shí)間間隔、源端口、目的端口、源IP和目的IP等信息,完全依照入侵檢測(cè)系統(tǒng)發(fā)出的動(dòng)態(tài)策略來執(zhí)行。一般來說,很多情況下,不少用戶的防火墻與IDS并不是同一家的產(chǎn)品,因此在聯(lián)動(dòng)的協(xié)議上面大都遵從 opsec 或者 topsec協(xié)議進(jìn)行通信,不過也有某些廠家自己開發(fā)相應(yīng)的通信規(guī)范的。目前總得來說,聯(lián)動(dòng)有一定效果,但是穩(wěn)定性不理想,特別是攻擊者利用偽造的包信息,讓IDS錯(cuò)誤判斷,進(jìn)而錯(cuò)誤指揮防火墻將合法的地址無辜屏蔽掉。

              因?yàn)橹T多不足,在目前而言,IDS主要起的還是監(jiān)聽記錄的作用。用個(gè)比喻來形容:網(wǎng)絡(luò)就好比一片黑暗,到處充滿著危險(xiǎn),冥冥中只有一個(gè)出口;IDS就象一支手電筒,雖然手電筒不一定能照到正確的出口,但至少有總比沒有要好一些。稱職的網(wǎng)管,可以從IDS中得到一些關(guān)于網(wǎng)絡(luò)使用者的來源和訪問方式,進(jìn)而依據(jù)自己的經(jīng)驗(yàn)進(jìn)行主觀判斷(注意,的確是主觀判斷。例如用戶連續(xù)ping了服務(wù)器半個(gè)小時(shí),到底是意圖攻擊,還是無意中的行為?這都依據(jù)網(wǎng)絡(luò)管理員的主觀判斷和網(wǎng)絡(luò)對(duì)安全性的要求來確定對(duì)應(yīng)方式。)對(duì)IDS的選擇,跟上面談到的防火墻的選擇類似,根據(jù)自己的實(shí)際要求和使用習(xí)慣,選擇一個(gè)自己夠用的,會(huì)使用的就足夠了。

              最后,要說的依然是那句“世界上沒有一種技術(shù)能真正保證絕對(duì)地安全。”安全問題,是從設(shè)備到人,從服務(wù)器上的每個(gè)服務(wù)程序到防火墻、IDS等安全產(chǎn)品的綜合問題;任何一個(gè)環(huán)節(jié)工作,只是邁向安全的步驟。

            posted @ 2006-06-03 21:13 太極虎~宏 閱讀(359) | 評(píng)論 (1)編輯 收藏
            僅列出標(biāo)題  下一頁
            久久久艹| 欧美一区二区三区久久综| 精品熟女少妇AV免费久久| 欧美久久精品一级c片片| 亚洲va久久久噜噜噜久久| 一级女性全黄久久生活片免费 | 国产精品欧美亚洲韩国日本久久| 一本久久知道综合久久| 国产精品美女久久福利网站| 香蕉久久永久视频| 久久天天躁狠狠躁夜夜2020 | 国产午夜电影久久| 97超级碰碰碰碰久久久久| 精品无码久久久久国产| 久久国产精品77777| 国产精品对白刺激久久久| 浪潮AV色综合久久天堂| 精品久久久久久无码专区不卡| 久久亚洲AV成人无码国产| 久久棈精品久久久久久噜噜| 久久久无码一区二区三区| 久久精品www人人爽人人| 国产欧美一区二区久久| 91久久精品国产成人久久| 欧美精品福利视频一区二区三区久久久精品| 久久精品免费大片国产大片| 久久婷婷午色综合夜啪| 亚洲精品国产美女久久久| av无码久久久久久不卡网站| 伊人色综合久久| 亚洲综合久久夜AV | 久久久久人妻精品一区二区三区| 久久国产精品99精品国产| 国产成人无码精品久久久免费| 久久久久久国产a免费观看不卡| 久久无码AV一区二区三区| 久久超碰97人人做人人爱| 久久国产香蕉一区精品| 色妞色综合久久夜夜| 狠狠综合久久综合中文88| 欧洲成人午夜精品无码区久久|