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

Expose Executor as a Service as First class citizen in Documentation. #4502

Closed
JoanFM opened this issue Mar 17, 2022 · 8 comments · Fixed by #4597
Closed

Expose Executor as a Service as First class citizen in Documentation. #4502

JoanFM opened this issue Mar 17, 2022 · 8 comments · Fixed by #4597
Assignees

Comments

@JoanFM
Copy link
Member

JoanFM commented Mar 17, 2022

Describe the feature
Right now we have added Executor.serve method and we are seeing increasing interest in serving a single Executor as an isolated service.

After Head is removed as a result of the service mesh introduction, this will be even more performant, and gateway remains a useful entity in the picture.

I think code-wise perspective, I belive the only needed thing is to add a method Executor.to_k8s_yaml() and Executor.to_docker_compose_yaml that under the hood create a simple Flow and call its to_* method.

The main work would be in documentation and storytelling about exposing this as a first-class option of Jina.

@JoanFM
Copy link
Member Author

JoanFM commented Mar 17, 2022

Blocked by #4503

@JohannesMessner
Copy link
Contributor

Seems like a good thing to do.
I see some conceptual overlap with external Executors, and we probably need to be careful to make the distinction clear.

@JoanFM
Copy link
Member Author

JoanFM commented Mar 17, 2022

Seems like a good thing to do. I see some conceptual overlap with external Executors, and we probably need to be careful to make the distinction clear.

Good point, did not think about it, but it would be the biggest blocker

@jacobowitz
Copy link
Contributor

Let's restrict this for now to gRPC? Otherwise it will be more complicatd to integrate as external Executor

@JohannesMessner
Copy link
Contributor

Let's restrict this for now to gRPC? Otherwise it will be more complicatd to integrate as external Executor

Makes sense. Remind me, did we land on served executors being the only recommended way of doing external Execs from now on?

@jacobowitz
Copy link
Contributor

I would say that serve is the recommended way. But this includes to_k8s_yaml/to_docker_compose methods @JoanFM was mentioning.
Also we may want to think about exposing serve as part of CLI? I think sth like jina executor serve or so makes sense? I dont to force people to run python code

@JohannesMessner
Copy link
Contributor

JohannesMessner commented Mar 29, 2022

Also we may want to think about exposing serve as part of CLI?

Agree

@jacobowitz
Copy link
Contributor

We somehow should be able to deploy this with and without a gateway?

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

Successfully merging a pull request may close this issue.

3 participants