1、一切数据库操作最好使用内网连接,

2、使用批量操作接口操作数据库,而不是多线程频繁操作单条数据

3、如果python进程的cpu使用率达到100%了,需要开启多进程。java单个进程cpu使用率在32核处理器上可以达到3000%以上,python单个进程职高只能100%,要想加速必须修改代码使用多进程。

如图,java单个进程cpu使用率可以远超100%,python单进程cpu最高只能100%

python 处理后台数据 python处理数据快吗_设计模式

 

4、将数据库表中的数据一次性加载到内存中,把查询条件当做字典的键,整条记录当做字典的值。由于是内网,几乎半分钟内可以加载5gb的数据到程序的变量中来。之后由于是读取字典的hash键,速度肯定比任何种类的数据库要快。

 

原来,三表查询,mongodb使用率一直高达2900%以上

python 处理后台数据 python处理数据快吗_设计模式_02

 

 

修改后:

python 处理后台数据 python处理数据快吗_python 处理后台数据_03

 

 由于把表直接加载到内存中了,减少了几百万次查询数据库,而是直接取键,最终速度提高了500倍,并且mongo使用率从2900%降低到50%了。

反对极端面向过程编程思维方式,喜欢面向对象和设计模式的解读,喜欢对比极端面向过程编程和oop编程消耗代码代码行数的区别和原因。致力于使用oop和36种设计模式写出最高可复用的框架级代码和使用最少的代码行数完成任务,致力于使用oop和设计模式来使部分代码减少90%行,使绝大部分py文件最低减少50%-80%行的写法。