강의

멘토링

커뮤니티

NEW
Programming

/

Web Development

Ultra-Low Latency Messaging and Distributed Systems with NATS by a Naver Developer

When you're doing backend development, at some point you face this dilemma. As services grow and traffic increases, there comes a moment when simple REST communication and CRUD structures feel limiting. I experienced the same problem in real-world work and went through many trials and errors between performance and structural complexity. The solution I chose in that process was NATS. Its simple configuration based on a single binary, ultra-low latency performance in microseconds, and the fact that it provides just the right amount of essential features for real work—from Pub/Sub to Queue Groups and JetStream—made it a very practical choice in actual service environments. This course is not about listing NATS features. Based on the problems I faced in real work, I explain with code and flow diagrams which situations led me to choose NATS, why, and how I designed the architecture. This is a course designed to help everyone—from those new to messaging systems, to backend developers preparing for jobs, to senior developers contemplating better architectures—understand distributed systems and grow to the next level.

(5.0) 2 reviews

78 learners

Level Basic

Course period Unlimited

  • Hong
실습 중심
실습 중심
자격증
자격증
시험
시험
백엔드이해하기
백엔드이해하기
토이프로젝트
토이프로젝트
JavaScript
JavaScript
Node.js
Node.js
Java
Java
Docker
Docker
TypeScript
TypeScript
실습 중심
실습 중심
자격증
자격증
시험
시험
백엔드이해하기
백엔드이해하기
토이프로젝트
토이프로젝트
JavaScript
JavaScript
Node.js
Node.js
Java
Java
Docker
Docker
TypeScript
TypeScript

What you will gain after the course

  • The ability to directly design and implement ultra-low latency messaging architecture based on NATS

  • The design capability to select and apply Pub/Sub, Request-Reply, and Queue Group appropriately based on the situation

  • Experience Building a Stable Distributed Messaging Architecture Considering Consumer Lag and Bottlenecks

  • Implementing Message Persistence and Production-Grade Event Processing Pipelines with JetStream

  • Backend capability to explain and design event-driven distributed systems beyond CRUD

Distributed messaging system for ultra-low latency in MSA environments!! A newly joined Naver developer explains.

  • The content below is from an actual conversation.

😄 Naver Developer : Does anyone know about NATS, the MSQ? I mainly use it, so I'm thinking of filming on that topic

😁 Kakao Developer (Interviewer) : Oh, I've used that before. I know that when you use it at the Core level, it can achieve performance down to the microsecond level.

😄 Naver Developer : Right. But realistically, we don't use it at the Core level, and mostly use it in JetStream form for HA. I think it's very useful for implementing and introducing a simple MSQ.

😄 Naver Developer : I ended up joining like this, and I think if we create something focused on performance aspects like this, it will be very helpful to those who see it.

😄 Hong : Oh my, such a distinguished guest in this humble place... I've only heard of NATS but haven't actually used it, so if you guide me, I'll work hard to create it.

😄 Naver Developer : LOL Thank you for giving me such a good opportunity LOL

😁 Toss Developer : I've been busy lately.. I'd like to build something new someday too. I heard NATS is really good, and routing is very easy and dynamic

😁 Kakao Interviewer (Developer) : X (Naver developer) is really good at development In my opinion, they're at a free pass level lol I'm glad they're joining us like this

How do you implement service communication in distributed architecture?? ⚡

In an environment where numerous services are connected around data, we need to go beyond simple CRUD and build event-driven dynamic architectures that create loose coupling between services.Each time, we face these concerns. Most of you will probably have these worries: How do we guarantee performance?? How do we consider dynamic communication and Auto Scaling?? How do we manage Consumer Lag?? And what are Dead Letter Queues??

The answer to that is right here in this course. How to connect multiple services based on Subjects!! Along with that, how to implement ultra-low latency real-time communication, how to prevent Consumer Lag using HA perspective and Queue Groups, and more - through this course that is highly focused on performance, we've prepared to help you achieve safety and optimization for your MSA architecture services.

This is not a course that simply covers theory. I hope you'll have time to learn how to directly use and implement the NATS platform through various actual source codes. 🚀

Why NATS Platform

NATS is a messaging platform that provides ultra-low latency and high performance.

Through the Single Platform feature, it provides Streaming, Key-Value, Object store, PubSub, and due to the Microservices characteristic, it can be easily and quickly applied in distributed environments. In other words, it's distributed and has the characteristic of zero trust security. Additionally, it includes the Multi-cloud to Edge feature, allowing all applications and data to be provided in an on-premises form regardless of physical location., bạn có thể nhận được tất cả ứng dụng và dữ liệu dưới dạng on-premise bất kể vị trí vật lý.

NATS introduces itself this way in its official documentation.

NATS is a simple, secure and high performance open source data layer for cloud native applications, IoT messaging, and microservices architectures. All of this in a single binary that is easy to deploy and manage. No external dependencies, just drop it in and add a configuration file to point to other NATS servers and you are ready to go. In fact, you can even embed NATS in your application

( NATS is a simple, secure, and high-performance open source data layer for cloud-native applications, IoT messaging, and microservices architectures. It provides various features, all delivered in a single binary format that is easy to deploy and manage. Therefore, naturally without external dependencies, you can simply deploy the binary and configure it to point to other NATS servers to start using it immediately. Additionally, it's possible to embed NATS within your application. All features are provided in a single binary that is easy to deploy and manage.)

In modern architectures, there is a structure where numerous communications occur between services. In such a structure, learning NATS with its single binary, dependency elimination, cloud-native approach, and resulting ultra-low latency and high performance becomes not a recommendation but a necessity.

I highly recommend taking this opportunity to learn how to utilize NATS and grow as a developer with a tech stack that sets you apart from others. 🚀

Features of This Course

📌 A distributed messaging protocol course used in practice by actual Naver developers

  • This course was created with the participation of a current developer working at Naver. Rather than simply explaining what MSA is, you can learn by building together a high-performance messaging service called NATS. Through this, we have prepared content that allows you to learn extensively with a practical focus.

📌 Lecture Summary, Source Code, and Various Message Routing Patterns

  • In all lectures, we provide actual diagrams or extensively demonstrate the hands-on process. We teach you not just to follow along, but the actual working process and applicable patterns.


📌 A junior who knows this is a good junior... A senior who knows this is a capable senior - Distributed messaging protocol service for this

  • Do you only know CRUD?? In distributed architecture, we support scalable communication based on EDA, not CRUD. NATS is a representative solution that can be introduced for this..!! This is unique content on Inflearn.

I recommend this for: 👨‍🏫

🎯 Beginner to intermediate developers who have only heard of Kafka for distributed messaging services chỉ từng nghe về Kafka trong các dịch vụ nhắn tin phân tán

  • There are so many different distributed messaging services. While messaging pipelines like Kafka exist, I highly recommend learning NATS, which is truly focused on performance in MSA architecture

🎯 Developers who don't know any messaging services and want to learn mà chưa biết gì về dịch vụ messaging

  • I don't know anything about distributed messaging services This course is most suitable for you. As a server developer, to learn modern architecture, I recommend learning about loose coupling between services through this course.

🎯 Senior developers curious about the ecosystem of the NATS platform

  • Many developers, even those with some experience, are hearing about NATS for the first time. I recommend it because you can acquire new technology that others don't know about yet.


🎯 Backend job seekers and junior developers interested in game servers, real-time communication, and chat applications

  • NATS has the most suitable form for inter-service communication due to its ultra-low latency and overwhelming performance. I recommend this to anyone curious about high-performance servers through microsecond-level low-latency communication.


The background of the Naver developer who prepared this course 🤭


I'm Ande (abbreviated), a backend server developer with 10 years of experience working at NAVER.

I wanted to create this course to share and discuss the various technologies and stacks I know with others. I hope others can learn from my know-how and avoid making the same mistakes I did.

I joined through a referral from an acquaintance (a Kakao interviewer), and we filmed together under Hong's leadership. We made every effort to include as much content as possible, so please show your interest. Also, feel free to ask questions. I will do my best to check and respond to them. Thank you.

[Current] Naver Server (Headquarters) Developer

[Former] Backend Developer at Shinsegae Group

[Former] Healthcare Startup Server Developer

[Former] 4-year Computer Engineering major in Seoul

Notes

Practice Environment

  • IDE

    • Visual Studio Code

  • OS

    • Apple M3 Air

Recommended for
these people

Who is this course right for?

  • Backend developers who feel limited in service scalability with just REST communication and CRUD structure

  • A developer who keeps postponing the introduction of messaging because Kafka feels overwhelming

  • A job seeker who knows they should use event-driven architecture but doesn't know where to start

  • Frustrated developers who can't structurally solve Consumer Lag, delays, and bottleneck issues

  • A developer who has never properly designed a service architecture that requires ultra-low latency and real-time communication

Hello
This is

5,286

Learners

360

Reviews

123

Answers

4.7

Rating

21

Courses

자기 소개

집에서 빈둥대다 개발에 흥미를 느껴 개발 공부를 시작하였고 현재는 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다. 제가 공부를 했던 방법과 실무에서 접하실 수 있는 여러가지 문제점들과 해결책을 여러분들에게 제공하고 싶어 지식공유자 활동을 이어나가고 있습니다.

 

강의는 오로지 저만의 지식을 통해 만들어지지 않습니다. 모든 강의는 함께하시는 분들이 계십니다.

 

지식공유자 경력

[前] 샌드박스IP 관련 블록체인 개발자

[前] 메타버스 백엔드 개발자

[] 판교에서 고여가는 서버 개발자

 

인터뷰 이력

기타 문의

  • unduck2022@gmail.com

Curriculum

All

26 lectures ∙ (5hr 35min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

2 reviews

5.0

2 reviews

  • and3839455877님의 프로필 이미지
    and3839455877

    Reviews 2

    Average Rating 5.0

    5

    92% enrolled

    I'm developing at Naver, which created this course, and it's called Ande!! NATS... It might be unfamiliar to you all, but it's truly an excellent platform with an incredibly useful structure. I personally use it frequently and actively utilize it in production environments as well. I've tried my best to share the parts I've experienced and know about, so I hope you enjoy it and please provide lots of feedback. Have a great day!!

    • gjsu540607534님의 프로필 이미지
      gjsu540607534

      Reviews 3

      Average Rating 5.0

      5

      96% enrolled

      I truly think this is a lecture that teaches you everything even if you know nothing about NATS. The explanations are excellent, and it feels like a skilled developer is right next to you explaining why this platform is useful and how to use it... I really enjoyed this great lecture. Thank you.

      Limited time deal

      $29,370.00

      70%

      $75.90

      Hong's other courses

      Check out other courses by the instructor!

      Similar courses

      Explore other courses in the same field!