From d582c17d380dd0d0651c25dd8696b0fba26df1e4 Mon Sep 17 00:00:00 2001 From: gifrerenom <lluis.gifre@cttc.es> Date: Mon, 17 Mar 2025 00:08:37 +0000 Subject: [PATCH] NBI component: - Disabled multi-worker as synchronization through Kafka seems not to work, to be corrected - Disabled heartbeat thread --- src/nbi/Dockerfile | 3 ++- src/nbi/service/NbiApplication.py | 10 +++++----- src/nbi/service/health_probes/Namespaces.py | 2 +- 3 files changed, 8 insertions(+), 7 deletions(-) diff --git a/src/nbi/Dockerfile b/src/nbi/Dockerfile index 6bca1c81a..ac54fc851 100644 --- a/src/nbi/Dockerfile +++ b/src/nbi/Dockerfile @@ -89,4 +89,5 @@ RUN mkdir -p /var/teraflow/tests/tools COPY src/tests/tools/mock_osm/. tests/tools/mock_osm/ # Start the service -ENTRYPOINT ["gunicorn", "--workers", "4", "--worker-class", "eventlet", "--bind", "0.0.0.0:8080", "nbi.service.app:app"] +# NOTE: Configured single worker to prevent issues with multi-worker synchronization. To be invetsigated. +ENTRYPOINT ["gunicorn", "--workers", "1", "--worker-class", "eventlet", "--bind", "0.0.0.0:8080", "nbi.service.app:app"] diff --git a/src/nbi/service/NbiApplication.py b/src/nbi/service/NbiApplication.py index dee09462c..16c1a6a1a 100644 --- a/src/nbi/service/NbiApplication.py +++ b/src/nbi/service/NbiApplication.py @@ -44,13 +44,13 @@ class NbiApplication: # Configure KafkaManager to enable SocketIO Servers running in different # gunicorn workers to self-coordinate and share sessions. - self._sio_client_manager = socketio.KafkaManager( - url='kafka://{:s}'.format(KafkaConfig.get_kafka_address()), - channel=KafkaTopic.NBI_SOCKETIO_WORKERS.value - ) + #self._sio_client_manager = socketio.KafkaManager( + # url='kafka://{:s}'.format(KafkaConfig.get_kafka_address()), + # channel=KafkaTopic.NBI_SOCKETIO_WORKERS.value + #) self._sio = SocketIO( self._app, cors_allowed_origins='*', async_mode='eventlet', - client_manager=self._sio_client_manager, + #client_manager=self._sio_client_manager, logger=True, engineio_logger=True ) diff --git a/src/nbi/service/health_probes/Namespaces.py b/src/nbi/service/health_probes/Namespaces.py index 8a3f9323c..5f6a5205f 100644 --- a/src/nbi/service/health_probes/Namespaces.py +++ b/src/nbi/service/health_probes/Namespaces.py @@ -24,7 +24,7 @@ class HeartbeatServerNamespace(Namespace): def __init__(self): super().__init__(namespace=SIO_NAMESPACE) self._thread = HeartbeatThread(self) - self._thread.start() + #self._thread.start() def stop_thread(self) -> None: self._thread.stop() -- GitLab