前言Python拥有丰富的库,作为胶水语言很容易与c/c++交互。因此,为了适应快速变化的业务,兼顾计算效率,在上层使用python作为服务端提供服务,在底层使用c/c++进行计算是一种非常适合算法的方法开发商。pythonflask库提供http接口和相关demo页面,gunicorn提供多核并行能力,底层c++库提供单线程计算。下面通过示例说明了此体系结构。代码地址:python_hps准备工作开始实验前,需要安装flask、gunicorn、apachbenchtool等工具。注:所有实验均在Linux系统中进行。测试机为4核虚拟机。sudopipinstallflasksudopipinstallgunicornsudoapt-getinstallapache2-utils计算计算部分模拟真实计算,所以计算量比较大。在我测试的虚拟机上,单核单线程跑400ms左右。C++核心计算部分,随便写:API_DESCintfoo(constintval){floatresult=0.0f;for(intc=0;c<1000;c++){for(inti=0;i
