调试后端应用
调试后端应用
本文档详细介绍如何在 GMSSH 平台中调试后端应用,包括健康检查接口实现、服务配置和调试技巧等关键内容。
概述
在 GMSSH 平台中调试后端应用时,需要确保服务能够正常响应健康检查请求。平台会定期检查服务状态,以确保应用的可用性和稳定性。
健康检查接口
基本要求
服务要想正常进行调试,必须实现一个 ping 接口用于健康检查。无论是 HTTP 服务还是 Socket 服务,都需要提供健康检查端点。
- 检查频率:平台每 5 秒进行一次状态检查
- 超时时间:通常为 3-5 秒
- 响应要求:返回 200 状态码表示服务正常
HTTP 服务健康检查
Python (Flask) 示例:
from flask import Flask, jsonify
import time
import os
app = Flask(__name__)
# todo:注意这个地方健康检查的 ping接口必须是 Get 请求
@app.route('/ping', methods=['GET'])
def ping():
""" 健康检查 """
return jsonify(code=200, data="pong", msg="OK")
if __name__ == '__main__':
app.run(host='0.0.0.0', port=8080, debug=True)
Socket 服务健康检查
对于 Socket 服务,需要实现特殊的健康检查机制:
GMSSH SDK(Socket) 示例:
# main.py
import asyncio
from simplejrpc.app import ServerApplication
from simplejrpc.response import jsonify
# 创建应用实例,指定 socket 文件路径
app = ServerApplication("app.socket")
@app.route(name="ping")
async def ping():
"""带验证的回声接口"""
return jsonify(code=200, data="pong", msg="请求成功")
@app.route(name="hello")
async def hello():
"""简单的问候接口"""
return jsonify(code=200, data="Hello, GMSSH!", msg="请求成功")
if __name__ == "__main__":
asyncio.run(app.run())