zoukankan      html  css  js  c++  java
  • 基于flask的python注册到eureka

    Eureka架构中的三个核心角色:

    服务注册中心

    Eureka的服务端应用,提供服务注册和发现功能,就是刚刚我们建立的eureka-demo

    服务提供者

    提供服务的应用,可以是SpringBoot应用,也可以是其它任意技术实现,只要对外提供的是Rest风格服务即可。本例中就是我们实现的user-service-demo

    服务消费者

    消费应用从注册中心获取服务列表,从而得知每个服务方的信息,知道去哪里调用服务方。本例中就是我们实现的user-consumer-demo

    Eureka就好比是滴滴,负责管理、记录服务提供者的信息。服务调用者无需自己寻找服务,而是把自己的需求告诉Eureka,然后Eureka会把符合你需求的服务告诉你。Eureka说白了就是一个注册服务中心。

    同时,服务提供方与Eureka之间通过“心跳”机制进行监控,当某个服务提供方出现问题,Eureka自然会把它从服务列表中剔除。

    这就实现了服务的自动注册、发现、状态监控。

    大多数采用微服务框架,很多时候需要兼容不同的开发语言,如python

    需要用到py_eureka_client库使用方式如下:

    1.安装:

    pip install py_eureka_client
    from flask import Flask
    import py_eureka_client.eureka_client as eureka_client
    
    app = Flask(__name__)
    
    
    def setEureka():
        server_host = "localhost"
        server_port = 5000
        eureka_client.init(eureka_server="http://localhost:1111/eureka",
                           app_name="flask_server",
                           # 当前组件的主机名,可选参数,如果不填写会自动计算一个,如果服务和 eureka 服务器部署在同一台机器,请必须填写,否则会计算出 127.0.0.1
                           instance_host=server_host,
                           instance_port=server_port,
                           # 调用其他服务时的高可用策略,可选,默认为随机
                           ha_strategy=eureka_client.HA_STRATEGY_RANDOM)
        
    setEureka()
    
    
    @app.route('/')
    def hello_world():
        return 'Hello World!'
    
    
    if __name__ == '__main__':
        app.run(debug=True, threaded=True, port=5000, host="0.0.0.0")

    效果如下:

     按照eureka协议一般的开发语言开发的服务都可以注册到服务

  • 相关阅读:
    矩阵
    向量
    Matlab中的基本数据类型介绍
    静态代码块在何时调用
    保留上次访问网站的时间的几种方法
    用ServletContext做一个简单的聊天室
    ServletContext结合Servlet接口中的init()方法和destroy()方法的运用----网站计数器
    用ServletContext读取.properties文件
    用类加载器的5种方式读取.properties文件
    如何用cookie保存用户的登录的密码和用户名
  • 原文地址:https://www.cnblogs.com/zlel/p/11645836.html
Copyright © 2011-2022 走看看