[成都網站制作]Clojure語言叫板Scala語言我們不怕內存溢出

2023-02-02    分類: 網站建設

我在這里是想跟大家分享一些從World Singles 系統里獲得的經驗 …

早在2009年11月,我們就開始使用Scala語言了。我們有一個需要運行很長時間的操作,把大量的數據變更信息從會員信息數據庫中取出,以XML打包文件的形式發送到自定義搜索引擎里。把一大堆的數據表從數據庫中映射到XML規則文件里是一個相當復雜的操作。在過去,公司嘗試了各種方法,有的好用,有的不好用。我向公司推薦使用Scala語言,原因是他的高效、并行性、類型安全,以及方便適用(特別是XML在Scala語言里有一種相對應的基本數據類型)。

我們使用Scala編程作為產品的后臺發布程序已經有差不多兩年了。大多時候,它運行的非常好,但在壓力大的時候,它會出現內存溢出的現象,經過大量的觀察和測試,我們慢慢的確認,(至少部分原因)是Scala語言本身的實現導致了這個問題。Scala正準備要收編Akka程序庫,我們一直在考慮把程序遷移到Akka上…

因為今年我們開始使用Clojure語言(大概是去年5月我們就開始嘗試這種語言),我們認為應該集中兵力開發出一個Clojure版本的Scala程序,看看它運行起來表現如何。

這個Clojure版的后臺發布程序的開發耗費了我們大概15個小時,并通過了所有測試。今天我們進行了一次“疲勞測試”,讓它一次處理將近30萬個會員的信息。如果是Scala程序,當一次處理的數據量達到5萬份時(有時會更少),它就會報內存溢出錯誤。而Clojure程序卻一氣呵成,十分順利——于是,我們就決定在下一次產品發布里用它把Scala程序給替換下來了。

另外一個有趣的方面是,Scala版的程序長度總共大約有1000行(大概有3.1萬個字符)。而Clojure版的只有260行(大約1.15萬個字符)。就連注釋也簡單了(*呃哼*—這并不是我想炫耀的,只是想說這種比較沒有偏向)。我們的比較還沒有把單元測試代碼計算入內,因為Clojure版寫的很倉促。Clojure的代碼形式非常的接近Scala代碼,很多函數都相同——Clojure是一種更強大的Scala——它對一些輔助函數進行的重構,使其變的更加模塊化和可維護。(成都網站制作)

結果是很顯然,我將在產品里采用Clojure版的發布程序,完全的放棄Scala。

這是Rich Hickey(Clojure語言的發明人) 和 Clojure/core 開發團隊的功勞,他們創造了這樣一種精彩適用的編程語言,幫人們解決了大問題——謝謝你們!


標簽:成都網站制作 高端網

新聞名稱:[成都網站制作]Clojure語言叫板Scala語言我們不怕內存溢出
文章轉載:http://m.kartarina.com/news17/234117.html

成都網站建設公司_創新互聯,為您提供響應式網站、App開發自適應網站、定制網站、全網營銷推廣、App設計

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

手機網站建設
主站蜘蛛池模板: 无码熟妇人妻AV在线影院| 无码毛片内射白浆视频| 亚洲国产精品无码中文字| 中文午夜人妻无码看片| 日韩av片无码一区二区三区不卡| 好了av第四综合无码久久| 亚洲精品无码永久中文字幕| 亚洲AV无码资源在线观看| 亚洲AV永久无码精品水牛影视| 亚洲AV无码一区二区三区网址| 精品无码国产自产拍在线观看蜜| 久久亚洲AV无码精品色午夜麻豆| 伊人久久无码中文字幕| 国产精品无码制服丝袜| 日木av无码专区亚洲av毛片| 狠狠躁天天躁无码中文字幕图| 免费看成人AA片无码视频羞羞网| 本免费AV无码专区一区| 亚洲?V无码乱码国产精品| 中文字幕无码中文字幕有码| 亚洲av无码国产精品色午夜字幕 | 在线精品自偷自拍无码中文| 无码熟妇人妻AV影音先锋| 日韩av无码一区二区三区| 亚洲Av无码精品色午夜| 国产V亚洲V天堂无码久久久| 免费无码又爽又刺激网站| HEYZO无码综合国产精品| 精品久久久无码中字| 热の无码热の有码热の综合| 亚洲av永久无码| 无码一区二区三区免费视频| 18禁网站免费无遮挡无码中文| 麻豆亚洲AV永久无码精品久久| 无码人妻精品中文字幕免费| 日韩精品真人荷官无码| 亚洲中文无码卡通动漫野外| 白嫩少妇激情无码| 国内精品久久久久久无码不卡| 色综合99久久久无码国产精品| 免费无码不卡视频在线观看|