SpringCloud 整合 Python 服务

摘要:
SpringCloud提供了一个组件Sidecar,可以将非Java的微服务整合到SpringCloud中,本质就是建立一个Sidecar工程作为代理,Sidecar工程注册到Eureka服务,同时Sidecar工程调用非Java微服务的Http接口。言归正传,如果是分布式的话,思路也很简单,以Python为例,为每一个Python微服务副本都启动一个Sidecar应用即可。非Java微服务有一个条件,必须给Sidecar提供一个用于检查其健康状态的接口,这个接口需要返回{“status”:“UP”}固定返回值,配置完毕后,Python微服务就可以像JavaEureka客户端一样调用。

SpringCloud提供了一个组件Sidecar,可以将非Java的微服务整合到SpringCloud中,本质就是建立一个Sidecar工程作为代理,Sidecar工程注册到Eureka服务,同时Sidecar工程调用非Java微服务的Http接口。

吐槽:看了很多博客,都是举得一个Python微服务的例子,如果Python只有一个服务,而不是分布式的服务,直接通过Rest调用就完了,何必还要用Sidecar代理一下,绕了一圈,SpringCloud的初衷就是为了治理分布式应用,实际上是用不上SpringCloud的。

言归正传,如果是分布式的话,思路也很简单,以Python为例,为每一个Python微服务副本都启动一个Sidecar应用即可。

非Java微服务有一个条件,必须给Sidecar提供一个用于检查其健康状态的接口,这个接口需要返回{“status”:“UP”}固定返回值,配置完毕后,Python微服务就可以像Java Eureka客户端一样调用。

对于Python调用Java微服务如果需要考虑分布式的调用,可以看看Python有没有相关的包,可以实现Http负载均衡调用。

免责声明:文章转载自《SpringCloud 整合 Python 服务》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Mongo导出mongoexport和导入mongoimport介绍你好,C++(5)如何输出数据到屏幕、从屏幕输入数据与读写文件?下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

Python动态生成Bean类,并且带toString,equals,hashcode方法

import com.wyz.bean.BaseVo; import net.sf.cglib.beans.BeanGenerator; import org.junit.Test; import java.lang.reflect.Method; public class MyTest1 { @Test public void te...

Python字符编码

字符编码 计算机只认识数字,我们平时在使用计算机时,用的都是人类能读懂的字符(用高级语言编程的结果也无非是在文件内写了一堆字符),如何能让计算机读懂人类的字符?必须经过一个过程: 字符--------(翻译过程)------->数字 这个过程实际就是一个字符如何对应一个特定数字的标准,这个标准称之为字符编码 一、存取文件的原理(nodepad++,...

python遍历文件夹下的文件

python遍历文件夹下的文件 在读文件的时候往往需要遍历文件夹,python的os.path包含了很多文件、文件夹操作的方法。下面列出: os.path.abspath(path) #返回绝对路径 os.path.basename(path) #返回文件名 os.path.commonprefix(list) #返回多个路径中,所有path共有的最长的路...

python多进程总结

概述 由于python中全局解释器锁(GIL)的存在,所以python多线程并不能有效利用CPU多核的性能(相当于单核并发)实现多线程多核并行,所以在对CPU密集型的程序时处理效率较低,反而对IO密集型的才有效率的大幅度提高。 如果想要充分地使用多核CPU的资源,需要使用多进程,python中提供multiprocessing实现。 CPU密集型:主要特点...

Python攻城狮教你用Pythin开机和关机,关机只需一条执行命令

本文参考原文-http://bjbsair.com/2020-03-25/tech-info/6260.html 本文目标 远程开机原理 Python 远程开机代码实现 Python 关机说明 Python 开机 关于用程序来开机,是怎么做到的呢?这就是 WOL 技术 Wake-On-Lan, 利用计算机在关机或休眠状态时,网卡及主板部分仍然有微弱的供...

Python中读取到16进制数如何转成有符号数值

场景:用Python模拟设备做 Modbus TCP 协议时,读取到的寄存器值是S16(有符号16进制数),如何能得到正确的负数值呢? 代码如下: def get_s16(val): if val < 0x8000: return val else: return (val - 0x10000)...