강의

멘토링

로드맵

NEW
Programming

/

Back-end

Distributed Tracing Systems in Hundreds of MSA Service Architectures Explained by Kakao Developers [ Feat: Kakao, Non-CS Majors ]

Learn the essential process of building Observability in a microservices architecture (MSA) environment from basics to practical implementation. Through step-by-step hands-on practice, you'll master standardized data collection using OpenTelemetry, trace storage and search with Grafana Tempo, and visualization using TraceQL. You can learn the process of tracking service flows through distributed tracing, identifying bottlenecks, and analyzing the root causes of failures.

46 learners are taking this course

  • Hong
실습 중심
백엔드이해하기
도커
grafana
docker
Kotlin
Docker
MSA
docker-compose

What you will learn!

  • Microservice Request Tracing and Performance Analysis Techniques Using OpenTelemetry and Grafana Tempo

  • Domain-based service separation, inter-service HTTP communication, system design

  • Multi-container environment configuration through Docker Compose, network management and service discovery

  • Grafana, Tempo, otel-collector-based system monitoring and tracing-driven operations

  • YAML-based configuration management, service configuration through environment variables, and declarative infrastructure definition approach

There are so many services in MSA architecture that it's driving me crazy. 😭😭 🤔

❗This content is from actual conversations.❗

😄Hong : I'm having some troubling issues lately, and it's pretty intense - since the coupling between services in MSA is high, debugging is so difficult.. Is this normal?

😁Kakao: Well... everyone looks at logs and metrics, or if the environment is well set up, they also check tracing. I usually debug while looking at tracing

😄Hong: Are you talking about Jaeger?? I'm jealous. If we had such a system built, it would help with debugging. My eyes are going to fall out from looking at logs now

😄Kakao :😆😆😆😆 That's right, originally most people just look at logs, but if you learn about the concept of tracing and introduce it, it's really great. You can easily see the relationships between services and track the overall flow, so I can't live without this now 😆😆😆

😄Kakao : Should I tell you about it?? It's also a topic I personally like, and it's an observation method that's easy to set up but really effective

😄Kakao : And actually, if you introduce this tracing feature, you can solve various problems that occur in MSA. People keep saying MSA is good, MSA is good, but most people don't look at the disadvantages

😄Hong: Oh really?? Then please let me know about it, let's cover it together. I've used it simply with other languages, but I haven't actually integrated it with Grafana

😄Kakao : Then I'll quickly set up and show you a Grafana and MSA environment using Kotlin, Docker, and docker-compose

Are you perhaps conducting monitoring for observability in MSA (Microservices Architecture) environments? How are you proceeding with that?? 🤔

😄Kakao : And actually, if you introduce this tracing feature, you can solve various problems that occur in MSA. People keep saying MSA is good, but most people don't look at the disadvantages

  • What do you think about this topic mentioned earlier??

"If it's MSA, can't we just configure it with various services and process them in a distributed manner?? It's good because it can be configured independently!!" Are you perhaps thinking only like this?? I think it would be very helpful if you consider what aspects you need to think about as your service grows in response to this question.


The answer lies in integrating and processing distributed data (otel-collector) and expressing it as traceability data to observe relationships between services and identify what problems occurred and what latency was generated in the process.

In this course, you will learn how to build a distributed tracing system by combining Grafana & Tempo & OpenTelemetry Collector, which are representative tools for monitoring services in distributed systems on these topics.


Rather than a boring lecture that just lists theories, I've prepared this as a practical guide where we'll build actual environments, write code, and observe operations together to completely master the design of distributed tracing data and its core functionalities. 🚀

Features of this course

📌 A short 4.30-minute lecture that efficiently covers all the essential points

* Just having long lecture hours doesn't make it good. I've focused only on the core parts that you need to know, and packed only the essential topics into this short time, including practical exercises where you can actually check tracing data.

📌 Observability systems that actual senior developers implement and use in production

* Like the conversation at the beginning, you can learn about platforms that even developers at Kakao don't know well, and gain competitive advantages accordingly.

📌 Rich course structure with dozens of diagrams and lecture summary files

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

📌 Not just simple service development, but operations beyond that

* A person who only writes code is not a developer. You can learn how to recognize the shortcomings of currently implemented architectures, understand relationships between services, and effectively conduct troubleshooting that occurs in this process through this distributed tracing system.

Expertise proven through previous lectures (as of 9.27) 👨‍🏫

🧑‍🎓 3075.0

🧑‍🎓 3794.9

🧑‍🎓 4834.7

🧑‍🎓 2394.8

The course covers this kind of content.🧩

* What Grafana is and why you should use it

* Possibility of integrating Tempo with Grafana

* Structure and Visualization Principles of Distributed Tracing Data

* Debugging Correlation Structure in Distributed Tracing Environment

* Microservices Architecture in Tempo

* Tempo's block-based storage mechanism

* Tempo-specific query TraceQL and performance optimization

* Overall architecture of OpenTelemetry Collection and its detailed components

* Building a lightweight environment using Docker

* Space Automation Using Docker Volume Mount

* Practice!! All configuration methods for the theory you learned

I recommend this for people like this 👨‍🏫

🎯 Non-CS major developers are also welcome, and those curious about troubleshooting methods in MSA architecture

🎯 For those who are curious about the perspectives of what aspects skilled developers are contemplating

🎯 Backend developer contemplating service expansion and corresponding observations at startups/large corporations

What makes this course special

📌Event providing 50 coupons

Course early bird discount periodWe will select 50 people who purchase during the early bird discount period and provide each with one 50% coupon accordingly

Great resources to check out together 🚀

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

  • Having worked 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

  • The only valuable talent in this team who has experience using Workflow

Reference Notes

Practice Environment

  • java

    • Java(TM) SE Runtime Environment (build 17.0.12+8-LTS-286)

  • docker, docker-compose

    • Docker version 28.0.0, build f9ced58158

    • Docker Compose version 2.33.1

  • IDE

    • IntelliJ IDEA, vsCode

  • OS

    • Apple M3 Air

Recommended for
these people

Who is this course right for?

  • Developers who want to apply microservice design, distributed system construction, and inter-service communication challenges to practical work

  • Operations specialist responsible for container orchestration and monitoring system construction

  • Designer planning scalable distributed system design, observability implementation, and microservice transition

  • Engineers who need to utilize observability tools for improving system stability, performance monitoring, and incident response

  • A developer who wants to learn about the problems of modern distributed systems and how to overcome them

Hello
This is

3,137

Learners

212

Reviews

85

Answers

4.6

Rating

16

Courses

자기 소개

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

 

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

 

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

 

지식공유자 경력

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

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

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

 

인터뷰 이력

Curriculum

All

22 lectures ∙ (4hr 31min)

Course Materials:

Lecture resources
Published: 
Last updated: 

Reviews

Not enough reviews.
Please write a valuable review that helps everyone!

Limited time deal

$39,600.00

50%

$61.60

Hong's other courses

Check out other courses by the instructor!

Similar courses

Explore other courses in the same field!