python es解决第一次链接激活问题

fastapi 配置 es连接池

conifg
pip install fastapi elasticsearch[async]

code

from fastapi import FastAPI
from elasticsearch import Elasticsearch
from elasticsearch.helpers import async_client
 
app = FastAPI()
 
@app.on_event("startup")
async def startup_event():
    # 配置Elasticsearch连接
    es = Elasticsearch(
        hosts=[{"host": "localhost", "port": 9200}],
        # 使用自带的AsyncElasticsearch客户端
        http_async_client=async_client,
        # 指定连接池配置
        connection_class=async_client.AiohttpConnection,
        # 其他配置...
    )
    # 将客户端实例设置为全局变量
    app.state.es_client = es
 
@app.get("/search")
async def search(query: str):
    es_client = app.state.es_client
    # 使用异步方法执行搜索
    response = await es_client.search(index="your_index", query={"match": {"field": query}})
    return response

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值