Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FATE 消息队列 #5728

Open
FancyXun opened this issue Oct 25, 2024 · 6 comments
Open

FATE 消息队列 #5728

FancyXun opened this issue Oct 25, 2024 · 6 comments

Comments

@FancyXun
Copy link

FancyXun commented Oct 25, 2024

大家好,请教FATE的算法的几个通信问题。

1.目前使用k8s部署了eggroll + osx模式。我理解osx是一个消息队列组件吧?多方之间的所有的通信都要走osx这个组件?

2.基于1,是否支持对接其他的消息队列组件,比如Kafka,rabbitmq之类的,适配的话需要改动什么,对代码有修改吗?如果有,具体是改哪些组件呢?

3.之前是用spark+pulsar的部署模式,但是似乎2.0的spark的bug较多,但我也理解是不是也支持eggroll + pulsar这种模式?

@FancyXun
Copy link
Author

大家好,请教FATE的算法的几个通信问题。

1.目前使用k8s部署了eggroll + osx模式。我理解osx是一个消息队列组件吧?多方之间的所有的通信都要走osx这个组件?

2.基于1,是否支持对接其他的消息队列组件,比如Kafka,rabbitmq之类的,适配的话需要改动什么,对代码有修改吗?如果有,具体是改哪些组件呢?

3.之前是用spark+pulsar的部署模式,但是似乎2.0的spark的bug较多,但我也理解是不是也支持eggroll + pulsar这种模式?

以上的提问主要是考虑到有些场景,多方之间只能通过mq进行通信,我看了写fate的架构图,如果osx是个消息队列组件,似乎也是通过消息队列组件来作为多方的通信协议

@dylan-fan
Copy link
Collaborator

osx既支持流式模式,也支持队列模式。
eggroll可以和队列组合。
spark的bug 我们应该在FATE 2.1以上版本修复了,建议用最新版本FATE。
如果想使用rabbitmq之类,可以看fate python部分代码,进行参考修改。比如https://github.com/FederatedAI/FATE/tree/master/python/fate/arch/federation/backends/rabbitmq
https://github.com/FederatedAI/FATE/tree/master/python/fate/arch/federation/backends/osx

@FancyXun
Copy link
Author

osx既支持流式模式,也支持队列模式。 eggroll可以和队列组合。 spark的bug 我们应该在FATE 2.1以上版本修复了,建议用最新版本FATE。 如果想使用rabbitmq之类,可以看fate python部分代码,进行参考修改。比如https://github.com/FederatedAI/FATE/tree/master/python/fate/arch/federation/backends/rabbitmq https://github.com/FederatedAI/FATE/tree/master/python/fate/arch/federation/backends/osx

好的,感谢。我们的目标主要是想使用外部的消息队列。所以如果我想FATE使用外部的消息队列(kafka或者rabbitmq)进行通信,您指的修改是对osx这个组件进行修改让他适配外部的消息队列,还是说对您发的两个链接进行修改。我看您发的链接里面有一些和rabbitmq的代码,是fate原生就支持吗?

@dylan-fan
Copy link
Collaborator

你可以参考fate里面 rabbitmq实现

@FancyXun
Copy link
Author

好的,再请教下两个问题

  1. 如果还是使用osx作为消息组件,他们之间的通信我理解是http协议吗
  2. 所有fate的算法都是走Osx这个组件吗?
    我的诉求就是尽量少的修改组件,比如我希望每个算法之间进行通信时,如果他们之间采用的http协议,我想要在header头里面加一些自定义参数。如果所有的算法都走osx这个组件,我是否在osx这个组件里面统一修改就可以了。 谢谢

@dylan-fan
Copy link
Collaborator

所有算法都是走同样的组件,比如osx。osx协议走的是grpc协议。

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants