Vehicle Signal Processing Microservices for In-Operation Updates
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing vehicle signal processing devices cannot perform updates of applications or microservices while the vehicle is in operation due to safety concerns, particularly in ADAS or autonomous driving scenarios.
Innovation Solution
A signal processing device and vehicle display apparatus that includes a processor capable of executing multiple microservices, allowing for the duplication and updating of microservices during operation, with load distribution and control mechanisms to ensure seamless transitions and efficient data processing.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If application updates are performed while the vehicle is driving, then system adaptability and productivity are improved, but safety and system stability deteriorate
Solution Approach 1:
The application is divided into multiple independent microservices that can be updated individually. Each microservice runs in isolation, allowing updates to be performed on specific services without affecting the entire application system, thus enabling updates during operation while maintaining safety of critical functions.
Solution Approach 2:
A duplicate microservice is created and updated in advance before the original microservice is terminated. The duplicate service is prepared with updated code and configurations, then validated and tested before taking over, ensuring that updates are ready and safe before deployment.
Solution Approach 3:
A load balancer or service router acts as an intermediary between clients and microservices. During transition, the intermediary gradually redirects traffic from the original microservice to the duplicate microservice, allowing smooth handover while maintaining service availability and enabling rollback if issues occur.
2Productivity
If microservices are updated during operation, then productivity is improved, but device complexity increases
Solution Approach 1:
The system implements universal update mechanisms that work across all microservices through standardized interfaces and protocols. The load balancing, health checking, and traffic routing infrastructure serves multiple purposes including updates, failover, and scaling, reducing the need for separate complex systems for each function.
Solution Approach 2:
Instead of modifying running microservices in place, the system creates complete duplicate copies of microservices with updated code. These duplicates are fully functional and can be tested independently before replacing the originals, simplifying the update process while managing complexity through replication rather than in-place modification.
3Reliability
If load distribution is implemented between original and duplicate microservices, then update safety is improved, but processing time and system complexity increase
Solution Approach 1:
The system implements periodic health checks and performance monitoring of both original and duplicate microservices. Traffic distribution is adjusted in periodic intervals based on service status, allowing gradual transition without requiring continuous complex coordination, thus balancing safety with processing efficiency.
Solution Approach 2:
The load distribution starts with a small portion of traffic routed to the duplicate microservice and gradually increases. Rather than immediately distributing equal loads, the system uses incremental partial action to validate the duplicate service before full transition, reducing overall processing time while maintaining safety through staged verification.
Data Source
Figure 1
Figure 2
Figure 3A
AI summary
A signal processing device and a vehicle display apparatus including the same according to an embodiment of the present disclosure include: a processor configured to execute a first application, wherein the processor is configured to execute each of a plurality of microservices to execute the first application, to update a second microservice corresponding to a duplication of the first microservice to update the first microservice during an operation of the first microservice among the plurality of microservices, to distribute a load to each of the first microservice and the second microservice after completion of the update of the second microservice and control the operation of the first microservice and the second microservice.