Consul测试代码
import time from consul import Consul, Check class ConsulServiceManager: def __init__(self, host, port=8500, schema="http"): self._host = host self._port = port self._schema = schema self._local_ip = "127.0.0.1" # 通过环境变量获取 self.consul = Consul(host=self._host, port=self._port, scheme=self._schema) def register_service(self, service_name, service_id, service_address, service_port): self.consul.agent.service.register( name=service_name, service_id=service_id, address=service_address, port=service_port, check=Check.http( f'https://{service_address}:{service_port}/health', interval='10s', timeout='5s', ), ) print(f'Service {service_name} registered with ID {service_id}.') def deregister_service(self, service_id): self.consul.agent.service.deregister(service_id) print(f'Service with ID {service_id} deregistered.') def discover_service(self, service_name): index, services = self.consul.catalog.services() print("Available services:") for service in services: print(f'- {service}') # 获取具体服务的信息 index, service_info = self.consul.catalog.service(service_name) if service_info: print(f"Service '{service_name}' found with info: {service_info}") else: print(f"Service '{service_name}' not found.") if __name__ == '__main__': # 创建 ConsulServiceManager 实例 consul_manager = ConsulServiceManager(host='192.168.20.50') # 服务信息 _service_name = 'my_service' _service_id = 'my_service_id' _service_address = 'www.xxx.com' # 使用 Consul 的主机名 _service_port = 8080 # 注册服务 consul_manager.register_service( _service_name, _service_id, _service_address, _service_port ) # 等待一段时间,以便服务注册 time.sleep(5) # 发现服务 consul_manager.discover_service(_service_name) # 注销服务 time.sleep(5) consul_manager.deregister_service(_service_id)
本文来自博客园,作者:一石数字欠我15w!!!,转载请注明原文链接:https://www.cnblogs.com/52-qq/p/18653204
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 10亿数据,如何做迁移?
· 清华大学推出第四讲使用 DeepSeek + DeepResearch 让科研像聊天一样简单!
· 推荐几款开源且免费的 .NET MAUI 组件库
· 易语言 —— 开山篇
· Trae初体验
2020-01-05 pycharm永久激活
2018-01-05 flask设置配置文件的四钟方式
2018-01-05 flask开发框架