seven cloudapp frame
Project description
seven_cloudapp_frame
项目简介
天志互联Python云应用框架库,提供活动管理、任务系统、用户服务、订单支付、资产管理等电商营销类业务的基础能力框架。
技术栈清单
| 类别 | 技术 | 版本要求 |
|---|---|---|
| 开发语言 | Python | ~=3.8 |
| Web框架 | Tornado | 不必配置 |
| 关系型数据库 | MySQL | 5.7和8.0 |
| 缓存 | Redis | 4.0+ |
| 配置中心 | Nacos | 不必配置 |
| 基础框架 | seven-framework | >=1.2.3 |
| 淘宝API | seven-top | >=1.0.28 |
注意事项
- 框架支持分表模式,对大数据表(如stat_log_tb、stat_report_tb等)已内置分表支持
- 所有错误消息建议使用translation_helper进行统一翻译处理,翻译文件需放置在指定目录,支持从配置文件读取locales_dir路径
- 框架内置多种业务帮助类(RedisHelper、WechatHelper、AlipayHelper等),优先使用框架提供的工具类
快速开始
前置条件
- Python 3.8+
- MySQL 5.7和8.0
- Redis 4.0+
- Nacos Server(可选)
安装依赖
pip install seven-cloudapp-frame
本地开发指南
目录结构概览
seven_cloudapp_frame/
├── handlers/ # 请求处理层
│ ├── client/ # 客户端接口(C端)
│ ├── server/ # 服务端接口(管理端)
│ ├── frame_base.py # 基类Handler
│ └── core.py # 核心路由
├── libs/ # 工具库
│ ├── common/ # 通用组件
│ │ ├── share_config.py # 全局配置管理
│ │ ├── frame_db.py # 数据库操作
│ │ └── frame_tornado.py # Tornado框架封装
│ └── customize/ # 自定义工具类
│ ├── redis_helper.py
│ ├── wechat_helper.py
│ ├── alipay_helper.py
│ └── ...
├── models/ # 数据模型层
│ ├── db_models/ # 数据库表模型
│ │ ├── act/ # 活动相关表
│ │ ├── user/ # 用户相关表
│ │ ├── task/ # 任务相关表
│ │ └── ...
│ ├── console_models/ # 控制台业务模型
│ ├── *_base_model.py # 各业务基类模型
│ └── seven_model.py # 基础模型
└── locales/ # 国际化翻译文件
必须配置的环境变量示例
{
"run_port": "8080",
"db_cloudapp": {
"host": "localhost",
"port": 3306,
"user": "root",
"password": "password",
"database": "cloudapp_db",
"charset": "utf8mb4"
},
"redis": {
"host": "localhost",
"port": 6379,
"password": "",
"db": 0
},
"enable_i18n": false,
"locales_dir": "/path/to/locales",
"nacos_config": {
"server_addr": "localhost:8848",
"namespace": "",
"data_id": "cloudapp_config",
"group": "DEFAULT_GROUP"
},
"test_config": {
"user_nick": "test_nick",
"open_id": "test_open_id",
"source_app_id": "test_app_id",
"client_ver": "1.0.0",
"access_token": ""
}
}
部署说明
数据库配置
- 主库配置:默认db_cloudapp
- 是否支持主从:支持
- 分表支持:stat_log_tb、stat_report_tb、asset_log_tb、user_asset_tb、task_count_tb、user_info_tb、prize_order_tb、prize_roster_tb
配置中心
- 支持Nacos配置中心,通过init_config_from_nacos方法初始化配置
- 配置文件支持本地JSON文件或远程HTTP URL加载
- 推荐生产环境使用Nacos进行配置管理
缓存
- 使用Redis作为缓存层
- 支持缓存失败重试机制
- 缓存key前缀自动管理
国际化部署
- 设置is_translate为true开启国际化
- 配置locales_dir指向翻译文件目录
- 支持zh_CN和zh_EN两种语言
- 翻译文件使用JSON格式,以中文为key
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file seven_cloudapp_frame-1.2.155.20.tar.gz.
File metadata
- Download URL: seven_cloudapp_frame-1.2.155.20.tar.gz
- Upload date:
- Size: 369.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4d404329243a95c1c8a78bb4705b87120a656df28e54ae3745af8dabe42dff08
|
|
| MD5 |
0b127ce614d8eef2eea407ac209f1e22
|
|
| BLAKE2b-256 |
b16585ce648b06b30200080d5c4034650e34ba09656af10972cd28afcb1996c5
|
File details
Details for the file seven_cloudapp_frame-1.2.155.20-py3-none-any.whl.
File metadata
- Download URL: seven_cloudapp_frame-1.2.155.20-py3-none-any.whl
- Upload date:
- Size: 501.1 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.8.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
994a8761684f134727cf011fa142daecd886929a16c0259c025505eeb015c2bc
|
|
| MD5 |
972f4802c47dcabb7ab0ab0edddff578
|
|
| BLAKE2b-256 |
7dcb301cec9ea45f2b4b668bb6ea7c8ae37c707d48061daabc70358274763b10
|