강의

멘토링

커뮤니티

Programming

/

Back-end

Performance-guaranteed RPC processing techniques in hundreds of MSA environments taught by Kakao and Toss developers

This course covers RPC communication techniques that maximize performance in large-scale MSA (Microservice Architecture) environments. Going beyond simple gRPC practice, you'll learn how to implement stable and efficient inter-service communication in real production environments where hundreds of microservices operate simultaneously. Based on Golang, the course covers Protocol Buffers (proto) syntax writing, automatic code generation and service implementation, gRPC structure and advantages over existing RPC, and performance optimization strategies with a practical focus. To ensure easy understanding for non-majors and server development beginners, the course provides step-by-step explanations from RPC concepts to gRPC's internal operating principles, enabling you to develop practical skills that can be immediately applied to real services.

(4.9) 8 reviews

191 learners

  • Hong
실습 중심
백엔드이해하기
비전공자
웹개발
백엔드개발자
Go
MSA
backend
grpc

Reviews from Early Learners

What you will gain after the course

  • "Why is RPC Necessary?" – Understanding the Essence of High-Performance Communication Beyond REST

  • gRPC Complete Mastery – From Proto Design to Code Auto-generation and Real-world Service Development

  • The Secret to Supporting Hundreds of Microservices – Revealing Kakao's Performance Guarantee Strategy

What aspects should be considered to ensure optimization and performance in an MSA environment where hundreds of services exist?? 🤔

❗This content is from an actual conversation.❗

😄 Hong : Looking for someone who has built MSA down to the core level by introducing gRPC

😁Kakao Developer : Me. Well, it's not that the entire company has adopted it, but some parts are communicating with gRPC, or as far as I know, other teams in the company also use just RPC or JSON-RPC

😁 Toss Developer : We're also using some of this. Well, since it's a protocol, we use WebSocket and naturally use RPC communication too. I think it depends on how you define the criteria for what constitutes the core level.

😄Hong: Yeah, I've been thinking a lot lately about what to consider from an architecture perspective and how to combine things. I feel like gRPC is something that must be introduced if you're going to implement MSA all the way to the core

😄Kakao Developer : Right, I know that Google also uses RPC because HTTP becomes impossible when traffic explodes like that. As services increase, network communication costs grow exponentially

😄Kakao Developer : The situation varies by company, but when building MSA, it would be a bit disappointing not to use gRPC Of course, it naturally depends on the situation

😁 Toss Developer: Right, I agree with that too. It's just that we implemented everything with MSA while communicating via HTTP!! I think there are many people like this, but actually that's not a complete implementation

What parts did you understand and relate to from the previous conversation?? 🤔

While every company's situation is different, if you're building MSA and not using gRPC, it's a bit disappointing Of course, it naturally depends on the situation

We implemented everything as MSA while communicating via HTTP!! I think there are many people like this, but actually that's not a complete implementation

What are your thoughts on these two topics?? In MSA, with hundreds of backend configurations, do you understand why this topic came up??


The answer lies in network optimization using gRPC.

Traditional HTTP/1.1-based REST communication faces performance limitations in environments where hundreds of microservices interact with each other due to header overhead, slow serialization/deserialization, and connection management issues. In contrast, gRPC provides multiplexing, header compression, and streaming capabilities based on HTTP/2, enabling much more efficient inter-service communication.

Additionally, by modularizing business logic into RPC units, each function can be independently separated, enabling fast calls and data transmission. When Event-Driven Architecture (EDA) and gRPC are used together, events between services can be delivered quickly and reliably, and network optimization as well as retry and failure handling can be managed at the platform level. In other words, even in situations where traffic surges, gRPC-based architecture simultaneously guarantees stability and performance, establishing itself as a core technology that can maximize service scalability and maintainability.


This isn't a boring lecture that just lists theories, but a practical guide prepared to completely master the core features of gRPC-based design by examining the working processes together. 🚀

Features of this course

📌 Platforms actually introduced and used by senior developers in real-world practice

* Like the initial conversation content, the course is structured around topics that are being used together with developers from Kakao and Toss. Through this, you can acquire the know-how of skilled developers.

📌 Rich course content with approximately 50 diagrams and lecture summary files

* This isn't just a lecture that explains things with words alone, but also provides actual source code, diagrams, sequence diagrams, and additionally offers simple summary files of the lecture content.

📌 This isn't just talk about MSA.

* This is a course where you can get a glimpse of what technologies are considered and need to be introduced in the MSA architecture, and you can master why gRPC was introduced to solve the chronic problems of that architecture.

📌Lecture content that continues to be added based on your questions

The lectures will be continuously added to Chapter 8 based on the questions you ask. Whether they are questions about the lectures or unrelated questions, if you ask many questions, we will select useful ones and provide additional content on related topics exclusively to students for free.

I recommend this for people like this 👨‍🏫

🎯 Non-CS major developer who is curious about hundreds of MSAs from a perspective standpoint

🎯 Junior developers who only know HTTP and don't know RPC communication

🎯 For those at startups/large companies who consider traffic scalability and compatibility

🎯 Not just "I implemented a simple MSA," but job seekers who want to consider these aspects and try implementing them

Related Resources 🚀

The person who created this course 🤭

  • A developer who started as a non-major and is currently working as a platform backend developer in Pangyo

  • The goal is to teach realistic development methods and development theories, and I am a knowledge sharer who creates lectures together with capable acquaintances around me, not alone

  • A knowledge sharer who conducted an interview at Inflearn thanks to their diligent activities

  • A computer engineering major who graduated from a university in Seoul

  • After working in the first-tier financial sector, I am currently a developer working as a backend and data engineer at Kakao

  • A developer who creates various courses with Hong and contributes to providing realistic knowledge and environments

  • A server developer who majored in computer engineering in a rural area, worked as a developer at Naver, and is currently doing backend development at Toss

  • A developer who always gets scolded by Hong for lacking time...

  • A developer who wants to achieve financial freedom and dreams of solo development

Reference Notes

Practice Environment

  • Golang

    • go1.23


  • IDE

    • GoLand IDEA

  • OS

    • Apple M3 Air

Recommended for
these people

Who is this course right for?

  • Server developers who want to properly understand MSA – Those who want to learn communication structures in actual large-scale environments

  • Engineers looking to apply gRPC in practice – Those who want to explore new communication paradigms beyond REST

  • Non-CS major development beginners – Those who want to learn step by step from concepts to code and develop practical skills

  • Learners who want to benchmark the backend architecture of large-scale services like Kakao

Hello
This is

4,514

Learners

314

Reviews

111

Answers

4.6

Rating

18

Courses

자기 소개

집에서 빈둥대다 개발에 흥미를 느껴 개발 공부를 시작하였고 현재는 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다.

 

제가 공부를 했던 방법과 실무에서 접하실 수 있는 여러가지 문제점들과 해결책을 여러분들에게 제공하고 싶어 지식공유자 활동을 이어나가고 있습니다.

 

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

 

지식공유자 경력

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

[前] 넥슨 자회사 백엔드 개발자

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

 

인터뷰 이력

Curriculum

All

24 lectures ∙ (4hr 27min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

All

8 reviews

4.9

8 reviews

  • seungteakoh9676님의 프로필 이미지
    seungteakoh9676

    Reviews 3

    Average Rating 5.0

    5

    100% enrolled

    • hsk7413388님의 프로필 이미지
      hsk7413388

      Reviews 8

      Average Rating 5.0

      5

      63% enrolled

      • y2gon28999님의 프로필 이미지
        y2gon28999

        Reviews 3

        Average Rating 4.3

        4

        33% enrolled

        • abcd123123님의 프로필 이미지
          abcd123123

          Reviews 325

          Average Rating 5.0

          5

          13% enrolled

          • tttos님의 프로필 이미지
            tttos

            Reviews 8

            Average Rating 5.0

            5

            88% enrolled

            I'm a developer working at Toss who has also participated in and helped with lectures. You absolutely must know about RPC communication. Many people say they've implemented MSA by simply implementing it with HTTP, but honestly, I don't agree with that. In fact, when I went to interviews in the past, whenever MSA architecture came up, they would invariably ask questions about RPC as well, which shows that RPC communication in MSA is one of the extremely important elements in terms of resource optimization and management. I hope this lecture will be of great help to you.

            • jhong
              Instructor

              Let's create great lectures together next time too 😊😊 Thank you!

          $50.60

          Hong's other courses

          Check out other courses by the instructor!

          Similar courses

          Explore other courses in the same field!