一 简介
最近在和 同事 一起开发一套数据库管理平台 ,该平台使用Django 作为web 框架。和大多数数据库管理平台一样 ,该平台提供 备份,恢复,申请实例,实例上下线 以及数据质量对比 等功能。本文主要是记录 开发一套系统使用哪些功能组件。
二 基础组件
2.1 web框架
Django 一款通用的web 框架,缺点不支持异步调用模式,推荐大家尝试使用Flask 。
2.2 前端
Bootstrap 典型的UI方案
JavaScript 实现按钮功能,异步刷新
2.3 定时功能
Django-crontab 执行定时任务
Celery 分布式任务调度
2.4 agent ,后台功能
os ,subprocess 模块 用于执行系统命令,文件操作。
requests 用于调用管理平台的api,解决数据库服务器使用密码和元数据进行交户的问题。
servant 基于go语言实现的agent ,开源工具。
2.5 日志记录
logging 记录系统异常 和自定义日志输出。
2.6 数据库交互
自己定义了一个MySQL orm ,增强对表设计结构的控制。
2.7 登陆认证
Django-auth 结合本公司自己的账号系统,有效控制系统权限。
2.8
三 开发工具
IDE PyCharm CE 版本
代码管理 git
SourceTree git 客户端管理工具 (提高效率,但是用多了会导致对git命令的生疏)
四 总结
暂时就写这么多吧,自己还在逐步深入了解其他的Python 的各种模板,以后会随着系统平台功能的完善,陆续更新本博客。也期望能够给以后入手写运维平台的朋友一点借鉴。