![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
高性能
文章平均质量分 78
rgc_520_zyl
这个作者很懒,什么都没留下…
展开
-
kong lua 调用插件报错:Resource temporarily unavailable
后端报错内容如下connect() to unix:/usr/local/kong/xxx.socket failed (11: Resource temporarily unavailable)前端报错返回 404错误问题原因unix的socket在大量请求进来时,其缓存队列较小导致 部分请求无法缓存,直接返回错误内容;解决思路修改 unix的socket缓存队列大小即可;解决方法kong.conf 配置文件的 ```lua_socket_pool_size``` 变量 值改原创 2022-04-20 14:37:28 · 293 阅读 · 0 评论 -
flask单个请求中计算密集型的优化过程
被请求接口中的情况如下: 根据用户输入参数, 需要使用pandas和numpy进行大量计算,这些计算中 ,比如 在 范围 1-100之间使用 随机函数 生成 一个随机值,这个随机值 就是一条线上的点; 这个接口 需要 随机100万次 然后把100万个点渲染到前端页面上;分析需求: 因为是随机100万次,每次随机值都放在list中,最后发给前端; 每次计算时 不会影响其他程序;优化思路:可以考虑 把100万次的计算 平均放到 10个进程中;每个进程负责10万次计算; 这样可以缩减10倍时间...原创 2021-08-11 16:55:18 · 408 阅读 · 0 评论 -
Python代码编写优化
在导入方式及 代码运行访问 命名空间中的变量时,先在本地变量寻找 再到全局变量寻找的优化#! /usr/bin/env python# -*- coding: utf-8 -*-import mathimport timeitfrom math import sindef tight_loop_very_slow(iterations): """ 每次循环 要先找全局变量中的math模块,再去 模块中找 sin方法,极慢 """ result = 0...原创 2021-08-11 16:15:03 · 117 阅读 · 0 评论 -
NumExpr简单使用及适用范围
NumExpr作用:通俗易懂的解释一下: 如 a+b+c 操作,一般情况是 a+b 是一个操作,把结果临时存起来 然后 再执行+c操作; 但是NumExpr 通过内置的一系列编译优化为 a+b+c; 节省了 中间的a+b的结果临时存起来这个操作,从而节省内存;NumExpr在连续的数学运算上优化效果比较好;安装方式:pip install numexpr适用范围:支持运算符如下:逻辑运算符:&,|,~ 比较运算符:<,<=,==...原创 2021-01-26 16:16:56 · 2024 阅读 · 0 评论 -
Pythran简单使用
Pythran简介:Pythran通过预先编译,将python代码转为C++代码的 后缀为 .so 的文件,从而 在运行时获得更快的运行速度;安装步骤:Mac OS系统安装方式:$> pip install pythran$> brew install openblas$> printf '[compiler]\nblas=openblas\ninclude_dirs=/usr/local/opt/openblas/include\nlibrary_dirs=/.原创 2021-01-26 18:22:10 · 3833 阅读 · 2 评论 -
Python多线程实现 as_completed先返回的任务先处理 在 阿里云 函数式计算 优化的应用
需求:在调用阿里云 函数式计算 时,由于 其函数式计算系统 在分配系统资源时,可能存在 多个任务分配给同一个 服务器(每个服务器2核3G内存),导致 多个相同任务在多线程调用函数式计算时总有几个因为资源分配不均返回较慢(包括带宽问题);并且 在多线程 调用函数式计算时,每个线程的函数相同,并且根据业务需求,只要把返回结果list 拼接一下并且满足指定长度即可;解决方法:使用多线程的 先返回...原创 2020-03-30 22:41:41 · 7827 阅读 · 4 评论 -
Numba使用总结
Numba is a just-in-time compiler for Python that works best on code that uses NumPy arrays and functions, and loops.Numba是Python的即时编译器,在使用NumPy数组和函数以及循环的代码上效果最佳。就是让你代码运行速度更快注意点: numba在进行第一次编译时需要一定时间,后续操作 对入参同一种类型时,直接读取缓存的编译运行,会非常快! 所以在测试性能时 注意测试方...原创 2021-01-07 19:35:01 · 3921 阅读 · 0 评论 -
Parallel Python(pp) 包的使用总结
安装方式:在 下载页面中 选择合适的版本进行安装, 如 zip后缀的文件,解压后, 进入文件目录中, 通过 python setup.py install 进行安装;功能特点:在SMP和集群上并行执行python代码; 说白了 就是 一个机器上利用CPU多核,或者 在多个机器上利用每个机器的CPU 执行python代码; 易于理解和实现基于Job的并行化技术(易于并行转换串行应用程序) 自动检测并使用 CPU上 所有进程数作为 worker数; 默认就是此设置; 运行时 work...原创 2021-01-12 10:58:53 · 2473 阅读 · 0 评论 -
joblib的Parallel并发计算使用总结及优化
joblib链接非常简单的实现并行计算功能 快速的磁盘文件转内存对象功能(比pickle快) 针对大数据量计算更快,更稳定且对numpy array进行优化此处主要使用其并行计算功能: joblib.Parallel示例代码如下:from joblib import Parallel, delayedParallel(n_jobs=1, verbose=100, backend='loky')(delayed(myfunc)(i) for i in r...原创 2021-01-15 19:56:14 · 9574 阅读 · 1 评论