Ver Fonte

增加redis测试

lingmin_package@163.com há 3 meses atrás
pai
commit
a272dce21a
4 ficheiros alterados com 48 adições e 7 exclusões
  1. 3 3
      config/config.ini
  2. 1 0
      foundation/utils/redis_utils.py
  3. 4 4
      views/__init__.py
  4. 40 0
      views/test_views.py

+ 3 - 3
config/config.ini

@@ -41,11 +41,11 @@ APP_SECRET=sx-73d32556-605e-11f0-9dd8-acde48001122
 
 
 [redis]
-REDIS_URL=redis://:123456@127.0.0.1:6379
-REDIS_HOST=127.0.0.1
+REDIS_URL=redis://:Wxcz666@@192.168.0.3:6379
+REDIS_HOST=192.168.0.3
 REDIS_PORT=6379
 REDIS_DB=0
-REDIS_PASSWORD=123456
+REDIS_PASSWORD=Wxcz666@
 REDIS_MAX_CONNECTIONS=50
 
 [log]

+ 1 - 0
foundation/utils/redis_utils.py

@@ -37,6 +37,7 @@ async def get_redis_result_cache_data(data_type: str , trace_id: str):
      # 直接获取 RedisStore
     redis_store = await RedisConnectionFactory.get_redis_store()
     value = await redis_store.get(key) 
+    value = value.decode('utf-8')
     return value
 
 

+ 4 - 4
views/__init__.py

@@ -22,10 +22,10 @@ async def lifespan(app: FastAPI):
     #await mcp_server.get_mcp_tools()
     # 全局数据库连接池实例
     async_db_pool = None
-    # async_db_pool = AsyncMySQLPool()
-    # await async_db_pool.initialize()
-    # app.state.async_db_pool = async_db_pool
-    #server_logger.info(f"✅ MySQL数据库连接池:{app.state.async_db_pool}")
+    async_db_pool = AsyncMySQLPool()
+    await async_db_pool.initialize()
+    app.state.async_db_pool = async_db_pool
+    server_logger.info(f"✅ MySQL数据库连接池:{app.state.async_db_pool}")
 
     yield
     # 关闭时清理

+ 40 - 0
views/test_views.py

@@ -359,6 +359,46 @@ async def chat_graph_stream(param: TestForm,
 
 
 
+@test_router.post("/redis", response_model=TestForm)
+async def test_redis(
+        request: Request,
+        param: TestForm,
+        trace_id: str = Depends(get_operation_id)):
+    """
+    根据MySQL应用
+    """
+    try:
+        server_logger.info(trace_id=trace_id, msg=f"{param}")
+        # 验证参数
+
+        # 从字典中获取input
+        input_data = param.input
+        session_id = param.config.session_id
+        context = param.context
+        header_info = {
+        }
+        from foundation.utils.redis_utils import set_redis_result_cache_data , get_redis_result_cache_data
+        output = "success"
+        data_type = "output"
+
+        await set_redis_result_cache_data(data_type=data_type , trace_id=trace_id , value=input_data)
+        server_logger.info(trace_id=trace_id, msg=f"key:{trace_id}:{data_type},value:{input_data} redis 设置成功")
+        output = await get_redis_result_cache_data(data_type=data_type , trace_id=trace_id)
+        # 直接执行
+        server_logger.info(trace_id=trace_id, msg=f"【result】: {output}", log_type="/redis")
+        # 返回字典格式的响应
+        return JSONResponse(
+            return_json(data={"output": output}, data_type="text", trace_id=trace_id))
+    except ValueError as err:
+        handler_err(server_logger, trace_id=trace_id, err=err, err_name="/redis")
+        return JSONResponse(return_json(code=100500, msg=f"{err}", trace_id=trace_id))
+
+    except Exception as err:
+        handler_err(server_logger, trace_id=trace_id, err=err, err_name="/redis")
+        return JSONResponse(return_json(code=100500, msg=f"{err}", trace_id=trace_id))
+    
+
+
 
 
 @test_router.post("/mysql/add", response_model=TestForm)