千家信息网

DropBox使用Python的经验有哪些

发表于:2025-11-08 作者:千家信息网编辑
千家信息网最后更新 2025年11月08日,DropBox使用Python的经验有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。DropBox 使用 Pytho
千家信息网最后更新 2025年11月08日DropBox使用Python的经验有哪些

DropBox使用Python的经验有哪些,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

DropBox 使用 Python 的经验分享:

1.1 Use Python

Dropbox 的 99.9% 的代码是用 Python 写的。 Python 使用在服务器端、桌面的客户端、网站控制逻辑,后端的 API 和分析

在 Android 平台,由于内存的限制不能使用 Python

使用 Python 语言运行单一的代码。通过使用 PyObjs , WxPython , types , py2exe , py2ap , PyWin32 等工具,让 Dropbox 运行在 Windows , Mac 和 Linux 系统

优点:

开发人员通过 Python 互相沟通和表达思想

简单易学,易于阅读,易于编写,新人容易上手

缺点:

别傻了

它消耗太多的内存并且运行的太慢。在服务器端不是大问题,只要买大的机器就行。但在客户端,你别指望让老的 Power PC 用户升级设备

Python 和 C 混合编程会产生问题,因为它很难跨越语言边界轮廓想象你使用固定内存和 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. )

内存碎片问题是脚本语言可能不是一个长期运行进程的好主意

1.2 从开始就让它工作 (Just Work Baby)

如果不管你是什么文件系统,是什么操作系统,什么应用程序所使用。该产品应始终只是要能工作。

在所支持的种类繁多的平台上,分析遇到的各种错误, Python 帮助他们进行快速的迭代。

1.3 早发布 (Release Early)

在一天内进行编码并发布它,使用 Python 很容易做到

1.4 在循环内使用 C ,优化 CPU 是容易的 (Use C for Inner Loops, Optimizing CPU is easy)

是一种解决速度太慢的问题的方法。

优化内部循环,以减少 CPU 时间。

在 Python 中循环与 C 中相比,多消耗 44% 时间

Python 的虚拟机字节码调度是很慢。

有许多工具调优 CPU 。

CPU 优化通常限于小代码段

1.5 轮询不容易扩展 (Polling 30 million clients all over the world doesn’t scale)

建立一个 HTTP 通知结构,以避免客户端轮询服务器。

1.6 自定义内存分配器,优化内存很困难

曾经有一段时间***的问题。可以使用的大量内存但内存永远不会被释放。对于大型同步他们可以使用最多 1.5GB 的,现在他们很少使用超过 100MB 的。

很难,因为:

很少有工具为 Python 和 C 优化内存

内存膨胀有很多的原因:在 Python 和 C 代码内存泄漏,内存碎片,内存使用效率不高。

固定内存的低效率没有明显的帮助。他们认为有一个内存泄漏,但没有。

问题变成了内存碎片。内存碎片是发生在不同大小的内存块是不断被删除和分配。什么情况是连续的内存块可以不再进行分配。 CPython 没有一个垃圾收集器,所以所有的内存根本无法分配和堆内存不断增长

解决办法是建立一个自定义分配器。该文件的元数据对象时,做了很多的增长转移,所以明显的成果是在 C 中使用 mmap 创建自定义分配器。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

内存 问题 分配 代码 碎片 帮助 运行 分配器 客户 客户端 工具 时间 服务器 系统 语言 循环 服务 经验 明显 不断 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 云服务器网站301重定向 软件开发如何调动员工积极性 数据中心服务器的价格 设教学数据库中有三个关系 小海豚客户端授权的数据库不存在 零服务器管理 高级软件开发工程师有什么用 最常见的数据库种类主要有 自己做一份手抄报网络安全 数据库映射字段设置 国内外重要学术会议论文数据库 女生自学软件开发好找工作吗 acs数据库检索语言与技巧 数据库中e r图 康桥一对一学软件开发 图书数据库怎么样盈利 公安技术专业网络安全与执法 高清mes软件开发报价 在网络安全的概念里 计算机与网络安全哪个专业好 构建嵌入式底层软件开发 上海宜学网络技术 船机装备资源数据库 设教学数据库中有三个关系 网络安全主题团课内容 dnf服务器bug维护 交通银行软件开发中心应届生 实惠的贸易软件开发管理 程序重连数据库能释放内存吗 邯郸项目软件开发正规平台
0