淺談微軟對(duì)PHP支持的改進(jìn) 及其它一些胡言亂語(yǔ)_PHP教程

      編輯Tag賺U幣
      教程Tag:暫無(wú)Tag,歡迎添加,賺取U幣!

      推薦:Fedora下Zend Studio 6.1.2 如何配置
      Zend Studio是我們PHPer的一個(gè)非常的得力的工具,有了他往往能夠讓我們的工作事倍功半,今天就來(lái)記錄一下日常使用中非常有用的配置,來(lái)幫助更多的PHPer提高工作的效率。 1、配置服務(wù)器。 如果我們希望能夠快速的進(jìn)行調(diào)試,那么將Server和Zend整合在一起是必

      這里有一份我覺(jué)得值得推薦給大家的幻燈片(下載鏈接)。這個(gè)幻燈片是不久前舉辦的WordCamp China 2009上微軟王超群的演講,演講主題是《熟悉的陌生人:微軟對(duì)PHP的新支持使WordPress在IIS7上雄起》。WordCamp是業(yè)界著名的PHP大會(huì),不過(guò)我這里推薦這個(gè)幻燈片不是為了為了推廣PHP,而是為了說(shuō)明一些其他問(wèn)題——當(dāng)然也有關(guān)于技術(shù)的有價(jià)值的內(nèi)容,這些您看了幻燈片和我的文章之后就會(huì)明白了。

      對(duì)了,之前我已經(jīng)在InfoQ上寫(xiě)了一篇新聞報(bào)道了這次事件。不過(guò)新聞歸新聞,目的是客觀說(shuō)明情況而不是發(fā)表個(gè)人觀點(diǎn)。不過(guò)博客是個(gè)人地盤(pán),我就打算在此暢所欲言了。

      說(shuō)到PHP,可能最容易讓人想起的就是著名的LAMP架構(gòu)(Linux + Apache + MySQL + PHP),而這全開(kāi)放的平臺(tái)似乎和“封閉”的微軟技術(shù)距離比較遠(yuǎn)。不過(guò)微軟其實(shí)一直沒(méi)有放棄對(duì)PHP的“追求”,這次演講談的就是微軟在這方面的努力,以及取得的成果。我推薦這個(gè)幻燈片的主要原因之一,便是它寫(xiě)的非常有水平,尤其是開(kāi)頭一部分。在幻燈片一開(kāi)始闡述了微軟對(duì)待開(kāi)源的態(tài)度,希望和PHP的同志們拉近一些距離:

      微軟對(duì)PHP支持的改進(jìn) 及其它一些胡言亂語(yǔ)圖片1 點(diǎn)擊查

      嗯,就是這個(gè)觀點(diǎn):“微軟已經(jīng)不是當(dāng)年的微軟了”,它變了,變得怎么樣了呢?變得擁抱開(kāi)源了:“開(kāi)源的朋友們,不要看到“微軟”兩個(gè)字就心生厭惡,來(lái),抱一個(gè)”。此外還引用了微軟首席軟件架構(gòu)師Ray Ozzie(如果我沒(méi)有認(rèn)錯(cuò)的話)的言論:

      I think any company these days, any technology provider, even Microsoft, has to find the right balance of being a contributor and user of open source.

      我認(rèn)為如今任何的公司及技術(shù)提供商,即使是微軟,也必須在開(kāi)源的用戶和貢獻(xiàn)者中尋找一個(gè)合適的平衡點(diǎn)。

      如果說(shuō)Ray Ozzie可能還是在“王婆賣(mài)瓜”的話,那么Linux創(chuàng)建者、開(kāi)源領(lǐng)袖Linus Torvald最近發(fā)表的話語(yǔ)應(yīng)該更有“參考價(jià)值”:

      Oh, I’m a big believer in “technology over politics” 。.. There are “extremists” in the free software world, but that’s one major reason why I don’t call what I do “free software” any more. I don’t want to be associated with the people for whom it‟s about exclusion and hatred.

      哦,我強(qiáng)烈認(rèn)為“技術(shù)高于政治”……自由軟件世界中有一些“極端主義者”,這也是我不再把我做的事情稱(chēng)作“自由軟件”的主要原因。我不想和那些有排斥和憎惡心態(tài)的人產(chǎn)生關(guān)系。

      這句話在有人反對(duì)“微軟為L(zhǎng)inux提交GPL代碼以提高Hyper-V的兼容性”時(shí)說(shuō)的。Linus的意思再明確不過(guò)了:“技術(shù)就是就是技術(shù),不要有門(mén)戶之見(jiàn)”。順便一提,開(kāi)源軟件(Open Source)和自由軟件(Free Software)是有很大區(qū)別的,不應(yīng)該混為一談。就我個(gè)人而言,我喜歡“開(kāi)源”而不喜歡“自由”。我也不喜歡FSF覺(jué)得微軟永遠(yuǎn)是錯(cuò)的,不喜歡它搞某些東西的方式。不過(guò)肯定也有人喜歡,每個(gè)人都可以有自己的觀點(diǎn)。

      好像有點(diǎn)說(shuō)歪了。其實(shí)我也不知道微軟是不是只是“口頭”上討好開(kāi)源界,但是我至少看出,微軟在想辦法證明自己——不管這個(gè)證明是不是有什么陷阱,有什么“不可告人的秘密”。在這方面,微軟至少在擺事實(shí),講道理,而不是隨口說(shuō)“我就是擁抱開(kāi)源”。我覺(jué)得,在中學(xué)里學(xué)寫(xiě)議論文的時(shí)候,大家都應(yīng)該已經(jīng)知道就被告知論述的基本方式是“擺事實(shí)”,“講道理”。可是從平時(shí)討論的時(shí)候,我卻又覺(jué)得根本不是那么一回事情。說(shuō)句得罪人的話,我覺(jué)得許多朋友缺乏必要的邏輯思維能力,會(huì)產(chǎn)生非常多的邏輯謬誤出來(lái),但是卻都還堅(jiān)持自己是正確的。搞到最后,吵起架來(lái)彼彼皆是。而且往往在這個(gè)時(shí)候,無(wú)數(shù)匿名兄弟就跳出來(lái)發(fā)揮自己的聰明才智,各種諷刺挖苦謾罵的奇思妙語(yǔ)一個(gè)接一個(gè),令人宛如置身于天上“貓撲”,人間“天涯”。

      其實(shí)堅(jiān)持自己是正確的不要緊,我也喜歡堅(jiān)持自己的意見(jiàn),誰(shuí)不希望自己是正確的呢?但是要拿出理論根據(jù)來(lái)。其實(shí)作為技術(shù)從業(yè)人員,在許多問(wèn)題上拿出根據(jù)來(lái)非常簡(jiǎn)單,例如寫(xiě)一個(gè)程序便知泛型會(huì)不會(huì)降低性能。如果有些問(wèn)題很難用數(shù)據(jù)說(shuō)明問(wèn)題(如數(shù)據(jù)獲取太難),那么至少也要找出一些別人的看法來(lái)支持自己的觀點(diǎn)。如果一味地“我認(rèn)為”,“我覺(jué)得”效果自然就大打折扣了。因此,我現(xiàn)在也經(jīng)常會(huì)有意地在文章中引用自己或其它的人的說(shuō)法,至少可以讓自己有“底氣”一些,而不會(huì)感覺(jué)像是在扯淡。

      我個(gè)人比較反感“光說(shuō)不練”的人,我希望看到的不是“個(gè)人說(shuō)法”,而是多個(gè)人的觀點(diǎn),或者是實(shí)際效果。例如前幾天有個(gè)匿名朋友在我博客上留言,偏要堅(jiān)持“靜態(tài)方法的調(diào)用會(huì)阻塞其它線程訪問(wèn)”,我說(shuō)“你試試看就知道了”,他也原樣復(fù)制一遍發(fā)回給我,針?shù)h相對(duì),不屈不饒。不知道他最后是否認(rèn)為他達(dá)到了論證“我在誤導(dǎo)初學(xué)者,為自己的書(shū)作廣告”的目的(我寫(xiě)過(guò)書(shū)嗎?),至少我當(dāng)時(shí),既無(wú)奈,又窩火。

      既然談到了技術(shù),那就再談遠(yuǎn)一些。這位認(rèn)為“靜態(tài)方法的調(diào)用會(huì)阻塞其它線程訪問(wèn)”的朋友證明了他自己在某個(gè)方面學(xué)的有問(wèn)題,而我前幾天發(fā)表的Double Check文章中,有許多朋友提出“怎么能lock在一個(gè)實(shí)例字段上”,“應(yīng)該lock在一個(gè)靜態(tài)字段才能產(chǎn)生效果”。換句話說(shuō),在這些朋友看來(lái),一個(gè)實(shí)例方法是不會(huì)產(chǎn)生線程安全問(wèn)題的——雖然ASP.NET MVC框架的DefaultControllerFactory就出現(xiàn)了這樣的毛病。這說(shuō)明了在多線程開(kāi)發(fā)方面,社區(qū)的整體意識(shí)還處于一個(gè)非常薄弱的程度——希望我這么說(shuō)不會(huì)引起各位的不滿。

      此外,昨天我意識(shí)到原來(lái)很多朋友用了很久的for卻無(wú)法寫(xiě)出其等價(jià)的while寫(xiě)法,又想起之前發(fā)現(xiàn)公司里的大部分同事不知道C#中使用@開(kāi)頭的字符串表示法中如何包含一個(gè)雙引號(hào)。這應(yīng)該都是基礎(chǔ)中的基礎(chǔ),應(yīng)該人人知道,不是嗎?但事實(shí)就是讓我感到驚訝,許多朋友認(rèn)為自己不停地在學(xué)東西,ASP.NET MVC、Sliverlight,WPF一個(gè)一個(gè)地學(xué),但是最后最普通的東西卻不知道。結(jié)果工作找不好,薪水拿不高,最后一崩潰又開(kāi)始叫嚷著這個(gè)行業(yè)沒(méi)前途。那么,有沒(méi)有想過(guò)換一種思路來(lái)學(xué)習(xí),例如,不要隨意輕視一些東西?

      說(shuō)到這里,我又想起其它一些事情,那就是我覺(jué)得如今社區(qū)里的“風(fēng)氣”出現(xiàn)了比較嚴(yán)重的問(wèn)題。例如最近不止一次發(fā)生圍攻面試者的“群體性事件”,每次有人發(fā)表面試對(duì)方的題目之后,就有大量朋友上前表示不滿,對(duì)于簡(jiǎn)單的題目認(rèn)為太基礎(chǔ)了,考不出能力。對(duì)于困難的題目,就認(rèn)為它太難,鉆牛角尖,“又不是在招算法研究人員”。總之我發(fā)現(xiàn),似乎只要是遇到了回答不出的問(wèn)題,都會(huì)遭到許多人的反對(duì)。似乎社區(qū)中許多朋友都認(rèn)為自己懷才不遇,“我來(lái)面試你,你也過(guò)不了”,都認(rèn)為“千里馬常有,而伯樂(lè)不常有”。有朋友問(wèn)我,你面試別人時(shí)問(wèn)些什么?我難以啟齒啊,因?yàn)槲覇?wèn)的往往也是那些問(wèn)題,可是一下子就被鄙視了。其實(shí)沒(méi)有什么東西是簡(jiǎn)單的,有時(shí)候問(wèn)問(wèn)題并不是要得到結(jié)果,而是想從中看出一些細(xì)節(jié)來(lái),例如一個(gè)人的思考方式和深度——我問(wèn)某某和某某在寫(xiě)法上的區(qū)別,不是在搞“茴香豆”,是由其他目的。不知您是否相信,我在面試時(shí)會(huì)讓對(duì)方談一下最喜歡的體育運(yùn)動(dòng)的規(guī)則?

      最近似乎認(rèn)為我“無(wú)聊”的朋友也多了起來(lái),認(rèn)為我寫(xiě)的東西沒(méi)有什么實(shí)際意義,認(rèn)為我寫(xiě)這些東西都是在“炫耀”。其實(shí),我的文章都是源于實(shí)際工作中的想法,我認(rèn)為對(duì)于實(shí)際工作是非常有幫助的。我不喜歡《XX編程三百例》式的文章,我認(rèn)為那是“魚(yú)”而不是“漁”。我不知道那些朋友希望我寫(xiě)什么樣的文章才算有實(shí)際意義,但是我想最有意義的應(yīng)該是提高您的能力,而正是如此,我認(rèn)為您更應(yīng)該關(guān)注我在成長(zhǎng)過(guò)程中想到的這些問(wèn)題。輕易鄙視這個(gè)鄙視那個(gè),就好像鄙視面試者那樣,這可不好。鄙視一個(gè)東西不要緊,但關(guān)鍵是,你思考了沒(méi)有?不要鄙視了半天,但是到最后也不知道發(fā)生了什么事,盲目地忙碌。

      思考很重要,例如換一種思考方式就會(huì)得到不同凡響的結(jié)果。至少,這也是鍛煉邏輯的一種有效方式。想要驗(yàn)證自己想清楚了沒(méi),我認(rèn)為最好的方式就是寫(xiě)一篇文章。如果您想明白了,一定能把它說(shuō)清楚。反過(guò)來(lái)說(shuō)也一樣,如果您說(shuō)不清楚,基本上就是因?yàn)槟鷽](méi)有想明白。

      說(shuō)了好多,越扯越遠(yuǎn),喝口水,回來(lái)繼續(xù)吧。

      PPT的正題自然是講述微軟在PHP平臺(tái)上做出的努力和取得的成果,其中列舉了之前與康盛創(chuàng)想合作進(jìn)行的性能評(píng)估結(jié)果,證明在Windows Server 2008 + IIS上運(yùn)行PHP,從平均相應(yīng)時(shí)間,每秒處理的請(qǐng)求數(shù),以及數(shù)據(jù)吞吐量等多方便均顯著優(yōu)于Linux + Apache的托管方式。當(dāng)然,這個(gè)結(jié)果也受到了一些質(zhì)疑,例如為什么在Apache中使用了mod_php而不是在大多數(shù)情況下性能更好的FastCGI。關(guān)于這點(diǎn)我沒(méi)有測(cè)試過(guò),我不清楚,不過(guò)這并不要緊。我只想說(shuō):Windows的性能真的不差。

      這也是PPT的截圖之一。從中可以看出IIS 7的吞吐量完全可以達(dá)到靜態(tài)文件請(qǐng)求20K,ASP.NET請(qǐng)求5K RPS(每秒請(qǐng)求數(shù))的吞吐量。這是100%的事實(shí),我可以擔(dān)保,因?yàn)樵谖?7年在微軟的時(shí)候,曾經(jīng)在自己工作用的普通 32位workstation上試驗(yàn)過(guò),請(qǐng)求靜態(tài)文件輕松超過(guò)了10K。算上IIS 7的性能增強(qiáng),以及測(cè)試機(jī)的性能因素,得到上圖的結(jié)果完全沒(méi)有問(wèn)題。至于ASP.NET動(dòng)態(tài)請(qǐng)求的性能,5000多完全就是一個(gè)沒(méi)有意義的數(shù)字了——我不是說(shuō)它假,我只是說(shuō)它沒(méi)有意義。因?yàn)閷?duì)于動(dòng)態(tài)請(qǐng)求來(lái)說(shuō),純粹比這種“空請(qǐng)求”的吞吐量,幾乎沒(méi)有任何實(shí)際參考價(jià)值。因?yàn)椋覀冇衅渌男阅芷款i,根本達(dá)不到IIS本身的性能限制。

      對(duì)于普通Web應(yīng)用程序來(lái)說(shuō),如果在實(shí)現(xiàn)上沒(méi)有大的問(wèn)題,幾乎不會(huì)讓W(xué)eb服務(wù)器(指IIS這種,不是指“機(jī)器”)成為性能瓶頸。性能瓶頸往往是在外部服務(wù)器調(diào)用,或者外部數(shù)據(jù)訪問(wèn)上。例如耗時(shí)的SQL查詢(xún)一多,應(yīng)用程序整體性能自然就下來(lái)了。因此,業(yè)界最為熱烈的討論往往是基于“緩存”和各種數(shù)據(jù)存儲(chǔ)方式的,因?yàn)榈侥壳盀橹顾鼈兌际亲钣锌赡艹蔀樾阅芷款i的。對(duì)于Web服務(wù)器本身性能的討論也不是沒(méi)有,只是相對(duì)就少很多了,要有,大部分也是基于靜態(tài)請(qǐng)求的性能比較。

      對(duì)于Web 2.0的網(wǎng)站來(lái)說(shuō),由于變化太多幾乎無(wú)法生成靜態(tài)頁(yè),因此這樣的Web應(yīng)用程序在一臺(tái)機(jī)器上的吞吐量根本達(dá)不到5K,即時(shí)是1K也幾乎不可能達(dá)到。在一臺(tái)目前普通配置的服務(wù)器上,如果可以達(dá)到每秒100多的動(dòng)態(tài)請(qǐng)求,基本上已經(jīng)做的相當(dāng)不錯(cuò)了,甚至50、60多也已經(jīng)基本“夠意思”了——像當(dāng)年豆瓣鬼神般的5、600(如果我沒(méi)有記錯(cuò)的話)幾乎難以再現(xiàn)了。不過(guò)100 RPS也已經(jīng)是一個(gè)很了不起的數(shù)字了,如果按6小時(shí)的密集請(qǐng)求來(lái)算,這樣一個(gè)動(dòng)態(tài)站點(diǎn)的日訪問(wèn)量是多少呢?

      當(dāng)然,Windows不是沒(méi)有性能問(wèn)題,我只是說(shuō)在IIS,Web開(kāi)發(fā)等方面不會(huì)出現(xiàn)性能問(wèn)題。有人說(shuō)Windows的文件系統(tǒng),也就是NTFS的性能很差,尤其是在處理零碎地文件時(shí)候。這我也有所耳聞,平時(shí)也有類(lèi)似的感覺(jué),但是沒(méi)有經(jīng)過(guò)這方面的實(shí)踐,所以并無(wú)法說(shuō)出準(zhǔn)確的結(jié)論。不過(guò)真的性能差,也要去好好了解它,這樣我們就可以設(shè)法避免一些薄弱的環(huán)節(jié)。隨意舉個(gè)例子,我們可以?xún)?yōu)化自己程序的存儲(chǔ)方式,盡量讀取連續(xù)的數(shù)據(jù),讓文件系統(tǒng)的性能問(wèn)題可以緩解一下。SQL Server不也是在NTFS上構(gòu)建出高效數(shù)據(jù)應(yīng)用的嗎?

      使用Windows系統(tǒng)的另外的問(wèn)題,也是被人提及很多次的問(wèn)題,便是授權(quán)協(xié)議。Linux使用是不要錢(qián)的,而Windows是要花錢(qián)買(mǎi)的,這個(gè)自然應(yīng)該算入成本。不過(guò)在我看來(lái),其實(shí)Windows并不貴。為什么呢?您可以去Dell的網(wǎng)站上看一下一臺(tái)預(yù)裝了Windows Server的服務(wù)器的價(jià)格,一個(gè)Web Edition的Windows Server操作系統(tǒng)的價(jià)格大約是3000多元,這也就相當(dāng)于一個(gè)普通程序員1個(gè)月的薪水而已,更何況操作系統(tǒng)可以算作是一次性投資。對(duì)于一個(gè)公司來(lái)說(shuō),每天開(kāi)一次門(mén)就相當(dāng)于幾千幾萬(wàn)的錢(qián)花出去了,購(gòu)買(mǎi)一個(gè)Web Edition的Windows Server價(jià)錢(qián)根本算不了什么。至于開(kāi)發(fā)成本,這是一個(gè)太“虛”的東西,暫時(shí)就不討論了吧——我想,應(yīng)該也沒(méi)有什么理由可以有力證明使用ASP.NET會(huì)加大開(kāi)發(fā)成本。

      事實(shí)上,Web Edition已經(jīng)足夠部署ASP.NET應(yīng)用程序了,Enterprise Edition自然要貴上十幾倍甚至更多,但是您根本用不著。用盜版操作系統(tǒng)時(shí)帶來(lái)的壞習(xí)慣“要用就用最好的”,在產(chǎn)品環(huán)境中一定要改一下。哦,對(duì)了,微軟對(duì)于年收入低于100萬(wàn)的公司,或是非盈利機(jī)構(gòu)都有非常大的折扣,甚至免費(fèi)的策略(如BizSpark計(jì)劃)。您不應(yīng)該錯(cuò)過(guò)。

      因此我認(rèn)為,在Windows平臺(tái)上使用ASP.NET,是一個(gè)非常合適的Web應(yīng)用程序開(kāi)發(fā)/運(yùn)行平臺(tái)。即時(shí)是對(duì)于創(chuàng)業(yè)型小公司來(lái)說(shuō),我也會(huì)選擇使用Windows + ASP.NET。

      但是……微軟平臺(tái)上的授權(quán)價(jià)格并非總是個(gè)可以忽視的問(wèn)題。因?yàn)镾QL Server實(shí)在是太貴了,而免費(fèi)的Express版本是不可以用于商業(yè)應(yīng)用的。如果我們想要使用SQL Server,那么成本的確會(huì)嘩嘩地上升,尤其對(duì)于創(chuàng)業(yè)公司來(lái)說(shuō)這是比不可忽視的支出(當(dāng)然如果加入了BizSpark計(jì)劃……)。因此可以這么說(shuō),運(yùn)行ASP.NET的Windows很便宜,但是SQL Server,以及運(yùn)行SQL Server的Windows會(huì)非常昂貴。因此,對(duì)于數(shù)據(jù)存儲(chǔ)來(lái)說(shuō),我會(huì)選擇Linux下的免費(fèi)及開(kāi)源的產(chǎn)品。而且我可以有更多的選擇,無(wú)論是關(guān)系型數(shù)據(jù)庫(kù),鍵/值存儲(chǔ)方式,還是現(xiàn)在慢慢再興起的如MongoDB那樣的無(wú)架構(gòu),文檔型數(shù)據(jù)庫(kù),都可以合理組裝使用。

      所以我現(xiàn)在越來(lái)越推薦Windows + *nix的合作關(guān)系,至于在Windows和*unix項(xiàng)目的通訊問(wèn)題上,其實(shí)絲毫不用擔(dān)心。如今各個(gè)項(xiàng)目都是基于標(biāo)準(zhǔn)的通訊協(xié)議(如TCP/IP,甚至HTTP),使用通用的或自定義的格式進(jìn)行數(shù)據(jù)交換的。對(duì)于一個(gè)Linux下的數(shù)據(jù)庫(kù)來(lái)說(shuō),它根本不會(huì)關(guān)心與它連接的是Windows還是Linux,也不會(huì)關(guān)心發(fā)起調(diào)用的是.NET還是Java,Python,Ruby平臺(tái)。大家根據(jù)協(xié)議辦事即可。

      那么為什么業(yè)界總是認(rèn)為Windows性能差呢?原因可能是因?yàn)槲④浀?ldquo;聲譽(yù)”不太好,而業(yè)界聲音最響,最為活躍的大都是開(kāi)源工作者或自由人士,他們自然會(huì)不遺余力地支持自己的環(huán)境——這很正常,優(yōu)秀的程序員一定是有信仰的,我一直這么認(rèn)為——當(dāng)然也會(huì)產(chǎn)生一些不客觀的FUD行為。還有便是,Windows進(jìn)入服務(wù)器領(lǐng)域時(shí)間比較晚,而且在IIS 5那些年代時(shí),Windows在服務(wù)器領(lǐng)域的表現(xiàn)的確不怎么好。因此,那時(shí)候留下的負(fù)面印象自然也會(huì)產(chǎn)生不好的影響。但是微軟是在發(fā)展的,微軟牛人非常多,微軟研究院的論文年年占據(jù)各大會(huì)議相當(dāng)比例,而微軟的產(chǎn)品的質(zhì)量也已經(jīng)足夠了得了。如果繼續(xù)用10年前的印象來(lái)判斷如今的微軟是不正確的——當(dāng)年微軟系統(tǒng)在服務(wù)器這塊沒(méi)有絲毫占用率(幾乎都是Unix,Oracle的天下),現(xiàn)在已經(jīng)占據(jù)中小公司80-90%,世界五百?gòu)?qiáng)50%的份額,這還不夠說(shuō)明問(wèn)題嗎?

      關(guān)于這點(diǎn),作為Windows平臺(tái)下的程序員,我們應(yīng)該有足夠的自信,管別人怎么“懷疑”我們呢。

      對(duì)了,還有一個(gè)可能的原因是由于微軟的技術(shù)太容易入門(mén),導(dǎo)致給人不夠“牛逼”的感覺(jué)。這也是沒(méi)有必要的,就好比說(shuō),一個(gè)國(guó)家的初等教育水平高,能證明它的高等教育水準(zhǔn)不行嗎?這只是定位的問(wèn)題,當(dāng)然這也是微軟的策略——但是這不是微軟的錯(cuò),也不是微軟技術(shù)沒(méi)有價(jià)值的證據(jù)。當(dāng)然,作為Windows平臺(tái)上的程序員,提高自己的能力是沒(méi)有錯(cuò)的。不光沒(méi)有錯(cuò),是一定必須這么做的!

      不過(guò)必須承認(rèn)的是,Windows有個(gè)硬傷,就是您無(wú)法在上面搗鼓東西,例如換一個(gè)文件系統(tǒng),改一改內(nèi)核。如果你是熱衷于這方面的Geek,那么自然不應(yīng)該使用Windows。

      最后,還是用PPT上的內(nèi)容收尾吧。在這份PPT的末尾附有30多頁(yè)的IIS Web應(yīng)用程序配置最佳實(shí)踐,是一個(gè)非常不錯(cuò)的參考,您一定要看一下。

      分享:談從魔獸看PHP設(shè)計(jì)模式
      前段時(shí)間看到有人用魔獸來(lái)解釋設(shè)計(jì)模式,感覺(jué)很有意思,于是我把它改了改,又添加了些設(shè)計(jì)模式內(nèi)容,今天發(fā)出來(lái)。有些地方借鑒了前人的內(nèi)容,沒(méi)有注明,請(qǐng)前人不要見(jiàn)怪

      來(lái)源:模板無(wú)憂//所屬分類(lèi):PHP教程/更新時(shí)間:2009-10-06
      相關(guān)PHP教程