Review__[Project: 페스포트 (Fessport)]

Jaewon Lee·2021년 2월 15일
5

Review

목록 보기
2/5
post-thumbnail

On.

정말 하얗게 불태운 4주였다....👻

새로운 스택을 학습해 보고자 욕심을 부렸는데, 완벽하다고 할 수는 없지만 소화 정도는 해낸 것 같아서 뿌듯하다.

우리 팀의 이번 작품은 페스티벌과 관련이 있다.

왕년에 나도 페스티벌을 많이 다녔는데...나보다 더한 팀원이 있었다.

페스티벌을 다녔던 추억을 회상하면서 코로나로 인한 답답한 마음을 풀고싶었다.

시원한 맥주 한잔 사들고, 필드를 돌아다니면서 신나게 놀았던 그 날들....(아련함 Max🥺)

내년에는 그럴 수 있길 바라는 마음으로 다시 회고를 시작해보자!

😷😷😷😷


1. 페스포트 (Fessport)


1) Fessport가 무엇?

  • Fessport는 전 세계의 Festival 정보를 사용자에게 제공하고 페스티벌 티켓 중고거래라는 플랫폼을 형성하며 각종 게시판을 통해 페스티벌을 한층 더 즐길 수 있는 서비스입니다.

  • Fessport는 Festival과 Passport를 합쳐서 만든 이름!

  • 프로젝트에 대한 자세한 내용이 궁금하시다면?
    👉 배포 링크
    👉 깃헙 레포


2) 팀멤버

🧑🏼‍💻 Front-End : 이종혁, 박정환
👨🏻‍💻 Back-End : 이재원, 강희석

실력이 좋은 프론트 분들 덕에, 클라이언트에서 멋진 UI를 볼 수 있었습니다.

백엔드는 눈에 드러나는 부분이 없기 때문에 가끔 눈물을 흘리지만...

이렇게 뿌듯한 결과물을 백엔드가 탄탄히 지탱해 줬다고 생각하면 정말 행복하답니다. 하하하

어디선가 또다시 만나 프로젝트를 하게 되는 일이 생긴다면, 그땐 더욱 성장해 있는 백엔드 개발자로서 탄탄히 서포트 해드리겠습니다!

3) 갈 땐 가더라도, Fessport 한번 보고 가는 건 괜찮잖아?

Main Page

Festival List page

Festival Detail page

Artist List page

Artist Detail page

My Fessport page

Wish List page

Companion page

Buy & Sell page

Review Page



2. 좋았던점


1) TypeScript-Express-Starter

프로젝트를 시작하자마자 TypeScript만 따로 공부를 진행했다. TypeScript의 사용법을 필기하고 이해는 했지만 기존의 Express에 TypeScript를 어떻게 적용시켜야 좋은 방향으로 개발을 할 수 있을까라는 고민이 있어서 자료를 조사해 보았다.

TypeScript-Node-Starter는 마이크로소프트에서 직접 만든 패키지이다. TypeScript의 고향인 MS가 만든 패키지이니 좋은 가이드라인이 되겠다는 믿음이 있었고, 덕분에 MS가 TypeScript와 Node.js, Express로 어떻게 서버 개발을 하는지 공부할 수 있는 좋은 기회였다. 굳굳!👍


2) Docker

[웬걸 도커로 배포를 하니 너무 좋잖아?!?!]
이번 프로젝트에서 새로 공부했던 것 중에 하나가 도커였다. 프로젝트 배포 단계에서 도커를 사용했는데, 내가 만든 서버를 이미지 단위로 빌드해서 도커 허브라는 곳에 올렸다. 도커 허브를 통해 아마존 웹 서비스의 EC2 환경에서 도커 이미지를 내려받았고, 이미지로 컨테이너를 찍어서 실행시키니 EC2 환경에서도 너무나 쉽게 내가 만든 서버가 실행되는 모습을 볼 수 있었다!!

도커로 배포하기 짱짱맨!!!

[근데 도커 어디에다 사용하면 좋을까....?]
도커....정말 좋아.... 좋은데... 뭔가 이걸로는 부족했다. 도커라는 플랫폼이 핫한 이유는 뭔가 다른 이유가 있을 것 같았다. 그래서 인터넷 검색도 해보고... 곰곰이 생각도 해본 결과....

분산처리할 때 사용해 보면 어떨까라는 생각이 들었다.

분산처리가 아직 정확히 무슨 작업인지는 모르고... 일단 내가 했던 방식으로 생각해 보면...

여러 개의 서버(실시간 메세지 서버...등등)를 나누어 만들고 전부 도커 이미지로 빌드 한 다음에, EC2 환경에서 Nginx나 아파치 서버와 같은 웹 서버로 프록싱을 해주면 이것이 분산 처리지 않을까...? 싶다(부족한 설명 ㅈㅅ....ㅠㅠ)

도커를 사용하니깐 로컬 자원도 균등하게 사용할 수 있도록 설정 가능할 것이고, Nginx 같은 웹 서버를 업스트림 서버의 앞 단에 두면 보안성과 속도도 좋아지니...뭔가 괜찮을 것 같다는 생각이 든다.

물론 모든 것 이전에, 트래픽이 많은 지부터 따져봐야 할 것 같지만 일단 학습 목적으로 생각해 보면 그렇다.ㅎㅎㅎ 로드 밸런싱과 오토스케일링 등의 개념도 공부해봐야 하고... 뭐 이것저것 할 것이 많지만 혼자 생각해 보고 결론내어 봤자 무슨 소용이 있겠는가!! 조만간 현직자 분들에게 물어봐야겠다!! 후후

[한층 더 깊이 배워야해!]
방금까지 '이러면 좋을 것 같아!', '저러면 좋을 것 같아!'라는 긍정 Max 상상 회로를 돌리면서 이것저것 생각해 보았다. 사실 프로젝트 하면서 도커의 장점 정도만 깔짝 맛봤다고 생각한다. 아직 도커 컨테이너의 내부 구조에 대해서 정확히 모르고 있는 상태고, 도커 커맨드의 옵션 정도만 다루는 수준이니 다음번에 도커를 학습할 땐 도커의 단점도 공부를 해봐야겠다. 그러다 보면 어쩔 때 도커를 사용하는 것이 좋을지에 대해 좀 더 명확해지지 않을까 싶다.


👉 Docker에 대해 공부해봐! (업로드 예정)


3) Nginx

사실 지금 여기서 Nginx에 대해서 뭔가 떠들 만한 것은 많지 않다! 하하 전국 최초 블로그 방문자 물먹이기 깔깔깔ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

각설하고 내가 한것은 nginx.conf 환경 파일을 설정해 주고, node.js 서버에 리버스 프록싱해준 거여서 '나 nginx 잘알아!', '나 이제 nginx 개고수!'라고 말할 수가 없닼ㅋㅋㅋㅋㅋㅋㅋㅋ 더군다나 Dokcer Hub에서 Nginx 이미지를 내려 받아 Nginx 디렉터리 구조도 살펴보지 못했다ㅠㅠㅠㅠ

하지만 덕분에 리버스 프록싱, 웹 캐시에 대한 개념을 이해하게 되었다. 웹에서 클라이언트 뒤쪽을 이루는 구조에 대한 시야도 조금은 넓어진 것 같고....아닌가...?ㅠㅠ (옆에서 조언해주는 스승이 있다면 정말 좋겠다...ㅠㅠ 내 블로그를 보고 스승 혹은 멘토가 되어주실 분들 환영합니다!ㅎㅎ)

nginx는 Event Driven 방식의 웹서버라고 하니 Event Driven에 대해 공부해 봐야 겠다!!


👉 Nginx에 대해 공부해봐! (업로드 예정)


4) 저번 프로젝트때 아쉬웠던 점을 채웠음

  • 이번에 DevLog를 정말 많이 써서, 프로젝트를 온전히 내 것으로 채운 느낌을 받음!
  • 이전보다 기획에서 조금 더 많은 시간을 투자했다. 기존 대비 수정하는 일이 많이 줄고, 어플리케이션이 구조가 체계적으로 잡혔다고 생각함. 그래도 서버와 클라이언트가 맞춰가는 과정에서는 여전히 수정해야할 것들이 있었다!
  • 이번에 유저 정보가 필요하거나, 어떤 권한이 필요한 기능을 수행할 때는 꼭 토큰 방식으로 접근을 가능하게 만들었다! 미들웨어로 만들어 놓으니 편했지만, 이번에는 내가 아닌 팀원이 로그인을 맡았다. 그래도 팀원의 코드를 보고 이렇게 할 수 있다는 것을 많이 배웠다!


3. 아쉬운점


1) CS 지식

  • 정확히 이유는 모르겠다..백엔드 개발을 하면 할 수록 자꾸 CS 지식이 탄탄해야 될 것 같은 느낌을 강하게 받는다.
  • 컴퓨터 위에서 웹이 실행되는 플로우를 네트워크, 운영체제, 컴퓨터 내부 구조 관점에서 전반적으로 이해를 하면 참 좋을 것 같은데....라는 아쉬움이 생겼다.

Off.


드디어 두 번째 프로젝트의 회고도 끝!!

이거이거 회고도 정성스레 쓰려니 보통일이 아니구먼!!

그래도 내가 했던 프로젝트를 이쁘게 마무리 짓는 것 같아 기분이 좋다.

이번에 새로운 스택을 공부하면서 좀 더 성장한 느낌을 배웠다! 주니어 레벨1에서 주니어 레벨2로 진화한 느낌?ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ하하 농담ㅎ

뭔가...아직 부끄럽지만 서버개발자로서..퍼포먼스라던지...보안이라던지...이런 것에 생각을 하게 되는 것 같다.

뭐 다 중요하지만 그래도 중요한 것은 기초 CS 지식이지 않겠는가!!

네트워크는 새록새록 기억이 나면서도...운영체제는 진짜 기억이 잘 안난다...ㅠㅠ 내 대학교 등록금...흑흑

아무튼 정리하자면 서버개발자가 고민하는 일에 대한 시야가 넓어지는 것 같아 좋았던 시간이었고, 다시 한번 CS가 탄탄해야겠다는 다짐을 하게된 프로젝트였던 것 같다!

앞으로도 내가 이루고자, 배우고자 하는 바를 천천히! 꾸준히! 이루어 나가보자!

🤘😎🤘

기본기가 탄탄한 백엔드 개발자가 되는 그날까지 🔥🔥🔥

profile
Communication : any

0개의 댓글