缴费项目主体功能完成的差不多了,写前端JS写的都快吐了,把所有的通用的代码封装在一个文件里差不多有1500行。接下去应该主要是Bug修正和性能优化了。性能优化方面,数据库访问效率是重要的环节,使用ORM遇到的一个很常见的是 “N+1”问题,自然Django也不例外。
在树莓派安装lxml
安装和配置是最令人费劲的:
- 经常在解决一个问题过程又出现另外一个不得不先解决问题,有点像栈(stack),忘记了最先要解决的问题
- 网上的解决方法只是一个参考,时间和环境不一定一样,需要自己去阐释
- Google搜索/Bing搜索/stackoverflow是搜索的利器,错误信息一复制粘贴基本上可以找到一些结果,当然和搜索技巧也是有很大关系的
本文记录在树莓派安装lxml的过出现的一些问题和解决方案,本来lxml安装过程比较简单,安装依赖和pip安装两条命令即可。但是由于各种各样的状况和环境导致这过程花费的时间有点长。
1 | $ sudo apt-get install libxml2-dev libxslt-dev python-dev |
lxml的标准安装过程
高德地图热力图和设备监测
A 热力图
热力图以高亮形式显示数据密集程度。根据密集程度的不同,图上会呈现不同的颜色,以直观的形式展现数据密度。
在设备检测领域,采用热力图可以直观地显示哪些区域的设备具有很高的报警率,为监控决策和提前介入提供了数据依据。
AMap.Heatmap 是高德地图热力图插件,基于heatmapjs。高德地图API引用了heatmap.js最新版本v2.0,v2.0基于新的渲染模型,具有更高的渲染效率和更强的性能。支持chrome、firefox、safari、ie9及以上浏览器。
python项目持续集成与包发布
本文依据《Python Packaging User Guide (Python打包用户手册)》,以 ConfStruct 为例子描述了Python项目的持续集成和包发布等开发流程,并了解 Travis CI、wheel和twine等工具的使用。
ConfStruct是一个使用类似ORM声明式描述特定场景下的协议数据结构,并提供Python对象和二进制数据之间的转化的Python库。该库解决了使用若干个“类型-长度-值”无序二进制片段传输字典的问题。
主要步骤
- 准备项目代码
- 运行本地单元测试
- Travis持续集成
- 编写setup.py文件
- 生成wheel安装包
- 发布到PyPI
- 添加徽章