日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
DropBox使用Python的6個(gè)經(jīng)驗(yàn)分享

下面是 DropBox 使用 Python 的經(jīng)驗(yàn)分享:

創(chuàng)新互聯(lián)建站專(zhuān)注于中大型企業(yè)的成都做網(wǎng)站、成都網(wǎng)站設(shè)計(jì)和網(wǎng)站改版、網(wǎng)站營(yíng)銷(xiāo)服務(wù),追求商業(yè)策劃與數(shù)據(jù)分析、創(chuàng)意藝術(shù)與技術(shù)開(kāi)發(fā)的融合,累計(jì)客戶(hù)上千余家,服務(wù)滿(mǎn)意度達(dá)97%。幫助廣大客戶(hù)順利對(duì)接上互聯(lián)網(wǎng)浪潮,準(zhǔn)確優(yōu)選出符合自己需要的互聯(lián)網(wǎng)運(yùn)用,我們將一直專(zhuān)注品牌網(wǎng)站建設(shè)和互聯(lián)網(wǎng)程序開(kāi)發(fā),在前進(jìn)的路上,與客戶(hù)一起成長(zhǎng)!

1.1 Use Python

Dropbox 的 99.9% 的代碼是用 Python 寫(xiě)的。 Python 使用在服務(wù)器端、桌面的客戶(hù)端、網(wǎng)站控制邏輯,后端的 API 和分析

在 Android 平臺(tái),由于內(nèi)存的限制不能使用 Python

使用 Python 語(yǔ)言運(yùn)行單一的代碼。通過(guò)使用 PyObjs , WxPython , types , py2exe , py2ap , PyWin32 等工具,讓 Dropbox 運(yùn)行在 Windows , Mac 和 Linux 系統(tǒng)

優(yōu)點(diǎn):

開(kāi)發(fā)人員通過(guò) Python 互相溝通和表達(dá)思想

簡(jiǎn)單易學(xué),易于閱讀,易于編寫(xiě),新人容易上手

缺點(diǎn):

別傻了

它消耗太多的內(nèi)存并且運(yùn)行的太慢。在服務(wù)器端不是大問(wèn)題,只要買(mǎi)大的機(jī)器就行。但在客戶(hù)端,你別指望讓老的 Power PC 用戶(hù)升級(jí)設(shè)備

Python 和 C 混合編程會(huì)產(chǎn)生問(wèn)題,因?yàn)樗茈y跨越語(yǔ)言邊界輪廓想象你使用固定內(nèi)存和 CPU 想干什么( Coding in a mixed environment of Python and C creates problems because it's hard to profile across the language boundaries like you want to do when fixing memory and CPU problems. )

內(nèi)存碎片問(wèn)題是腳本語(yǔ)言可能不是一個(gè)長(zhǎng)期運(yùn)行進(jìn)程的好主意

1.2 從開(kāi)始就讓它工作 (Just Work Baby)

如果不管你是什么文件系統(tǒng),是什么操作系統(tǒng),什么應(yīng)用程序所使用。該產(chǎn)品應(yīng)始終只是要能工作。

在所支持的種類(lèi)繁多的平臺(tái)上,分析遇到的各種錯(cuò)誤, Python 幫助他們進(jìn)行快速的迭代。

1.3 早發(fā)布 (Release Early)

在一天內(nèi)進(jìn)行編碼并發(fā)布它,使用 Python 很容易做到

1.4 在循環(huán)內(nèi)使用 C ,優(yōu)化 CPU 是容易的 (Use C for Inner Loops, Optimizing CPU is easy)

是一種解決速度太慢的問(wèn)題的方法。

優(yōu)化內(nèi)部循環(huán),以減少 CPU 時(shí)間。

在 Python 中循環(huán)與 C 中相比,多消耗 44% 時(shí)間

Python 的虛擬機(jī)字節(jié)碼調(diào)度是很慢。

有許多工具調(diào)優(yōu) CPU 。

CPU 優(yōu)化通常限于小代碼段

1.5 輪詢(xún)不容易擴(kuò)展 (Polling 30 million clients all over the world doesn’t scale)

建立一個(gè) HTTP 通知結(jié)構(gòu),以避免客戶(hù)端輪詢(xún)服務(wù)器。

1.6 自定義內(nèi)存分配器,優(yōu)化內(nèi)存很困難

曾經(jīng)有一段時(shí)間***的問(wèn)題??梢允褂玫拇罅?jī)?nèi)存但內(nèi)存永遠(yuǎn)不會(huì)被釋放。對(duì)于大型同步他們可以使用最多 1.5GB 的,現(xiàn)在他們很少使用超過(guò) 100MB 的。

很難,因?yàn)椋?/p>

很少有工具為 Python 和 C 優(yōu)化內(nèi)存

內(nèi)存膨脹有很多的原因:在 Python 和 C 代碼內(nèi)存泄漏,內(nèi)存碎片,內(nèi)存使用效率不高。

固定內(nèi)存的低效率沒(méi)有明顯的幫助。他們認(rèn)為有一個(gè)內(nèi)存泄漏,但沒(méi)有。

問(wèn)題變成了內(nèi)存碎片。內(nèi)存碎片是發(fā)生在不同大小的內(nèi)存塊是不斷被刪除和分配。什么情況是連續(xù)的內(nèi)存塊可以不再進(jìn)行分配。 CPython 沒(méi)有一個(gè)垃圾收集器,所以所有的內(nèi)存根本無(wú)法分配和堆內(nèi)存不斷增長(zhǎng)

解決辦法是建立一個(gè)自定義分配器。該文件的元數(shù)據(jù)對(duì)象時(shí),做了很多的增長(zhǎng)轉(zhuǎn)移,所以明顯的成果是在 C 中使用 mmap 創(chuàng)建自定義分配器。

原文鏈接:http://www.linuxidc.com/Linux/2011-04/34748.htm


分享文章:DropBox使用Python的6個(gè)經(jīng)驗(yàn)分享
轉(zhuǎn)載來(lái)源:http://www.dlmjj.cn/article/djhdijo.html