initial commit
This commit is contained in:
@@ -0,0 +1,68 @@
|
||||
import os
|
||||
import sys
|
||||
import signal
|
||||
import logging
|
||||
from pathlib import Path
|
||||
from dotenv import load_dotenv
|
||||
|
||||
# Add the python directory to sys.path
|
||||
current_dir = Path(__file__).parent
|
||||
sys.path.insert(0, str(current_dir))
|
||||
|
||||
from application import Application
|
||||
from solver import Solver
|
||||
from kv import Cache
|
||||
|
||||
# Load environment variables
|
||||
load_dotenv()
|
||||
|
||||
# Configure logging
|
||||
logging.basicConfig(
|
||||
level=logging.INFO,
|
||||
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s'
|
||||
)
|
||||
logger = logging.getLogger(__name__)
|
||||
|
||||
|
||||
def main():
|
||||
logger.info("Logger initialized")
|
||||
|
||||
# Get Redis address from environment
|
||||
redis_addr = os.getenv("REDIS_ADDR", "localhost:6379")
|
||||
|
||||
# Initialize cache
|
||||
try:
|
||||
cache = Cache(redis_addr)
|
||||
logger.info("Cache initialized")
|
||||
except Exception as e:
|
||||
logger.error(f"Failed to initialize cache: {e}")
|
||||
raise
|
||||
|
||||
# Initialize WASM solver
|
||||
try:
|
||||
solver = Solver()
|
||||
logger.info("WASM solver initialized")
|
||||
except Exception as e:
|
||||
logger.error(f"Failed to initialize WASM solver: {e}")
|
||||
raise
|
||||
|
||||
# Create application
|
||||
app = Application(solver, cache)
|
||||
logger.info("Application initialized")
|
||||
|
||||
def signal_handler(sig, frame):
|
||||
logger.info("Received signal, shutting down...")
|
||||
app.close()
|
||||
logger.info("Application stopped")
|
||||
exit(0)
|
||||
|
||||
# Handle SIGINT and SIGTERM
|
||||
signal.signal(signal.SIGINT, signal_handler)
|
||||
signal.signal(signal.SIGTERM, signal_handler)
|
||||
|
||||
logger.info("Application started on port 8080")
|
||||
app.run(host="0.0.0.0", port=8080, debug=False)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user