Search
📁

27주차 수업. 안녕 에프랩

27주차 수업 전 공부 진행 및 과정

27주차때 중요 질문들
김영한 강사님의 스프링 부트 - 핵심원리와 활용 6,7,8 챕터
프로젝트 프로메테우스, 그라파나

27주차 수업 진행

27주차때 중요 질문들
김영한 강사님의 스프링 부트 - 핵심원리와 활용 6,7,8 챕터
프로젝트 프로메테우스, 그라파나

멘토님 중요 질문.

마지막 멘토링. 더 이상의 중요 질문은 없다.

27주차 멘토링 느낀점

오늘은 마지막 멘토링.
하지만 평상시랑 다른건 없다! 바로 중요 질문 대답하고 강의 질문하고 프로젝트 얘기하고~
강의로 넘어가서 외부 설정을 분리하는 방법에 대해서 설명을 해주는데 왜 분리해야 하는걸까요?
영한님이 강의에서 변하는 거랑 변하지 않는 거를…음
변하는 건 이제 외부 설정 값 같은 것들이고
애플리케이션의 코드나 빌드 결과물 같은게 이제 변하지 않는 것들인데 이런것을 따로 분리해서 유연한 방식으로 사용을 하는게 좋다고 해주셨고 이제 여러 환경 그러니까 개발이나 운영 등 다양한 환경에서 서로 다른 설정 값이 존재를 하니까 그 환경에 맞게 변할 수 있도록..외부 설정을 추가 해주면…(환경에 맞게 쉽게 적용할 수 있어요)
네 그래서 코드에서 항상 변할 부분하고 변하지 않을 부분을 잘 지정해 두는 게 좋겠죠. 그래서 이 외부 설정 같은 경우는 기본적으로 코드 내에서 가정을 하는 것들이잖아요. 여기는 이제 주입받는 값에 따라 달라질 수 있다 이런 것들을 미리 잘 정해놔야 나중에 변경 사항이 생겼을 때 새로 서비스를 띄워야 하거나 이런 상황이 발생하지 않겠죠!
그럼 이런 설정을 유지하는 방법이 지금 환경 변수 외부 파일 등등 이런 것들이 나왔는데.. 데이터베이스를 통해서 관리하는 방법은 안되나요?
(음??음??)
가..가능할 것 같기도 하고…
안 되는 것들도 있겠죠 예를 들면 지금 프로젝트의 설정 파일 중에 데이터베이스 URL하고 계정을 입력하는 부분 이런 부분은 데이터베이스에서 못 부르겠죠! 이거에 대한 설정이 먼저 끝나야 되니까
(아! 갑자기 예시 들으니까 이해됨)
기본적으로 이런 제약이 있는 것들은 이제 형태로 받아올 수 밖에 없는 것들도 있고 그 외는 이제 커스텀하게 지정하는 것들을 사실 종류에 따라 DB에 저장해도 되고 파일에 저장해도 되는데 뭘 기준으로 둘다 사용할 수 있다면 어떤걸 기준으로 나누는게 좋을까요?
음.. 데이터베이스 연결 정보나 서버 포트 같은거는 자주 변경되지 않는 설정이니까 걔네는 외부 설정으로 두고 그 외에는 이제 자주 변경되는 설정들을 데이터베이스에 넣어둬서 쓰는게 좋을거 같아요
등등 이제 YAML이 뭔지 프로퍼티랑 차이점이 뭔지 강의 관련 질문을 해주시고
(강의를 많이 듣지 못했어가지고 금방 끝나고)
프로젝트로 넘어가서
사실 저번 CI/CD 이후로 아 이거 풀리퀘 부분에 내가 CI/CD하면서 느꼈던 그 고통,, 그거 무조건 기록으로 자세하게 남겨서 미래의 내가 같은 현상이 또 있으면 이거 다시보고 해결하면 되겠다 싶은 생각으로 남기기 시작했는데..
저번 풀리퀘 때
이번에 프로메테우스랑 그라파나 연결이 목적이였는데…
그 전에 전체적으로 프로젝트 환경 구축 이미지를 작업하면서 하는게 좋겠다 싶어서 하다가 그래프 만들다가 CI/CD에서 나 도커말고 도커 컴포즈로 바꿀래 금방 되겠지? 라는 마음으로 수정시작
올리자마자 액션 오류 카드 발동
이거 고치고 싶어서 하루종일 앉아서 구글링하고 뭐가 문제지 하고 AWS SSH에서 다시 하나하나 진행하면서 찾아보고 … 막상 셋팅 문제다보니까 해결하기도 어려웠고…블라블라..
그렇게 수정이력을 하나하나 남겨둠..
그러고 드디어 액션 오류 수정하면서 원래 도커로 진행할 때 블루 타켓 포트 가끔 사라지는 이상문제도 있었는데 (내가 셋팅 잘못함) 그것들도 다 같이 수정됨. 와 도커 컴포즈 채고다 따봉~
멘토님이 작성해주신 과정을 남겨 놓은게 너무 좋으셨다고 해주셔서 좋았다!
근데 들으면서 든 생각은 아 이거 매번 풀리퀘때 남겨둘걸~~~~~ 멘토링 끝날 때 알았네..ㅋㅋ
그리고 환경 구축 이미지에 몇가지 수정할 사항같은 부분도 알려주시고 커스텀 매트릭스만 진행 못해가지고 그 부분도 끝나고 하시면 봐주시겠다고 하셨다!
그 외에 수료 후에 공부하면 좋을것들에 대해서 여쪄봤고 20분정도 시간남아서 개인적으로 이제 서버 관련 질문으로 여러개 물어보면서 서버 대비해도 왜 죽는걸까요 등등 서버 죽으면 어떻게 대응해야하는지 물어보면서 멘토링하다가 끝나기 10분 전에 멘토님 회사 서버가…죽어버렸다…………..
급하게 수업이 마무리 되면서 다음에 남은시간에 대해서 따로 진행해보자고 하셔서 넵넵 하고 끝났다.
멘토링 드디어 마지막까지 수료 완료~~~~~!
나 이제 수료생이야 근데 마음 한쪽이 공허하군요,,

개인적인 질문

인터파크 같은 티켓팅 이벤트 같은 것도 서버 몰리면 터지는데.. 분명 미리 전에 단디 준비했을텐데도 왜 터지는걸까요?
이제 멘토링 마지막인데 제가 수료 후에 코테 외에도 준비해야할게 뭐가 중요할까요

다음주까지. 아니 앞으로.

앞으로 멘토님께 배운 개발자가 생각하는 방식에 대해서 잘 활용해서 좋은 개발자가, 좋은 사람이 되기를.