又見ORM跑分 —— 對ORM跑分的吐嘈


又見ORM跑分了,說實在的,這個ORM的跑分有意義么?而且還圍觀者眾,喜歡看熱鬧的人還真是不少呀。

經常見到不少人,在吹某個ORM的性能如何、如何地好,然后再輔以幾個單元測試的跑分來佐證,和咱天朝的山寨手機吹噓性能好,價格便宜有何兩樣?甚至連山寨手機都比不上,起碼山寨手機,還敢收錢!

我們都知道,簡衡量一個手機的好壞,不僅是性能,還包括屏幕、散熱、做工、服務等等。同樣,衡量一個ORM的好壞,不僅是性能。事實上,ORM的性能,對整個系統的影響是很小的,真正的大頭是在IO那一塊,並且差距是幾何級別的。如果一個ORM不好使,需要多查了一次數據庫,無論你如何去優化,算法如何出色,總體查詢時間都要大於少查一次的ORM。

衡量一個ORM的好壞,還應該包括:

1、易用性,必須在10分鍾之內能夠讓用戶上手。

2、穩定性,能夠經得起時間的驗證。

3、具有強大的查詢功能,包括 Linq 查詢,ESQL 查詢。

4、符合微軟制定的標准。因為我們都是用微軟的產品,符合微軟的標准,不但可以讓產品更加通用,並且能夠降低用戶的學習成本。

可以說,使用ORM的人,都不會太在意性能,他們都期待的是一款ORM足夠好使,能盡可能地縮短產品的開發周期,只要性能不差得離譜都能接受。起碼,我從來沒有聽過有哪個用戶報怨 ALinq 性能差的。在意性能的,是不會使用 ORM 的,使用什么?存儲過程!事實上,很多大型的軟件都是采用 ORM + 存儲過程。

現在的CPU不是性能不足,而是性能過剩,所以你可以看到現在的CPU研發方向,不是以性能為主,而是強調能耗比。在連手機CPU 都4核普及,邁向8核的今天,對於ORM來說,還有必要糾結於性能嗎?真正的大頭在 IO 呢。

如果真的想做產品,就應該踏踏實實地去沉下心去做研究,用你的產品、服務去打動你的用戶,有了好的產品,再去宣傳才會有好的效果。靠一些噱頭來吸引用戶,是沒有用的,客戶都不傻,沒有好的產品作為支撐,必定會讓用戶拋棄,而且口碑也沒了,在圈子里混,口碑就是你的品牌。

有好多朋友,都問我,現在那么多開源免費的ORM,他們為什么不使用EF、NH這么免費開源而要用你的 ALinq ?

一、服務周到。用EF、NH的,出了問題,你能找得到作者來問嗎?用 ALinq 的,只要你願意付錢,半夜三更打電話把我叫起也沒關系。

二、產品好使,易於上手,性能穩定。感興趣的可以下載,把文檔看看,試用一下,我保證你會立馬喜歡上它的。

三、總有不差那點錢的公司,幾千塊錢,也就是打個報告申請一下的事情。

 

另外做個預告

我現在准備動手寫個長篇系列文章,內容是關於Linq to SQL的,和市面上文章的不同的地方是,我會基於設計的角度去寫,讓你深入地了解Linq to SQL的運行機制,以及設計准則,一定會讓研究架構的朋友大呼過癮。感興趣的朋友,可以關注我的騰訊微博。 

 

好了,不多說了,准備睡覺了,有啥明天再說。

 

 

 

 

 

 

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM