一種更好的優化方式
第1章 一種更好的優化方式
Oracle的效能對於很多人來說,是一個非常棘手的問題。 1990年以來,我曾與數千名專業人員在他們的Oracle系統效能改進專案中合作。 隨著時間的推移,Oracle的效能改進專案看上去都經歷標準的階段。我認為這些階段的名稱都儲存在日內瓦下方某處一個墓穴中。如果我沒記錯,這些階段是:
奔放樂觀 知情的悲觀 預期恐慌 拒絕 絕望 深度絕望 痛苦和饑饉
出於某種原因,我和我的同事們很少被邀請參加一個專案,直到“痛苦和饑饉”的階段。這些效能改進專案在我們到達的時候往往看起來像下面這樣。它們是否與你經歷的情況近似?
技術專家對問題的根源意見不一
效能問題的嚴重性與在會議上談論它的人的數量成正比。在同一次會議上,出現幾個不同的公司的“最好的專家”,這是一個特別不好的兆頭。在我整個職業生涯中幾十個會議中,我見過從各種諮詢公司,計算機和儲存子系統製造商,軟體供應商和網路運營商的最好的專家召開會議來排除效能問題。在我參加這些會議中,整整100%,這些團體都針對效能問題的根本原因不斷辯論。幾個星期。為何敬業、聰明、受過良好訓練、用心良苦的專業人士都看在同一個系統,並對是什麼導致了效能問題呈現不同的意見,甚至常常矛盾的意見?顯然,Oracle系統的效能是一個非常困難的問題。
專家聲稱進展良好,而使用者看不到任何改善
許多顧問自豪地宣佈,他們已經顯著地增加了一些統計數字,也許他們增加了一些命中率或一定程度上減少計數或諸如此類的東西,只將遭到使用者完全不能分辨有任何東西變得更好的侮辱,當我把他們的故事告訴我的學生們時,很多人都笑了與回憶。這樣的經驗通常的結果是顧問給出的一個冗長的報告,其中很禮貌地解釋,所附發票的結果是該系統是絕對有更好的效能,雖然使用者不夠聰明能分辨出來。
這個故事很有趣,當然,除非你是為這一切浪費時間付錢的公司的所有者,或者是拿不到報酬的顧問,因為他實際上並沒有完成任何有意義的工作。也許這個故事似乎很有趣,因為我們大多數人在一段時間或其他時間就是那個顧問。雖然命中率、平均延遲和等待時間等重要的系統指標明顯改善,但使用者甚至不能感知我們的努力的有益的結果?這怎麼可能如此。顯然,Oracle的系統效能是一個非常困難的問題。
硬體升級於事無補,甚至反而進一步減緩系統
自從第一次拿起尼爾•岡瑟在1998年的《實用效能分析師》[岡瑟(1998)],我已經對各種觀眾提出一個特別有悖常理的現象的可能性。 “你知道硬體升級,可能實際降低一個重要應用程式的效能嗎?”我曾經提出這個問題及有關事實的每一個觀眾,有幾乎相同的反應。而我描述怎麼會發生這種情況時,大多數的觀眾都露出難以置信的笑容,而一個或兩個觀眾歡樂地登上講臺,因為在他們的可怕的“升級出了錯”幾個月後,他們終於搞清楚發生了什麼事。
硬體升級可能不會經常導致明顯的新的效能問題,但存在這種可能性。很多時候,硬體升級沒有帶來明顯的區別,當然除了相當可觀的量的現金流出了門,而沒有明顯的利益回報。硬體升級可能會導致沒有改善多少有些令人不安。硬體升級實際上可以導致效能下降的想法,表面上,是完全不可理解的。這怎麼可能,硬體升級可能不僅不會提高效能,但它實際上可能傷害它呢?顯然,Oracle的系統效能是一個非常困難的問題。
相關文章
- React效能優化的8種方式瞭解一下?React優化
- Dostoevsky: 一種更好的平衡 LSM 空間和效能的方式
- 更好的 java 重試框架 sisyphus 的 3 種使用方式Java框架
- Redis持久化的兩種方式的優缺點介紹Redis持久化
- 重構 - 用各種方式優化自己的函式庫優化函式
- 初始化一個ArrayList的多種方式
- Python Schema一種優雅的資料驗證方式Python
- 前端效能優化(四)——網頁載入更快的N種方式前端優化網頁
- 更好的 java 重試框架 sisyphus 配置的 2 種方式介紹Java框架
- Python中的單例模式的幾種實現方式的及優化Python單例模式優化
- RSS 一種簡潔優雅的資料訂閱方式
- 如何更好的使用OPcache實現效能優化opcache優化
- 招聘人才的更好的方式
- 一起看懂Redis兩種持久化方式的原理Redis持久化
- 有一種優化方法叫做Preload優化
- 一種WebService的呼叫方式Web
- sql最佳化的幾種方式SQL
- 一種針對Microsoft Office的自動化攻擊方式ROS
- 數字化是服裝企業自救的一種方式
- 資料庫SQL調優的幾種方式資料庫SQL
- 以更好的方式使用 Vue MixinsVue
- 剖析Elasticsearch的IndexSorting:一種查詢效能優化利器ElasticsearchIndex優化
- 一種小程式弱網離線優化的思路優化
- 動畫的另外一種方式動畫
- 陣列的三種初始化方式陣列
- java json格式化的兩種方式JavaJSON
- 格式化輸出的幾種方式
- JavaScript繼承的多種方式和優缺點JavaScript繼承
- 實現微前端的十種方式 【第一種】前端
- 怎麼更好的選擇網站關鍵詞最佳化方式網站
- webpack打包優化的幾種方案Web優化
- JMeter四種引數化方式JMeter
- [轉]Python格式化字串的4種方式Python字串
- 雲端計算的7種變化方式
- AI不是一種技術,而是一種思考方式AI
- TypeScript - 一種思維方式TypeScript
- canvas渲染熱力圖的一種方式Canvas
- Laravel 路由版本實現的一種方式Laravel路由
- Python小技巧:一種字串的排序方式Python字串排序