티스토리 뷰

5주차 회고에 앞서

이번주는 3차 데모데이에 필요한 기능을 구현하는 일정을 위주로 진행했다.

 

3차 데모데이 요구사항인 HTTPS 적용 및 WS + WAS 연결을 통해 443 포트로 데모, DB 테이블 drop 막기 등을 완료했고, 3차 데모데이의 핵심 기능인 리마인더 기능반려 식물과 관련된 기능 개발을 진행했다.

 

완료한 기능들은 모두 피움 팀 기술 블로그에 게시하였다.

 


캠퍼스 이동

이번 5주차를 기점으로 캠퍼스 이동을 했고, 월요일부터 선릉 캠퍼스로 출근했다.

선릉으로 캠퍼스를 이동하기 전에 팀원들과 자리에 대해 걱정을 좀 했었는데,,,

다행스럽게도 랜딩 강의장을 사용할 수 있게 되었다 !

이 날 하마드가 자리를 뽑으러 갔는데, 오늘의 운세까지 확인하고 갔다 ㅋㅋㅋ

하마드 기세 덕분에 랜딩 강의장에 자리를 잡을 수 있었다.

개인적으로 바깥이 보이는 환경을 선호하는데, 창가 자리에 앉게 되어서 너무 좋았다.

잠실에서는 자연광을 보지 못하는 강의실에 있던 식물들도 볕이 잘 드는 창가로 옮겼다.

아무튼, 새로운 환경에서 좋은 출발을 할 수 있어서 굿굿 !


HTTPS 적용

본격적으로 HTTPS를 적용하기 전에 HTTPS에 대해 간단히 학습했다. 더불어서 이번주에 헤나가 HTTPS 테코톡을 진행했는데, 설명을 잘 해준 덕분에 관련한 내용을 많이 배웠다. 우리 팀은 HTTPS를 적용하기 위해 Certbot을 사용하기로 했다. 웹서버에 https를 적용하려면 인증서가 필요하고 인증서는 대게 유료로 구입하는 경우가 많은데, Let's Encrypt에서 무료로 발급해주고 있고 Certbot과 함께 사용하기를 권장하기 때문에 Certbot을 사용하기로 결정했다.

Certbot은 Let's encrypt를 이용해서 ssl인증서를 발급, 갱신할 수 있게 도와주는 무료, 오픈소스 툴이다. 구글링을 하면 사용법을 담은 블로그 글이 굉장히 많은데 공식문서가 제일 깔끔하다.

 

Certbot 공식문서를 보면 사용법이 굉장히 쉽고 친절하게 설명되어 있다.

 

아래 사진에서 보이는 running 뒤에 빈칸과 on 뒤에 빈칸에 본인의 환경을 선택하면 된다.

 

 

우리 팀에서 적용한 과정은 피움 팀 블로그 - 내 서버에 HTTPS 설정하기에서 확인할 수 있다.


테이블 DROP 막기

3차 데모데이 요구사항 중 DB 데이터를 drop 할 수 없음 이 존재한다. 팀원들과 함께 어떤 방법으로 해당 요구사항을 구현할 수 있을지 의논했고, 최종적으로 운영 서버에서 사용하는 DB 유저의 권한을 조절하는 방향으로 결정했다.

 

지금까지 로컬 환경에서 개발할 때는 DB 유저가 모든 권한을 가진 상태로 진행했지만, 실제 운영을 하는 서버라면 해당 DB 유저에게 모든 권한을 부여할 수 없을 것이다.

 

실수로 테이블을 DROP 한다거나...? 데이터를 DELETE 해버리는...? 😂

 

관련해서 구글링을 잠깐 해봤는데, 몇몇 회사에서는 전문 DBA에게만 DROP, DELETE 권한을 주는 경우가 있었다.

신입 개발자가 실수로 테이블을 drop 한 내용을 담은 포스팅을 봤는데...

텍스트로만 봐도 무서웠다.

 

결론적으로, 운영 서버에서 DB에 접근하는 유저는 SELECT, INSERT, UPDATE, DELETE 권한만을 가지도록 했다.

DELETE 권한은 부여할지 고민을 조금 했는데, soft delete를 사용하고 있지 않기도 하고.. 그래서 우선은 부여하기로 했다.

우리 팀에서 적용한 과정은 피움 팀 블로그 - Table Drop 못하게 막아버리기에서 확인할 수 있다.


식물 데이터 추가하기

2차 데모데이를 마친 후, 식물 데이터를 더 많이 추가해 달라는 포비의 특별 요구사항이 있었다.

정말 감사하게도 직접 공공데이터 링크까지 남겨주셨다.

그래서 관련한 공공 API를 모두 찾아보았고, 그중에서 피움 서비스와 가장 어울리는 건조에 강한 실내식물  데이터를 추가하기로 했다.

 

API 승인 신청을 완료하고 데이터를 전처리하는 과정에서 가장 큰 문제점은 DB 필드와 다른 부분이 많다는 것이었다.

판다스를 이용해서 전처리하고 데이터프레임화 하는 것도 정제된 데이터가 있어야 가능한데, 데이터 자체가 날 것이다 보니 수작업이 필요한 부분이 많았다.

세 시간 넘게 자리에 앉아서 데이터를 만들었고, 무사히 추가할 수 있었다. ('연봉' 이라는 식물이 있는지 처음 알았다)

노트북 화면이 작아서 엑셀 시트 작업하기가 너무 힘들었다 ㅋㅋㅋ

엑셀을 자주 사용하시는 분들이 왜 큰 모니터를 사용하는지 몸소 느꼈다 !


5주차를 마치며

벌써 5주 차다..!

 

팀 프로젝트 첫 회고를 쓰던 게 어제인 것 같은데 시간이 너무 빠르다.

 

이번 데모데이도 계획한 대로 잘 준비되고 있는 것 같아서 다행이다. 이전 회고에 개인 공부를 시작한다고 했었는데, 공부한 부분이 프로젝트에 도움이 되어서 굉장히 만족스러웠다!

 

JDBC에 대한 강의를 듣고 있는데 인수 테스트를 트러블 슈팅하는 과정에서 빠르게 해결할 수 있었다.

관련한 내용은 하마드가 팀 블로그에 작성 중이다. 아마도 곧 올라올 것 같다 !

 

이번 주는 운동을 거의 못한 것 말고는, 컨디션 관리도 나름 잘 한 것 같아서 만족스럽다.

다가오는 주도 컨디션 관리 잘 해야겠다.

 

 
댓글