AOSSIE-Org / AOSSIE-Org/Devr.AI
ENHANCEMENT:Weaviate client connects and disconnects causing latency issues
- 主要語言
- Python
- 星號
- 102
- 分支
- 137
- PR 合併指標
- 30 天內沒有已合併 PR
描述
### Is there an existing issue for this?
- [x] I have searched the existing issues
### What happened?
## 📌 Issue Overview
The Weaviate backend client repeatedly connects and disconnects on every database operation instead of reusing a persistent connection, causing unnecessary performance overhead.
## 🔍 Root Cause
- `get_weaviate_client()` calls `await client.connect()` on entry and `await client.close()` on exit
- All Weaviate operations use `async with get_weaviate_client()`, triggering a full connect/disconnect cycle per request
- This occurs despite having a global client instance
## 🚨 Actual Behavior
- A new connection is established for **every** operation
- The connection is closed immediately after use
- No connection pooling or reuse
- Adds ~10–50ms latency per query
- Wastes resources and becomes a scalability bottleneck under load
```python
@asynccontextmanager
async def get_weaviate_client():
client = get_client()
try:
await client.connect() # connects every time
yield client
finally:
await client.close() # disconnects every time
```
## Record
- [x] I agree to follow this project's Code of Conduct
- [x] I want to work on this issue
貢獻指南
這個儲存庫沒有索引到貢獻指南
評估
這個 Issue 還沒有評估資料。