강의

멘토링

로드맵

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

119 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,589

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

  • 노영은님의 프로필 이미지
    노영은

    Reviews 1

    Average Rating 5.0

    5

    33% enrolled

    • 감자님의 프로필 이미지
      감자

      Reviews 2

      Average Rating 5.0

      5

      100% enrolled

      Go Lang, API GW에 대해 지식이 전무한 상태로 단순 호기심으로 수강했으나 함께 만들어가는 방식의 강의를 통해 많은 지식과 키워드를 얻을 수 있었던 것 같습니다. 감사합니다!

      • July
        Instructor

        안녕하세요 좋은 평 남겨주셔서 감사합니다. 개발방식의 다양함을 제공해 드리고 싶었고, 함께 코드를 작성하며 단순히 따라하는 강의가 아닌 같이하는 강의가 되고 싶었습니다. 물론 버벅거림도 많고 실수도 많았지만 그 과정도 개발이기 때문에 모두 표현하였습니다. 앞으로 재미있는 개발 하시기를 바라겠습니다. 감사합니다.

    • 이진혁님의 프로필 이미지
      이진혁

      Reviews 9

      Average Rating 5.0

      5

      100% enrolled

      실무에서 API GW를 구현해야 하는 경우가 생겨 급하게 들은 강의였습니다. Go Lang에 대한 사전 지식, 그리고 API GW에 대한 사전 지식이 없으면 처음에는 따라가기 힘들수도 있다고 생각했습니다. 다만 Go Lang을 현업에서 다루고 있고 API GW에 대한 부분도 중간 중간 서치를 해가면 들으니 핵심만 집중할 수 있어서 꽤나 좋은 강의였습니다. 무엇보다도 API GW에 대한 강의를 찾아보기 힘들기 때문에 더욱 만족도가 높은 강의였습니다. 감사합니다!

      • July
        Instructor

        안녕하세요 평 남겨주셔서 감사합니다. 저는 다양한 개발방식과 아키텍처를 좋아합니다. 항상 시도하지 않으면 성장은 없다고 생각하기 때문이죠. 개발자라는 직업은 매번 선택은 순간을 마주하게 됩니다. 그 순간마다 최선은 아니더라도 최대의 선택을 해야한다고 생각을 합니다. 이 강의가 진혁님에게 최대의 선택을 할 수 있는 선택지가 되었으면 좋겠습니다. 강의 들어주셔서 감사합니다. 앞으로는 좀 더 초심자도 이해 할 수 있는 강의로 준비해보도록 하겠습니다.

    • KingLoma님의 프로필 이미지
      KingLoma

      Reviews 7

      Average Rating 5.0

      5

      100% enrolled

      강의 자체가 완전한 Gateway느낌은 아니지만 초보자의 입장에서 학습하기에 굉장히 좋다고 생각합니다. 사실 저는 Gateway패턴이 무엇인지도 몰랐던 입장으로써 정말 많은 도움이 되었고, 직접 같이 코드를 작업해나가며 코드 수정을 하는 모습을 보면서 실무적인 느낌도 나면서 굉장히 날것??의 느낌도 났습니다. 이 부분이 저는 되게 강의가 짜임새 있지는 않고 투박한 모습에 가깝겠지만 어떤 모습을 보여주고 싶었는지 전달이 되는거같아서 좋았습니다. 좋음 강의 감사합니다.

      • Roles님의 프로필 이미지
        Roles

        Reviews 7

        Average Rating 5.0

        5

        33% enrolled

        실무적인 느낌이 나는것이 굉장히 좋은 강의였다고 생각합니다. 일단 강의 자체가 집중을 한다면, 하루 이틀 내지 마무리 할 수 있는 강의이며 일반적으로 완성된 부분을 깔끔하게 보여주는 것이 아니라 실제 디버깅을 하고, 중간에 수정을 통해서 함께 코드를 작업하는 느낌이 들었습니다. 그 부분이 저는 굉장히 좋았던거 같아요. 여러개의 강의를 들었지만 이런 강의가 참 와닿는거 같습니다. 주제 자체는 사실 완벽한 NGINX를 구현한다고 느끼지는 못했습니다. 물론 당연하게도 어려운 주제이기 떄문이라고 생각을 하고 그래도 규격에 맞춘 서버를 어떻게 자동화해서 구동을 할 수 있는지 재미있게 들었습니다.

        $29.70

        July's other courses

        Check out other courses by the instructor!

        Similar courses

        Explore other courses in the same field!