Falcon API - 检查服务器是否 运行
Falcon API - check if the server is running
我在 Falcon 中构建了一个非常简单的 API,post 我的机器学习模型的结果。见下文:
import falcon
import heureka_predikce
class MLmodel:
def on_post(self, req, resp):
reg_list = req.media
response_list = []
for vstup in reg_list:
response_list.append(heureka_predikce.heureka_predikuj(vstup))
resp.text = response_list
resp.status = falcon.HTTP_OK
my_model = MLmodel()
app = application = falcon.API()
app.add_route("/predictionApi/v1/predict", my_model)
但我想检查服务器是否 运行。也就是说,我想在 MLmodel
中包含一些执行“健康检查”的新方法。我是 APIs 的初学者,但是有推荐的方法吗?如何操作?我觉得应该比较容易,但是我自己找不到任何东西...谢谢
要检查服务器是否启动并且 运行,通常我们所做的是在端点发送请求,服务器将 return 表明它正在工作的东西。
正如您所说,出于同样的原因,您需要在 MLmodel
中添加一个方法,可以这样做,但不推荐这样做,因为您的 MLmodel
正在处理 predict
端点。
要进行健康检查,您可以使用新 class 创建一个新端点,它将接受 get
请求并在调用时立即响应您。
例如:
class Ping:
def on_get(self, req, resp):
resp.text = "pong"
resp.status = falcon.HTTP_OK
然后只需使用以下方法为同一资源添加路由:
app.add_route("/predictionApi/v1/ping", Ping())
现在对于每个 ping 请求,您都会收到 pong 响应。
我在 Falcon 中构建了一个非常简单的 API,post 我的机器学习模型的结果。见下文:
import falcon
import heureka_predikce
class MLmodel:
def on_post(self, req, resp):
reg_list = req.media
response_list = []
for vstup in reg_list:
response_list.append(heureka_predikce.heureka_predikuj(vstup))
resp.text = response_list
resp.status = falcon.HTTP_OK
my_model = MLmodel()
app = application = falcon.API()
app.add_route("/predictionApi/v1/predict", my_model)
但我想检查服务器是否 运行。也就是说,我想在 MLmodel
中包含一些执行“健康检查”的新方法。我是 APIs 的初学者,但是有推荐的方法吗?如何操作?我觉得应该比较容易,但是我自己找不到任何东西...谢谢
要检查服务器是否启动并且 运行,通常我们所做的是在端点发送请求,服务器将 return 表明它正在工作的东西。
正如您所说,出于同样的原因,您需要在 MLmodel
中添加一个方法,可以这样做,但不推荐这样做,因为您的 MLmodel
正在处理 predict
端点。
要进行健康检查,您可以使用新 class 创建一个新端点,它将接受 get
请求并在调用时立即响应您。
例如:
class Ping:
def on_get(self, req, resp):
resp.text = "pong"
resp.status = falcon.HTTP_OK
然后只需使用以下方法为同一资源添加路由:
app.add_route("/predictionApi/v1/ping", Ping())
现在对于每个 ping 请求,您都会收到 pong 响应。