新增nacos 配置 测试
All checks were successful
git commit AiDA python develop 分支构建部署 / scheduled_deploy (push) Has been skipped

This commit is contained in:
zcr
2026-04-24 10:17:42 +08:00
parent cfbd9e47ac
commit ad4db736de
2 changed files with 117 additions and 72 deletions

View File

@@ -112,66 +112,6 @@ client_config = (ClientConfigBuilder()
nacos_config_data: Dict[str, Any] = {}
async def register_service_to_nacos():
"""启动时把服务注册到 Nacos"""
if not nacos_initialized_successfully:
logger.warning("Nacos 未初始化成功,跳过服务注册")
return
nacos_config_client = await NacosConfigService.create_config_service(client_config)
if not nacos_config_client: # 如果配置客户端都没连上,就不注册
logger.warning("Nacos 配置客户端未初始化,跳过服务注册")
return
try:
nacos_naming_client = await NacosNamingService.create_naming_service(client_config)
param = RegisterInstanceParam(
service_name="aida.python",
group_name=NACOS_GROUP,
ip="210.0.194.163",
port=1671,
cluster_name="DEFAULT",
weight=1.0,
metadata={
"version": "1.0.0",
"env": settings.SERVE_ENV,
"framework": "fastapi",
"debug": str(settings.DEBUG),
},
enabled=True,
healthy=True,
ephemeral=True, # 临时实例,推荐生产使用
)
await nacos_naming_client.register_instance(request=param)
logger.info(f"✅ 服务已成功注册到 Nacos{SERVICE_NAME} | {"10.1.1.249"}:{settings.PORT} | env={settings.SERVE_ENV}")
except Exception as e:
logger.error(f"❌ 服务注册到 Nacos 失败: {e}")
async def deregister_service_from_nacos():
"""服务关闭时优雅注销(防止 Nacos 长时间显示不健康实例)"""
try:
nacos_naming_client = await NacosNamingService.create_naming_service(client_config)
param = DeregisterInstanceParam(
service_name=SERVICE_NAME,
group_name=NACOS_GROUP,
ip="210.0.194.163",
port=1671,
cluster_name='c1',
ephemeral=True,
)
await nacos_naming_client.deregister_instance(request=param)
logger.info(f"✅ 服务已从 Nacos 注销 → {SERVICE_NAME}")
except Exception as e:
logger.warning(f"服务注销时出现异常(通常可忽略): {e}")
nacos_initialized_successfully = False
async def load_nacos_config() -> None:
"""初始化 Nacos 配置并监听变化"""
global nacos_config_data, settings
@@ -212,7 +152,6 @@ async def load_nacos_config() -> None:
await client.add_listener(NACOS_DATA_ID, NACOS_GROUP, listener)
logger.info("✅ Nacos 配置监听器已注册(支持热更新)")
nacos_initialized_successfully = True
await register_service_to_nacos()
except Exception as e:
logger.error(f"❌ Nacos 初始化失败: {e}")
nacos_initialized_successfully = False