# -*- coding=utf8 -*-
import os
import json
from datetime import datetime
from elasticsearch import Elasticsearch, RequestsHttpConnection
from elasticsearch import Transport
from elasticsearch.exceptions import NotFoundError
class ES(object):
_index = ""
_type = ""
def __init__(self, hosts):
# 基于requests实例化es连接池
self.conn_pool = Transport(hosts=hosts, connection_class=RequestsHttpConnection).connection_pool
def get_conn(self):
"""
从连接池获取一个连接
"""
conn = self.conn_pool.get_connection()
return conn
def request(self, method, url, headers=None, params=None, body=None):
"""
想es服务器发送一个求情
@method 请求方式
@url 请求的绝对url 不包括域名
@headers 请求头信息
@params 请求的参数:dict
@body 请求体:json对象(headers默认Co
python实现elasticsearch链接池
最新推荐文章于 2024-07-27 18:55:40 发布
本文介绍了如何使用Python来创建和管理Elasticsearch的连接池,以提高查询效率和资源利用率。通过建立连接池,可以有效地复用ES连接,减少频繁建立和关闭连接带来的开销,提升整体性能。
摘要由CSDN通过智能技术生成