[PR #542] [MERGED] refact: bypass message queue and control plane from apiserver #539

Closed
opened 2026-02-16 02:15:33 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/run-llama/llama_deploy/pull/542
Author: @masci
Created: 6/18/2025
Status: Merged
Merged: 6/19/2025
Merged by: @masci

Base: mainHead: massi/refact


📝 Commits (10+)

📊 Changes

21 files changed (+1767 additions, -1982 deletions)

View changed files

📝 e2e_tests/apiserver/deployments/deployment_env_git.yml (+1 -1)
📝 e2e_tests/apiserver/deployments/src/workflow.py (+3 -9)
📝 e2e_tests/apiserver/deployments/src/workflow_env.py (+3 -8)
📝 e2e_tests/apiserver/deployments/src/workflow_hitl.py (+5 -8)
📝 e2e_tests/apiserver/deployments/src/workflow_reload.py (+2 -1)
📝 e2e_tests/apiserver/rc/src/workflow.py (+2 -8)
📝 e2e_tests/apiserver/test_env_vars_git.py (+9 -8)
📝 e2e_tests/apiserver/test_env_vars_local.py (+8 -7)
📝 e2e_tests/apiserver/test_hitl.py (+3 -5)
📝 e2e_tests/apiserver/test_reload.py (+0 -3)
📝 e2e_tests/apiserver/test_streaming.py (+3 -5)
📝 e2e_tests/basic_hitl/test_run_client.py (+1 -1)
📝 e2e_tests/basic_hitl/workflow.py (+4 -7)
📝 llama_deploy/apiserver/deployment.py (+35 -177)
📝 llama_deploy/apiserver/routers/deployments.py (+51 -39)
📝 llama_deploy/client/models/apiserver.py (+12 -0)
📝 pyproject.toml (+2 -1)
📝 tests/apiserver/data/workflow/workflow_test.py (+3 -1)
📝 tests/apiserver/routers/test_deployments.py (+70 -47)
📝 tests/apiserver/test_deployment.py (+9 -158)

...and 1 more files

📄 Description

Given the current usage of LlamaDeploy through the apiserver in a single docker container, it doesn't make sense to carry on the massive overhead of sending messages back and forth the message queue.
With this PR:

  • message queue and the control plane are completely bypassed
  • apiserver Manager and Deployment don't start anymore the corresponding services for control plane, message queue server (when Simple was used) and each workflow listed in the deployment file
  • Workflow Context and handler instances are kept in-memory in the Deployment object

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/run-llama/llama_deploy/pull/542 **Author:** [@masci](https://github.com/masci) **Created:** 6/18/2025 **Status:** ✅ Merged **Merged:** 6/19/2025 **Merged by:** [@masci](https://github.com/masci) **Base:** `main` ← **Head:** `massi/refact` --- ### 📝 Commits (10+) - [`88e4111`](https://github.com/run-llama/llama_deploy/commit/88e411188c00e51f7530504a04b8e3ea4d08b740) depend on workflows explicitly - [`4b6c36b`](https://github.com/run-llama/llama_deploy/commit/4b6c36b260c9be2c66a31ae2e10593d154c55756) temp - [`687fbaf`](https://github.com/run-llama/llama_deploy/commit/687fbaf8d9b43f590368afc9e5f986c976b479ed) backup - [`68ed4b9`](https://github.com/run-llama/llama_deploy/commit/68ed4b9061b186473094465d25bea51eccef4ea9) revert - [`1954351`](https://github.com/run-llama/llama_deploy/commit/19543516287ef22e85dcac821e02b19a715518ae) backup - [`98a443e`](https://github.com/run-llama/llama_deploy/commit/98a443e4bba765ab7d9eb187ab429e6b74f547b6) fix test - [`4ea6934`](https://github.com/run-llama/llama_deploy/commit/4ea6934301e191b6786cb16102f09ff1a13cdc0a) e2e - [`12b4afc`](https://github.com/run-llama/llama_deploy/commit/12b4afc4b25ad9baec0b10fda619081ef3234eba) remove cp and mq - [`d0b3f5d`](https://github.com/run-llama/llama_deploy/commit/d0b3f5dc6ac2bf9cbe925628959a012e0c744eeb) remove sleeps - [`250d956`](https://github.com/run-llama/llama_deploy/commit/250d9565aa6165cb7952d61b174cdff4b0efcc31) Merge branch 'main' into massi/refact ### 📊 Changes **21 files changed** (+1767 additions, -1982 deletions) <details> <summary>View changed files</summary> 📝 `e2e_tests/apiserver/deployments/deployment_env_git.yml` (+1 -1) 📝 `e2e_tests/apiserver/deployments/src/workflow.py` (+3 -9) 📝 `e2e_tests/apiserver/deployments/src/workflow_env.py` (+3 -8) 📝 `e2e_tests/apiserver/deployments/src/workflow_hitl.py` (+5 -8) 📝 `e2e_tests/apiserver/deployments/src/workflow_reload.py` (+2 -1) 📝 `e2e_tests/apiserver/rc/src/workflow.py` (+2 -8) 📝 `e2e_tests/apiserver/test_env_vars_git.py` (+9 -8) 📝 `e2e_tests/apiserver/test_env_vars_local.py` (+8 -7) 📝 `e2e_tests/apiserver/test_hitl.py` (+3 -5) 📝 `e2e_tests/apiserver/test_reload.py` (+0 -3) 📝 `e2e_tests/apiserver/test_streaming.py` (+3 -5) 📝 `e2e_tests/basic_hitl/test_run_client.py` (+1 -1) 📝 `e2e_tests/basic_hitl/workflow.py` (+4 -7) 📝 `llama_deploy/apiserver/deployment.py` (+35 -177) 📝 `llama_deploy/apiserver/routers/deployments.py` (+51 -39) 📝 `llama_deploy/client/models/apiserver.py` (+12 -0) 📝 `pyproject.toml` (+2 -1) 📝 `tests/apiserver/data/workflow/workflow_test.py` (+3 -1) 📝 `tests/apiserver/routers/test_deployments.py` (+70 -47) 📝 `tests/apiserver/test_deployment.py` (+9 -158) _...and 1 more files_ </details> ### 📄 Description Given the current usage of LlamaDeploy through the apiserver in a single docker container, it doesn't make sense to carry on the massive overhead of sending messages back and forth the message queue. With this PR: - message queue and the control plane are completely bypassed - apiserver Manager and Deployment don't start anymore the corresponding services for control plane, message queue server (when Simple was used) and each workflow listed in the deployment file - Workflow Context and handler instances are kept in-memory in the Deployment object --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-16 02:15:33 -05:00
yindo closed this issue 2026-02-16 02:15:33 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: run-llama/llama_deploy#539