python爬虫:主要是异步协程爬虫,在机器允许的情况下实现高并发和异步访问,一般网站的模拟登陆及验证码登陆都能够实现。
Django框架:包含restapi的开发及后端服务器的搭建
nginx:用于转发及连接后端实现多worker并发请求,一般结构为nginx+uwsgi+Django
数据库:常用关系型数据库有mysql,oracle,postgresql,近期项目用mysql,个人掌握mysql一些优化方案及分表分区方法;
常用的非关系型数据库主要是redis,作为缓存层储存session及高频调用的数据,单独有开发脚本同步redis到mysql
机器学习:dbscan聚类算法精通,其余算法触类旁通,可独立完成用户画像分析,核分类器等应用的开发。
docker:docker容器部署及连通,实现单机或双机下应用服务的高可用(极大程度减少物理机或云服务器的成本)
项目一:
项目类型: Web 网站
项目描述: 使用docker管理不同角色的容器:
nginx接入前置,两个挂载在本地目录的业务容器,redis与memcache作为缓存层,redis主从同步,mysql8集群作为主要数据存储(读写分离),后接入spark集群针对租车的GPS数据进行历史加实时分析,使用聚类算法;
结合人车信息刻画用户画像,精确区分客户群。
行业: P2P 金融,交通
我的职责: docker环境搭建,容器管理,构造聚类算法算法(DBscan)
Django后端环境维护及版本控制,
GPS数据的restapi
整体的运行维护及日志监控
项目二:
项目类型 其他
项目描述 获取某资金方的GPS数据
采用模拟登陆的模式,获取cookie及登陆加密串
划分为两个类,一个类获取所有的司机信息,技术栈主要是xpath+正则,直接从表单传参(cookie及登陆加密串)获取司机列表
循环列表放入异步async队列,由于资方对访问次数和IP(白名单)有限制,所以使用semaphore限制每次异步数量为10个,每获取10个休眠1分钟
行业 P2P 金融,交通
我的职责 构建不同职能的类,实现数据模块和业务模块可以区分开来以便单独维护
类中使用了redis异步连接池存储数据,确保数据能够尽量少的占用主服务器资源
使用的rpush进行推入数据,另外启一个监听程序获取该推入数据同步到mysql,以便后续进行数据分析和计算