[Project-GrooMeong] 2주차 회고록

JBoB·2023년 3월 29일
0

이번주는 이제 막바지 개발들을 끝내고 테스트코드와 배포를 시작하였다. 이게 프로젝트가 처음인지라

나는 GCP 쿠버네티스와 워크로드 배포 및 mysql , DNS 배포를 하였다. mysql과 DNS 배포는 쉽게 성공하고 연결이 되었지만 쿠버네티스와 워크로드 쪽에서 2일간 docs와 서칭을하면서 애를 먹다가 여진 멘토님께 물어보았다. 1개의 pod가 계속 crashLoadOff가 걸린다고 자초지종(우리팀이 지금 배포를 2명이서 나눠서 한다는 말까지) 설명하였더니 배포는 혼자 하는게 더 좋다고 말씀해주셨고 지금 저희가 서버를 올리는게 총 5개 로그스테시,엘라스틱서치,레디스,mysql,DB 인데 지금 내가 하고 있었던거는 레디스,mysql,DB 인데 로그스테시랑 엘라스틱서치를 먼저 배포를 해줘야 지금 배포하려는 쿠버네티스가 배포된다는것을 깨닫고 이해해서 태윤님과 상의후 태윤님이 먼저 올리고 나서 그 후 진행하였고 배포는 태윤님한테 전담으로 맡기기로 하였다… 여기서 깨달은 점은 다음에 프로젝트가 있더라면 배포는 혼자 하나의 역할로 하는게 낫다고 생각하였다.

🧸 배포하면서 공부한것

확실히 배포를 하면서 느낀것은 데이터의 흐름을 많이 파악할 수 있었고 어떻게 하면 그 방화벽을 해체하고 인스턴스에서 어떤 명령어를 쓰고 하면 더 효과적으로 운영할 수 있을지 많이 알게 되는 거 같았다.

특히 아직 TCP, 로드밸런싱과 네임스페이스의 개념이 많이 헷갈렸는데 이번주 내내 붙잡고 공부하다 보니

많이 실력이 늘은 감이 없지 않아 있다…!

🧸 지옥의 테스트 코드…

정말 테스트 코드라는 게 정답이 없을 정도로 다양한 방법들이 있었고 하다보면 어떤것이 맞는 것이고 내가 하고 있는게 맞는가 이게 하드코딩이어서 이렇게 하면 의미가 없지 않나 싶지만 계속 docs와 블로그를 찾아보면서 여러 종류를 시도했던거 같다. 이번 프로젝트에서는 테스트코드를 맨 나중에 적었지만 다음에는 하나의 API를 하면서 같이 작성해보고 싶다. 그리고 메서드들이 정말 다양했다.. 기대결과랑 검증결과에서 검증결과를 머를 써야할지 아직도 감이 안잡히지만 계속 필기하면서 했기에 지금은 좀 감이 어느정도 잡힌다.

🐤 테스트 코드 작성의 장점

  • 개발 과정 중 예상치 못한 문제를 미리 발견할 수 있다. (에러를 클라이언트 보다 빨리 발견 할 수 있다.)
  • 작성한 코드가 의도한 대로 작동하는지 검증할 수 있다.
  • 코드 변경에 대한 사이드 이펙트를 줄이는 예방책이다.
  • 코드 수정이 필요한 상황에서 유연하고 안정적인 대응을 할 수 있게해준다.
  • 코드의 모듈화를 한번더 고민하게 해준다.코드 변경 시, 변경 부분으로 인한 영향도를 쉽게 파악할 수 있다.
  • 코드 리팩토링 시 기능 구현이 동일하게 되었다는 판단을 내릴 수 있다.(예를 들어 버전업을 하면서 현재 구현된 기능이 제대로 버전업에서도 동일하게 구현되게 한다.)
  • 테스트 코드를 통해 동작하는 방식 및 결과 확인이 가능하다.

🐳 2주차 나에게 대한 피드백

1. 정확하게 이해하고 확인하기
	- docs 를 보더라도 그 부분에서 확실하게 이해하고 넘어가자.
	- 오류를 보더라도 어디서 오류가 났는지 어떻게 오류를 해결했는지 알고 넘어가자.
2. 말이 될 때까지 그려봐라
	- 내가 쓴 API 를 다시 보았더니 수정할 게 한두개가 아니었다. 항상 먼저 그려보고 그것을 필기한 후 펜을 잡자.
3. 검증해라
	- 테스트 코드의 중요성을 깨닫고 나중에 회사에서 회사돈을 낭비하기 싫다면 항상 테코의 중요성을 생각하자.
4. 목표보다 하나 더 해라.
	- 이번주의 나는 목표까지만 했던 경향이 있었다.
	- 다음주의 나는 내 목표치가 있다면 그것을 끝마치고 한발더 나가는 자세를 임하겠다.
profile
간절하고 치열하게 살자

0개의 댓글