本项目旨在提供一个简单易用的数字数学属性查询接口。该数字分类API接受整数作为输入,返回包含关键属性和趣味事实的结构化JSON响应。 项目涵盖了软件开发生命周期(SDLC)的各个阶段,从开发和测试到部署和监控,为理解DevOps实践的集成提供了一个端到端的学习体验。
主要功能:
开发工具与技术:
项目架构图:
项目结构:
number-classification-api/
│-- lambda_function.py # 主Lambda函数
│-- requirements.txt # Python依赖项
│-- readme.md # 项目文档
│-- .gitignore # Git忽略文件
└── app.py # Python脚本
设置与部署:
app.py
和lambda_function.py
文件。number-classifier-api
),并克隆到本地。cd number-classification-api
python -m venv venv
source venv/Scripts/activate # Windows
source venv/bin/activate # Linux/macOS
pip install flask flask-cors
Flask应用创建 (app.py):
(此处应包含app.py
文件代码,并用代码块包裹,并对代码进行必要的简化和注释,避免过长)
本地运行API:
运行python app.py
,然后在浏览器中访问:http://127.0.0.1:5000/api/classify-number?number=153
查看JSON响应。
部署到AWS:
lambda_function.py
打包成ZIP文件:zip function.zip lambda_function.py
/api/classify-number
,方法为GET。https://qn5p0npw11.execute-api.us-east-1.amazonaws.com/Test/api/classify-number?number=371
),查看JSON输出。项目意义:
本项目虽然简单,但提供了一个实践DevOps技能的良好环境,涵盖了构建、部署和管理真实应用的各个方面,积累宝贵的实践经验。 通过结合更高级的实践,可以进一步提升项目的价值和复杂度。