三分钟上手linux系统开发

linux系统编程,主要使用c语言,c++是c的超集,也是可以的

完整项目代码已上传github:https://github.com/neatlife/my-tlpi-book

获取可用环境

可以使用虚拟机安装一个linux系统进行linux系统开发,虽然mac os和linux非常相似,但是和linux还是有很多小区别的,装虚拟机是最省事的
这里使用elementary os,下载地址参考:https://elementary.io/zh_CN/

安装时,选linux 4.x以上的内核版本即可

聚合支付系统架构设计和商业模型分析

参与了聚合支付业务系统的开发,总结一下

技术栈

  1. 使用ansible发布代码和配置
  2. 使用kong作为前端网关
  3. 使用jenkins做自动化测试
  4. 使用sonarqube做代码规范检查
  5. 使用gogs做代码版本管理
  6. 开发githook系统作为git事件的订阅器,自动化git事件的处理,比如发送钉钉通知
  7. 开发自己的框架系统,对源码比较了解,方便持续开发
  8. 使用xxl-job做定时任务管理系统
  9. 使用graphite, statsd, grafana做监控可视化系统
  10. 使用阿里云日志平台做日志存储,以后对日志的数据分析
  11. 使用阿里云MaxCompute大数据处理系统
  12. 使用supervisor管理持久运行的进程
  13. 使用ssh tunnel转发内网端口,使用内网服务器,可以减少云服务器花费
  14. 使用airflow作为任务编排系统
  15. 使用terraform管理kong网关配置
  16. 使用consul作为服务注册中心
  17. 使用钉钉做异常报警
  18. 使用beanstalk做消息队列
  19. 订单表使用程序进行分库分表
  20. 使用ldap做开发系统的用户中心,集成jenkins、gogos、grafana等系统
  21. 使用gitlab的issue做用户反馈的问题管理系统
  22. 使用mkdocs作为文档管理系统
  23. 使用gitbook生成开发平台文档
  24. 开发yum的server存放和安装自定义的rpm包

其中githook系统可能比较有特色,一般不会单独开发hook系统

核心交互流程图如下:

Read more   2019/7/31 posted in  一图胜千言 业务

使用staruml画uml图

staruml图表类型

可以看到staruml支持的图的类型,一般下面两种类型比较常用

  1. Class Diagram: 类图
  2. Sequence Diagram: 时序图
Read more   2019/6/21 posted in  UML 一图胜千言 设计模式

一图胜千言-订单业务系统架构图

右键新窗口打开可查看大图

订单业务系统架构图

2019/3/17 posted in  业务 一图胜千言

基于snowflake和scikit_learn机器学习的工作流


流程如下

  1. 收集需要机器学习分析的数据,然后把这个数据存放到sql数据仓储snowflake中
  2. python的scikit_learn机器学习项目从snowflake中读取数据进行分析
  3. 把机器学习的成果写入业务mysql中
  4. 业务系统读取机器学习的结果展现给终端用户

关键点

  1. 数据仓储层使用snowflake,兼容sql语法,提升了机器学习项目读取数据的效率
2018/10/12 posted in  一图胜千言 机器学习

一图胜千言-开源项目源码目录结构

php和swoole目录结构

Read more   2017/5/19 posted in  一图胜千言