Honda Abandons Robotaxi Venture with GM and Cruise Amid Shift in Autonomous Vehicle Strategy
Honda pulls out of robotaxi joint venture with GM and Cruise, citing changes in GM's autonomous vehicle plans and Cruise's commercial ambitions.
Max Carter
As cloud-native applications continue to scale, the need for efficient communication between microservices becomes increasingly important. Traditional API calls are no longer sufficient, and message-oriented architectures have become necessary to ensure seamless communication between services. This is where NATS, the Neural Autonomic Transport System, comes in – an open-source messaging tool designed to work in modern, cloud-native environments.
NATS, part of the Cloud Native Computing Foundation's incubation program, builds on lessons from biology to create a new form of messaging middleware. Written in Go, like Kubernetes, it offers a common messaging server that can be run anywhere, and a set of clients for most common development platforms. Its architecture is particularly suited for edge-to-core messaging applications, making it an ideal solution for cloud-native applications.
One of the key advantages of NATS is its ability to handle the complexities of modern networking architectures. Unlike traditional messaging architectures that require a 1:1 connection pattern, NATS uses a M:N connectivity model, a superset of 1:1. This approach allows developers to work without the complexities of modern networking architectures and reduces the need for load balancers and proxies. Additionally, NATS offers its own security tools to avoid the overhead of added services.
The core of NATS' operation is its "subject-based messaging" system, a variant of the familiar publish-and-subscribe model. This system allows clients to subscribe to specific subjects, and the server tracks which clients are subscribed to which subjects. If there are no subscriptions to a message's subject, it's dropped, saving on resources. This approach enables efficient communication between microservices, making it ideal for cloud-native applications.
Deploying NATS servers is relatively straightforward, with support for most common OSes. Developers can start small, with the cheapest possible host VM, and scale up as necessary. NATS' minimal hardware requirements make it an economical choice that balances between server and networking performance. Installation options include a binary, Docker container, or cloning the GitHub repository and building a custom install using Go.
In addition to its core messaging capabilities, NATS includes a message queue service called JetStream. This provides a shared history across all NATS servers in a cluster, allowing clients to retrieve messages at any time. This is particularly useful in scenarios where clients need to synchronize events with a server, even if they go offline for any time.
For .NET developers, NATS offers an official .NET client, available from NuGet. This client supports both the older .NET Framework via .NET Standard as well as the modern .NET 6.0 and later. Developers can use the NATS.Net package to create a NATS client object, which allows them to subscribe to the NATS message stream and capture data as it's sent out. The client can also be used to publish messages, making it a versatile tool for .NET developers.
Aspire, a distributed application framework, has also added support for NATS. This allows developers to manage NATS servers as a resource, using a builder statement to create an instance in their application. Aspire provides its own packaging for the NATS.Net client, using its own dependency injections to add configurations where necessary. This integration enables .NET developers to focus on the essential logic of their application, while Aspire handles the deployment and configuration of NATS servers and clients.
In conclusion, NATS is a powerful tool for enabling efficient communication between microservices in cloud-native applications. Its support for .NET distributed applications makes it an attractive solution for developers building scalable, cloud-native apps. As the need for efficient communication between microservices continues to grow, NATS is well-positioned to become a key component of modern cloud-native architectures.
Honda pulls out of robotaxi joint venture with GM and Cruise, citing changes in GM's autonomous vehicle plans and Cruise's commercial ambitions.
South Korea temporarily restricts DeepSeek's app downloads amid data privacy concerns, citing issues with third-party services and privacy policies.
Epic Games has launched its digital asset marketplace, Fab, a unified platform combining offerings from multiple marketplaces, offering an 88% revenue share for creators and paving the way for a potential metaverse.
Copyright © 2024 Starfolk. All rights reserved.