개발 · 프로그래밍

/

백엔드

Google Authenticator, QR, Cron을 활용하여 자동화 만들기

이 강의에서는 네이버 쇼핑 사이트를 활용하여 Web Scraping API 서버를 만드는것을 목표로 하고 있습니다. MySQL을 연동하여 3티어 아키텍처로 구성해, 관리형 API서버를 구성하는 방법에 대해 알려드립니다!!

(5.0) 수강평 3개

수강생 80명

Thumbnail

초급자를 위해 준비한
[백엔드, 데이터베이스] 강의입니다.

이런 걸
배워요!

  • Scrapping

  • HTTP

  • MYSQL

  • Golang

웹 스크래핑이 무엇이고, 왜 해야 할까요?? 🤔


Scraping이라는 단어에 익숙하실 수 도 있고, Crawling이라는 단어에 좀 더 익숙하실 수 있습니다.
Scraping이라는 방식이 실제 서비스를 구축하는데에 사용이 되는 일반적인 방식이 아닙니다.


법적으로도 이슈가 많은 방법이고, 여차하면 Denial-of-service attack을 유발하는 방법이기 떄문입니다. 그럼에도 저희는 왜 Scraping을 진행을 해야 할까요??


Scraping을 활용하면 마켓팅, 개인 사업등 내가 관리하지 못한 다양한 정보들을 긁어 올 수 있기 때문입니다.

이러한 데이터는 주로 어디에 사용이 될까요?? 🤔

데이터는 정말 다양한 방법으로 활용 가능합니다.

내가 필요한 데이터를 수집하는 방법이기 때문에, 원하는 데이터를 수집하고 원하는 비즈니스를 구성하시면 됩니다.


대표적이며, 가장 일반적인 방법은

크롤링을 통해 데이터를 수집 후 쿠팡, 네이버 등등 eCommerce 플랫폼에 해당 데이터를 제공해 수수료 거래를 지원하는 방법이 가장 대표적으로 사용이 되고 있습니다.

법적으로는 문제가 없을까요?? 🤔

Scrapping 방법이 법적으로 문제가 있는 방법이 아닙니다. 왜냐하면 이미 플랫폼에서 외부에 노출을 하는 정보이기 떄문입니다.


하지만 기본적으로 외부 플랫폼의 정보를 가져오기 위해 서버에 접근을하기 때문에
앞서 말씀드렸듯이 무분별하게 정보를 가져오는 행위를 시도하시면, 일반적으로 말하는 디도스 공격이라는 형태로 트래픽이 가게 됩니다.


이러한 상황에서 만약 해당 플랫폼에 만약 손실이 발생을 하게 된다면, 문제가 될 수 있습니다.
따라서 트래픽양을 조절을 해야한다는 것을 명심해 주세요!!


일반적으로 wrk와 같은 테스트툴을 사용해서 트래픽을 전송한다고 해도, Gateway, Throttling, FronDoor 등 다양한 방지책을 구성해두기 때문에, 두려워하지 않으셔도 됩니다.

추가로 무엇을 배울 수 있을까요?? 🤔

제가 만든 대부분의 강의는 항상 제가 실무에서 사용하고 적용하고 있거나, 수강생분들이 일반적으로 알고 계시는 부분보다는 잘 모르실것 같은 부분을 제공해드리는 것에 중점을 두고 있습니다.


  1. 이번 강의에서는 여러분들이 일반적으로 알고 있는 JWT Token인증 방식이 아닌!! QR코드를 통한 인증방식을 알려드리려고 합니다.

Google Authenticator에 대해 알려드리며, 이 방식은 제가 실무에서 실제로 관리형 페이지를 구성하는데에 있어서 적용한 방법입니다.

그러니 제 커리큘럼에 맞춰서 Chrome 확장 프로그램을 활용해 QR코드를 통한 인증 방법에 대해 학습하실 수 있습니다!! 😁

  1. 이번 강의에서는 추가로 대용량 데이터를 백그라운드로 서비스 로직으로 관리하는 방법에 대해 알려드리고 있습니다.

그냥 일반적으로 API 요청을 받고 처리하는 방법에 대해서 지루하고, 재미없지 않으신가요?? 🥲

수많은 데이터를 자동화하여 처리하는것은 매우 중요합니다.

이 강의에서는 Cron을 사용하여 이러한 백그라운드로 서비스 로직을 구동시키는 방법에 대해서 추가로 학습하실 수 있습니다!!😁

강의를 듣고 나면 이런 결과물을 만들 수 있어요

MySQL을 통한 데이터 관리

이 강의는 Scrapping을 지원하는 관리형 API를 만드는 강의입니다.

그러기 떄문에 반드시 정보를 저장 할 데이터베이스가 필요하며, 이 떄 MySQL을 사용하게 됩니다.

Cron을 통한 Scrapping 자동화

혹시 백그라운드 자동화에 대해서 알고 계신가요??

이 강의에서는 Cron이라는 방법을 사용하여 일정 주기마다 백그라운드로 로직을 구동시키는 방법에 대해서 알려드립니다!!

실무 관리형 API에 대한 구조

판교 IT회사 재직자는 서버 작업을 진행할 떄 어떻게 구조를 짜는지에 대해 궁금하시지 않은가요??

그 궁금증을 모두 풀어드리며, 실제 서버 구조 작성법에 대해서 자세하게 알려드립니다.

Google Authenticator를 통한 TTL 기반 인증 구현

코드를 통해 QR코드를 생성 및 등록하여, 인증에 사용하는 방법에 대해 알려드립니다.

다시한번 말씀드리지만, 해당 방식은 제가 실무에서 직접 사용하고 적용한 사례입니다.

학습 내용

제가 실무에서 사용하는 서버 구조에 대해 자세히 알려드립니다.

유동적인 구조는 매우 중요합니다.

저 이외에도 다른사람이 보기 편하고, 작업하기 편한 구조가 무엇인지 알려드립니다.

Secret 값을 통한 QR 인증 구현

인증 방식에 대해서는 많은 방법이 있습니다.

이 강의에서는 QR코드를 통한 TTL 제한 인증 방식에 대해서 알려드립니다.

MySQL을 통한 데이터 관리

Schema 설계부터 MySQl을 통한 Scrapping 자동화 데이터 관리에 대해서 알려드립니다..

Cron을 통한 자동화 처리

개발자들의 최종 목적지는 항상 자동화입니다.

이런 자동화에서 빠질 수 없는 백그라운드 로직 구동 및 Cron을 활용하는 방법에 대해서 알려드립니다.

💁 저는 이런 개발자 입니다. 💁

개발자라는 직업은 참 매력적이고 가능성이 많은 직업이라고 생각을 합니다.


내가 원하는 작업을 하며, 원한다면 그 작업을 통해서 수익을 창출해 낼 수도 있습니다.

회사에 종사를 하거나, 아니면 프리랜서로써도 생활이 가능합니다.

저는 기본적으로 다양한 방식을 추구하고, 새로운 툴을 적용을 하는것을 좋아합니다.


그러다보니 직장에서도 다양한 툴을 처음으로 적용하면서 실제 운영 환경에서 많은 에러를 유발하는 직원이자 개발자입니다.


물론 회사내에서는 좋지 않은 평가를 받을수도 있지만, 저는 이런 저의 방식이 너무 좋고 재미있었습니다. 그리고 이러한 과정에서 많은 노하우가 쌓이게 되었습니다.

이런 노하우를 여러분들에게 공유드리고 싶고, 여러분들은 이러한 이슈에 대해서 피해가셨으면 좋겠다는 마음가짐으로 인프런 강의를 시작하게 되었습니다.

최대한 여러분들이 저와 같은 상황에서는 저처럼 행동하지 않았으면 좋겠다는 마음을 가지고 강의를 준비해 왔습니다.


제 강의가 수강생분들에게 많은것을 도움을 주고, 저에게서 많은 부분을 가져가시면 좋겠습니다.

수강 전 참고 사항

실습 환경

  • 맥북 M1 환경에서 진행을 하고 있습니다.

선수 지식 및 유의사항

  • 기본적으로 강의 언어는 Go입니다. 하지만 Node, Java를 사용하셔도 무방합니다. 대략적인 구조를 알아가시고, 적용을 하시면 많은 도움이 될 겁니다.

이런 분들께
추천드려요!

학습 대상은
누구일까요?

  • Scrapping 방법에 대해 궁금하신 분

  • 직접 비지니스를 구성해보고 싶으신 분

  • MYSQL을 통해 관리형 API를 만들어보고 싶은신 분

선수 지식,
필요할까요?

  • Golang [ 강의 언어입니다. 다른 언어를 사용해 같은 구조로 작성하셔도 무방합니다.]

안녕하세요
July입니다.

자기 소개

비전공자 출신으로 대학교 4학년에 갑자기 개발에 흥미가 생겨 혼자서 삽질을 진행하며 개발을 진행했던 서버 개발자...

Mongo Korea, Oracle등등 다양한 기업에서 세션을 진행한 경험이 있으며 이를 토대로

대용량 데이터와 트래픽을 직접 튜닝한 이력과 경험을 기반으로 강의를 촬영하고 이를 통해 수강생 분들이 좀 더 개발에 재미를 느끼게 하고싶은 지식공유자.

 

경력

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

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

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

[] 판교 중견기업 모회사 서버 개발자

- 개인적인 사정 및 회사 사정으로 경력 사항의 상세한 부분은 변경 및 수정되었습니다.

커리큘럼

전체

27개 ∙ (3시간 30분)

강의 게시일: 
마지막 업데이트일: 

수강평

아직 충분한 평가를 받지 못한 강의입니다.
모두에게 도움이 되는 수강평의 주인공이 되어주세요!