Kangzhou Wang

11 papers Journal 8Unranked 3
YearRankTypeTitle / Venue / Authors
2025 J jnl
Int. J. Prod. Res.
Dong-dong Wang, Kangzhou Wang, Zhifeng Qian, Feng Jiang
2025 J jnl
Int. J. Prod. Res.
XiaoShuai Peng, Shiyi Wang, Kangzhou Wang
2025 J jnl
Kybernetes
XiaoShuai Peng, Shoufeng Ji, Lele Zhang, Russell George Thompson, Kangzhou Wang
2024 J jnl
Int. J. Prod. Res.
Kangzhou Wang, Hui Jing, Dong-dong Wang, Feng Jiang
2024 J jnl
J. Oper. Res. Soc.
Biao Yuan, Yuwei Lu, Kangzhou Wang, XiaoShuai Peng
2022 J jnl
Int. J. Prod. Res.
Yuwei Lu, Kangzhou Wang, Biao Yuan
2020 J jnl
J. Oper. Res. Soc.
Kangzhou Wang, Biao Yuan, Mengting Zhao, Yuwei Lu
2017 J jnl
J. Oper. Res. Soc.
Kangzhou Wang, Shulin Lan, Yingxue Zhao
2013 conf
CASE
Kangzhou Wang, Zhibin Jiang, Guowei Li, Jin Cao
2013 conf
MIM
Kangzhou Wang, Zhibin Jiang, Wenming Xie
2010 conf
SOLI
Kangzhou Wang, Na Li, Zhibin Jiang
redb/settings/elasticsearch.py
← Index redb/settings/elasticsearch.py python
import logging
import os

from elasticsearch import Elasticsearch
from dotenv import load_dotenv

load_dotenv()

# Elasticsearch configuration
ELASTIC_ENDPOINT = os.getenv("ELASTIC_HOST")
ELASTIC_ENFORCE_SSL = os.getenv("ELASTIC_ENFORCE_SSL", False) == "True"
ELASTIC_USER = os.getenv("ELASTIC_USER")
ELASTIC_PASSWORD = os.getenv("ELASTIC_PASSWORD")
ELASTIC_BINARIES_COLLECTION = os.getenv("ELASTIC_BINARIES_COLLECTION", "test_db")

# Cached client instance
_elasticsearch_client = None

def get_elasticsearch_client():
    """Get Elasticsearch client with lazy initialization and caching"""
    global _elasticsearch_client
    
    if _elasticsearch_client is None:
        if not ELASTIC_ENDPOINT:
            raise ValueError("ELASTIC_HOST environment variable is required for Elasticsearch connection")
            
        _elasticsearch_client = Elasticsearch(
            ELASTIC_ENDPOINT,
            verify_certs=ELASTIC_ENFORCE_SSL,
            basic_auth=(ELASTIC_USER, ELASTIC_PASSWORD),
            maxsize=20,
            retry_on_timeout=True,
            timeout=30,
        )
    
    return _elasticsearch_client

def create_elasticsearch_client():
    """Create a new Elasticsearch client connection (legacy function)"""
    return get_elasticsearch_client()