Mahmoud Khaled Abd-Ellah

13 papers Journal 8Unranked 5
YearRankTypeTitle / Venue / Authors
2026 J jnl
Neural Comput. Appl.
Mahmoud Khaled Abd-Ellah, Asmaa Mohamed, Gerges M. Salama
2024 J jnl
Ecol. Informatics
Mustafa El-Rawy, Sally Y. Sayed, Mohamed A. E. AbdelRahman, Atef Makhloof, Nassir Al-Arifi, Mahmoud Khaled Abd-Ellah
2024 J jnl
Neural Comput. Appl.
Gerges M. Salama, Asmaa Mohamed, Mahmoud Khaled Abd-Ellah
2024 J jnl
Soft Comput.
Gerges M. Salama, Asmaa Mohamed, Mahmoud Khaled Abd-Ellah
2023 J jnl
Comput. Electr. Eng.
Ali Ismail Awad, Mostafa Shokry, Ashraf A. M. Khalaf, Mahmoud Khaled Abd-Ellah
2023 J jnl
J. Ambient Intell. Humaniz. Comput.
Mahmoud Khaled Abd-Ellah, Ashraf A. M. Khalaf, Reda R. Gharieb, Dina A. Hassanin
2022 conf
AISI
Mostafa Shokry, Ali Ismail Awad, Mahmoud Khaled Abd-Ellah, Ashraf A. M. Khalaf
2022 J jnl
Future Gener. Comput. Syst.
Mostafa Shokry, Ali Ismail Awad, Mahmoud Khaled Abd-Ellah, Ashraf A. M. Khalaf
2019 conf
ICM
Mahmoud Khaled Abd-Ellah, Ali Ismail Awad, Hesham F. A. Hamed, Ashraf A. M. Khalaf
2019 conf
ICIAR (2)
Mahmoud Khaled Abd-Ellah, Ashraf A. M. Khalaf, Ali Ismail Awad, Hesham F. A. Hamed
2018 J jnl
EURASIP J. Image Video Process.
Mahmoud Khaled Abd-Ellah, Ali Ismail Awad, Ashraf A. M. Khalaf, Hesham F. A. Hamed
2016 conf
WIS
Mahmoud Khaled Abd-Ellah, Ali Ismail Awad, Ashraf A. M. Khalaf, Hesham F. A. Hamed
2016 conf
ICM
Mahmoud Khaled Abd-Ellah, Ali Ismail Awad, Ashraf A. M. Khalaf, Hesham F. A. Hamed
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()