NATS Blog

Welcome to the NATS Blog! We have content from NATS Maintainers, end-users, and community contributors. We always appreciate outside contributions so if you would like to contribute a blog post, see our Contributor's Guide for more information.

Typescript NATS

ALBERTO RICART — August 9, 2018

Ode to Node-NATS: Ts-NATS - the TypeScript native NATS for Node. On December 23, 2011, Derek Collison gave us node-nats (Node.js v0.06). Node-nats is the second oldest client for NATS; only ruby-nats is older (10/30/2010). Node-nats is arguably one of the most popular NATS clients sporting over 64K monthly downloads. Over the last year or so, we have been getting requests here and there to promisify the library. While on the surface these seem like syntactic sugar, changing node-nats to offer Promise and Async support requires a bit more. Read more...

NATS Operator: Integrating Kubernetes ServiceAccounts for operated NATS clusters

WALDEMAR QUEVEDO — July 19, 2018

The latest release of the NATS Operator has alpha support to configure the authorization rules for an operated NATS cluster, via CustomResourceDefinitions , by using Kubernetes ServiceAccounts present in a namespace. In this blog post, we will explain how to use this feature along with details of the internals on how it currently works. Getting started In order to use the ServiceAccounts mapped accounts for an operated NATS cluster, you will need at minimum, a Kubernetes v1. Read more...

Java Client Hits 2.0!

STEPHEN ASBURY — July 17, 2018

We Are Listening We know the NATS Java library hasn’t seen a lot of love in the last year, but we are reinvigorated and the library has reached a new milestone. We wanted to let the community know we have taken your feedback from GitHub: Optional reconnect behavior on connect Excessive thread usage Disabling the reconnect buffer Notification on cluster discovery Improve robustness Improve robustness Better documentation as well as comments in face to face meetings, and on Slack, to build a new compact library with: Read more...

Simplicity Lies at the Heart of NATS

ROBIN MORERO — July 3, 2018

From Kubecon in Copenhagen to Pagero in Gothenburg. The NATS team was delighted to get an invitation from Pagero to attend two of the Gothenburg Tech Radar MeetUps in Sweden following Kubecon + CloudNativeCon EU 2018. NATS Engineer, Waldemar Quevedo did double duty at the events. Check out Robin Morero’s blog post about Wally’s visit and why they have been watching NATS. https://blog.pagero.com/articles/tech-talk/simplicity-lies-at-the-heart-of-nats/ Read more...

KubeCon + CloudNativeCon EU 2018 Recap - Biggest KubeCon yet, we were thrilled to be there!

GINGER COLLISON — May 11, 2018

KubeCon + CloudNativeCon EU 2018 in Copenhagen, Denmark has come and gone and we are getting back to work but first, a recap! This was our first conference for NATS under the stewardship of Synadia Communications, Inc. and the Cloud Native Computing Foundation (CNCF), and for this Synadian, my first technology conference ever. With a sold out conference of over 4,300+ attendees, this event buzzed with energy and excitement each and every day. Read more...

Guest Post: Fission - Serverless Functions and Workflows with Kubernetes and NATS

SOAM VASANI — October 20, 2017

Fission is a framework for “Serverless” Functions or Functions-as-a-Service on Kubernetes. Fission allows you to take a function and easily turn it into a usable service on Kubernetes, without much of a learning curve. Fission supports a variety of source languages and triggers, which are bindings of events to functions. Fission integrates with the NATS Streaming message queue. Users can map a queue topic to a function using a Fission Message Queue Trigger. Read more...

Guest Post: NATS on Autopilot - How the team at Joyent simplify complex applications

WYATT PREUL — September 29, 2017

Here on the product team at Joyent , we enjoy making sophisticated applications easy to deploy and manage. For us, that means containerizing components, automating them with ContainerPilot and the Autopilot Pattern . This typically means that we are containerizing the components that comprise our solutions with Docker and are using a service discovery catalog like Consul. Up until this year, we didn’t have a working solution to solve the message queuing problem. Read more...

Webinar: Serverless for the Cloud Native Era: How Fission uses NATS and Kubernetes

BRIAN FLANNERY — September 29, 2017

Speaker: Soam Vasani When: Wed, Oct 25, 2017 10:00 AM - 11:00 AM San Francisco / 1:00PM - 2:00PM New York Fission is a framework for serverless functions on Kubernetes, allowing users to deploy functions instantly with one command. There are no containers to build, and no Docker registries to manage. This emphasis on simplicity also requires a simple and scalable communication layer. This technical webinar will cover how the Fission platform works, and where NATS and Kubernetes fit in. Read more...

Guest Post: Use cases for persistent logs with NATS Streaming

BYRON RUTH — September 20, 2017

What are persistent logs? In this context, a log is an ordered sequence of messages that you can append to, but cannot go back and change existing messages. The persistent bit simply means that they are remembered and potentially durable (on disk) beyond server restarts. What is NATS Streaming? NATS Streaming is a lightweight, streaming platform built on top of NATS that provides an API for persistent logs. A few of its features include: Read more...

Guest Post: Alchemy's twist on the agile scrum board, using NATS.

JOSE MANUEL PITA — August 28, 2017

Alchemy is an in house trading platform built for Standard Bank South Africa’s structured solutions desk. The system was introduced to give the desk the ability to book exotic trade types in as short a time period as possible. Exotic trades as opposed to vanilla trades are complex in nature, the quantitative models in integration of those models usually take months to glue together… enter Alchemy. An agile software development approach fits the scenario best and allows incremental development of products or trades into alchemy. Read more...