Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Prototype Service Architecture #14

Open
7 tasks
Ishaan-Datta opened this issue Aug 30, 2024 · 0 comments
Open
7 tasks

Prototype Service Architecture #14

Ishaan-Datta opened this issue Aug 30, 2024 · 0 comments
Milestone

Comments

@Ishaan-Datta
Copy link
Collaborator

  • Fix custom message box message type parsing from 2d array [ ][ ] to 1d array [ ] for x,y,w,h
  • Make an alernate version of our node architecture using services/client nodes instead of publisher/subscribers
  • Measure the latency and compare this with the publisher/subscriber architecture for different FPS limits
  • Determine whether stateless or stateful services are applicable and determine whether asynchronous or synchronous (request - response) communication is better (Stateless services are suitable for independent, one-time requests, while stateful services maintain a persistent connection for multiple requests.)
  • Include error handling with error codes and responses for various issues in operation
  • Reducing Message Queuing Delays: In ROS2, asynchronous communication patterns such as publishers and subscribers are commonly used for exchanging messages between nodes. However, in scenarios where real-time performance is crucial, message queuing delays can occur if messages are not processed promptly. By using synchronous communication patterns, such as service calls, you can ensure that messages are processed directly without queuing, thereby reducing the likelihood of delays in image processing.
  • Direct Request-Response Style Communication: Synchronous communication patterns, like service calls, enable direct request-response style interactions between nodes. In the context of image processing, this means that when a node requires image data or wants to perform a specific image processing task, it can send a direct request to another node and receive a response synchronously. This direct interaction minimizes the overhead associated with message queuing and ensures timely processing of image data.
@vangeliq vangeliq added this to the MVP milestone Sep 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants