您的數據庫服務器是最可能受益最多的組件,它可以升級到64位。如果你的數據庫數據大於3GB左右,那麼升級到64位操作系統將爲你的數據庫虛擬地址空間提供呼吸空間。它可能會使用比32位版本更多的RAM,但這不是重點。使用64位地址空間,數據庫服務器可以選擇內存映射數據庫數據1:1到虛擬內存地址空間,並大大簡化其文件I/O。操作系統內核會在引用數據庫文件時將其頁面交換到內存中。
根據您的應用程序的數據庫訪問模式以及您的數據庫數據實際適合服務器上可用的物理RAM的情況,與在32位上運行同一應用程序相比,這可以提高數據訪問時間的性能系統和32位數據庫。 64位服務器通常比32位表兄弟擁有更多的物理內存,這也會改善數據庫響應時間,因爲更多的數據庫數據可以保存在內存中,而不必等待磁盤I/O。
如果您的數據庫數據小於3GB,則通過移至64位不會看到任何顯着的性能改進。
是的,64位應用程序通常使用的內存比32位版本多一點,但是完全取決於應用程序的寫入方式。指針(對象引用)的大小增加到64位,但是整數,雙精度和字符數據不會。
如果64位系統具有與32位系統相同數量的物理內存,那麼根本看不出有太多的性能改進。但是誰製造了具有2001年代32位RAM容量的2011年64位服務器?它不會發生。你的64位服務器幾乎肯定會擁有比它所替代的32位服務器更多的物理內存。
由於移動到64位,是否有發現兼容性問題或錯誤的風險?當然。任何變化都會帶來發現問題的風險。總是有一個計劃B,以防萬一遇到難以克服的問題。你不太可能會遇到問題,但總有可能。
ASP.NET是否會受益於升級到64位?除非您的Web服務器代碼是CPU綁定或內存綁定,可能不是。 Web服務器往往是I/O綁定的。他們花費大量時間等待下一個網絡請求,或等待磁盤I/O。具有大量RAM的超高速64位處理器不會比任何其他機器「等待更快」的磁盤或網絡I/O。
什麼優惠?你能嘗試一個更好的詞嗎? – leppie
更好地服務於serverfault,但我不認爲會有很大的性能差異。您只能通過在網站上施加嚴格的負載和流量來測試性能,以查看64位處理器與32位處理器的對比情況。\ –
感謝leppie對您的評論,您完全正確。我更新了我的標題。你覺得現在更有意義嗎? – GibboK