강의

멘토링

로드맵

Programming

/

Back-end

Implementing the Gateway Pattern Used in MSA Architecture

This lecture covers the process of configuring a custom Gateway API using yaml.

(4.8) 6 reviews

118 learners

  • July
실습 중심
3시간 만에 완강할 수 있는 강의 ⏰
gateway
Go
Kafka
MSA

Reviews from Early Learners

What you will learn!

  • Environment injection via yaml

  • Trace using Kafka

  • Lock control for async processing

  • Optimized server management using API Gateway

What is the Gateway Pattern in Microservice Architecture? 🫨

What technologies are used in MSA environments? A representative example is the Gateway Pattern, which utilizes the Gateway API.

To implement these technologies, you'll primarily use Apache-apisix and nginx . These services allow you to build a single, high-performance web server, route traffic across multiple servers, handle multiple traffic streams, and protect the server responsible for internal logic from attacks like DDOS.

What will you learn in this course? 🫨

What I would like to talk about as a representative example is that you can implement a high-performance web server directly using Go .

Just as you can implement a high-performance web server by managing the environment configuration file separately in nginx , in this lecture you can learn how to handle API calls to external servers by utilizing yaml and defining specifications.

Additionally, we will inform you about latency logging for API calls and cost services through the API using Kafka's producer .

Do you use the Gateway Pattern often? 🫨

This pattern is frequently applied depending on the situation, and is also used when utilizing servers that share certain functions.

Learn about these things

1⃣ Kafka Producer Object and Message Transmission

Trace information about the API using Kafka's Procuer.

Through this, you can learn about Kafka's message processing method and architecture for the API billing model.

2⃣ Customizing the http client using restry

We utilize an openSource called restry and implement calls and requests for rest APIs using the builder pattern that you are familiar with.

3⃣ OpenSource customization for serialization optimization

This module is a project that universally handles calls to other servers. To support this process, we're working on customizing optimizations for serialization.

4⃣ Utilizing Kafka and UI using Docker

How do Kakao and Naver implement API billing models?

In this lecture, we will directly implement the process of sending messages using Kafka, and you can learn how to implement it more intuitively through UI.

This course provides two servers. 🥳

This lecture provides an insight into what the gateway pattern is by running a module through a yaml file and managing an external server from the module.

That's why we provide a Golang server for optimal performance and a Node server that acts as an external server.


I hope that your development will be more fun and interesting as you use these two servers directly and implement additional ones.

This lecture is with you. 🤨

This course is unique in that it is not a lecture where the instructor follows pre-written code.


We will write the source code from scratch together with you, one by one, and then test it without any actual modifications.

Through this, I want to give you a more real-world, hands-on development experience, and in fact, as this process takes a lot of time, I personally encounter and resolve issues that you might have struggled with on your own, and provide you with direction and solutions on how to proceed.


I chose this method to keep the lectures simple, and while this process may not be perfect for me, I believe it will be more helpful to you.

Things to note before taking the course

Practice environment

  • This course was developed on MacOS M1.

  • The Kafka part is implemented through Docker.

  • The lecture was filmed using the IntelliJ IDE .


Recommended for
these people

Who is this course right for?

  • For those of you learning microservices

  • For those who are curious about the Gateway Pattern

  • For those curious about the API billing model

  • For those of you who are curious about how to use Kafka

  • For those who are curious about using images using Docker

Need to know before starting?

  • Go [Just learn the concepts and feel free to use other languages.]

  • javascript [ Responsible for external servers ]

Hello
This is

3,586

Learners

169

Reviews

88

Answers

4.5

Rating

15

Courses

자기 소개

비전공자 출신으로 판교에서 플랫폼 서버 개발을 담당하여 진행하고 있습니다.

서버 최적화와 다양한 쿼리 튜닝을 좋아합니다.

 

경력

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

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

[前] 판교 대기업 플랫폼 서버 개발자

[] 판교 모회사 서버 개발자

Curriculum

All

21 lectures ∙ (2hr 57min)

Published: 
Last updated: 

Reviews

All

6 reviews

4.8

6 reviews

  • yesye11179826님의 프로필 이미지
    yesye11179826

    Reviews 1

    Average Rating 5.0

    5

    33% enrolled

    • slayers14150828님의 프로필 이미지
      slayers14150828

      Reviews 2

      Average Rating 5.0

      5

      100% enrolled

      I took the Go Lang, API GW course out of simple curiosity, as I had no knowledge of it, but I was able to gain a lot of knowledge and keywords through the lecture style of creating together. Thank you!

      • july
        Instructor

        Hello, thank you for leaving a good review. I wanted to provide a variety of development methods, and I wanted to make it a class where we work together on the code, rather than a class where we simply follow along. Of course, there were a lot of stutters and mistakes, but I expressed them all because that process is also development. I hope you have fun developing in the future. Thank you.

    • iih9075948님의 프로필 이미지
      iih9075948

      Reviews 9

      Average Rating 5.0

      5

      100% enrolled

      I took this course in a hurry because I had to implement an API GW in practice. I thought it might be difficult to follow at first if you don't have prior knowledge of Go Lang or API GW. However, since I work with Go Lang in my job and search for API GW information from time to time, I was able to focus on the key points, so it was a pretty good course. Above all, it was a very satisfying course because it's hard to find courses on API GW. Thank you!

      • july
        Instructor

        Hello, thank you for leaving a review. I like various development methods and architectures. Because I always think that there is no growth without trying. As a developer, you are faced with a moment of choice every time. I think you have to make the best choice, even if it's not the best. I hope this lecture will be the best choice for Jin-hyuk. Thank you for taking the lecture. In the future, I will prepare lectures that even beginners can understand.

    • kingloma9530254님의 프로필 이미지
      kingloma9530254

      Reviews 7

      Average Rating 5.0

      5

      100% enrolled

      The lecture itself doesn't have a complete Gateway feel, but I think it's great for beginners to learn. In fact, I didn't even know what the Gateway pattern was, so it was really helpful, and as I worked on the code together and saw the code being modified, it felt practical and very raw. I think this part of the lecture is not very well-structured and is more like a rough version, but I liked that it conveyed what he wanted to show. Thank you for the great lecture.

      • 1302님의 프로필 이미지
        1302

        Reviews 7

        Average Rating 5.0

        5

        33% enrolled

        I think it was a really good lecture because it felt practical. First of all, if you focus on the lecture itself, it is a lecture that can be finished in a day or two, and it felt like we were actually debugging and working on the code together through modifications in the middle, rather than just showing the completed part neatly. I think that part was really good for me. I have taken several lectures, but this lecture really resonated with me. The topic itself didn't feel like it was implementing a perfect NGINX. Of course, I thought it was because it was a difficult topic, but I still enjoyed listening to how to automate and run a server that meets the standards.

        $29.70

        July's other courses

        Check out other courses by the instructor!

        Similar courses

        Explore other courses in the same field!