用了fastapi还需要nginx_运维系列之FastAPI接口服务

本文介绍了在对采集系统改版过程中,使用FastAPI和fabric替换Java进行运维操作,解决了服务稳定性问题。文章分享了FastAPI接口和fabric执行命令行的实现代码,展示了一个稳定的Linux服务器运维解决方案。
摘要由CSDN通过智能技术生成

a89db399cb442f3ec77ccb5f618d14a4.png

最近在对以前的采集系统进行改版,同时对原来的运维部分也进行了改版。以前的运维功能模块,是基于Java开发,通过Java来执行相应的命令,但是不管是windows还是Linux系统,都不是很稳定,总是出现无法关闭、启动等问题。本次改版计划用fabric+FastAPI的方式来进行。通过测试发现,Linux系统下服务的启动、关闭、上传等几乎没有出现过先前的问题,比较稳定。下面把相关的代码贴出,供有需求的同学参照

第一部分:FastAPI接口部分

from fastapi import FastAPI, Path
from com.fy.fastapi.monitor.shell.fabric.FabricLinux import FabricLinux
app = FastAPI()
#执行shell命令;
#调用示例: http:// 127.0.0.1:8000/items/3? q=%E6%B5%8B%E8%AF%95
@app.get("/cmd/{cmd}")
def runCommand(cmd, host, userName, password):
fabric = FabricLinux(host , userName , password)
result = fabric.runCommand(cmd)
fabric.closeClient()
return {"res": result }
#上传文件;
#调用示例: http:// 127.0.0.1:8000/items/3? q=%E6%B5%8B%E8%AF%95
@app.get("/upload/{srcFile}")
def upload(srcFile, targetDir, host, userName, password):
fabric = FabricLinux(host , userName , password)
result = fabric.upload(srcFile, targetDir)
fabric.closeClient()
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值