항해99 일지(23)
-
99 항해 Hanghae I Learned
항해 99 장단점 지난 금요일 항해를 수료했다. 항해는 결국 스스로 찾고 공부하면서 진행되는데 이 과정에서 나를 의심하게 된다. '잘하고있나?' , '많이늘었나?' 그런데 현재 수료한 시점에서 돌이켜보면 실력과 결과물 모두 늘었고 남았지만 가장 변한 건 태도인듯 싶다. 이전엔 당연하게 침대로 향하던 몸뚱아리가 그래도 책상에 먼저 앉게 되었다. 항해의 가장 큰 장점인 것 같다. 내가 알아서 해야되니까 결국 내 태도가 바뀐 것이다. 단점이라함은 정말 자율이다. 방향만 제시해줄뿐 이후엔 알아서 해야한다. 강의를 들어도되고 안들어도 아무도 제재하지 않는다. 결과만 나오면 상관없다. 그래서 사람들의 실력이 정말 천차만별이다. 물론 이전에 배우고 온 사람들, 전공자 또는 꾸준히 열심히해서 잘해지는 사람들이 있지만 ..
2022.08.17 -
95/99 면접 준비하기(1)
면접 준비에 앞서 내 이력서에서 나올 수 있는 질문들에 대비하기 위해 쓰는 글. Nginx nginx는 동시접속 처리에 특화된 웹 서버 프로그램 장점: Apache에 비해 메모리 사용량을 굉장히 효율적으로 관리 동시 요청 처리 속도가 다른 것들에 비해 빠르다. 따라서 전체 웹서버 사용 점유율에서 가장 높은 비율을 차지한다. Nginx를 프록시서버로 두었을때 버퍼오버플로우의 취약점에 의한 공격을 방지할 수 있다. 리버스 프록시를 지원한다. 여기서 리버스 프록시란 서버와 인터넷 사이 위치하여 서버에 보내는 요청을 처리하는 것인데요 -로드 밸런서라는 부하 분산 장치 역할을 할 수 있습니다. 비동기 처리가 가능하기 때문에 Node.js 와의 조합이 좋다. SSL 지원 웹페이지 접근 인증 텍스트 형식의 경우 압축..
2022.08.12 -
95/99 멈춰 있다면
지난 주 최종발표까지 끝냈다. 최종발표에서 느낀 점 1. 나도 그렇고 누구나 그렇듯 멤버 수를 보고 프로젝트를 보지 않는다. 2. 프로젝트는 우리가 바라는 대로 따라주지 않는다. 3. 우리는 매일 봤는데 남들은 처음 보는 것이구나. 최종발표에서 참패의 맛을 보고 그 날 바로 달렸다. 실제로 달렸다. 너무 패배감에 젖어 있을까봐. 주말 내내 회의를 했다. 이 프로젝트에 대해서 어떻게 해나갈지. 첫날엔 인원 충원 얘기가 나왔다. 우리 조 개발자는 3명이고 다른 조에비해 절반, 많은조에 비해선 절반보다도 적다. 물론 세명이서 한 만큼도 안나왔다고 해도 할 말이 없지만, 가장 근본적인 문제로 일손이 달린다는 의견이 나왔는데. 여기까지 온 상황에서 우리 손으로 끝내자고 마무리 되었다. 스코프를 좀 줄이고 , 시간..
2022.08.09 -
86/99 JEST이용 TDD
테스트코드 작성을 시작한지는 꽤 됐는데 처음에 코드를 작성할때는 기능 구현에만 초점이 맞춰져있어서 아 기능만 되면 됐지~ 라는 마인드로 했기때문에 코드가 엉망이여서 여러번 수정하고 또 수정했다. 최대한 한 기능에 한 메소드만 포함시키려고 노력했고 만약 A, B, C 기능에 모두 검색기능이 포함되어야 한다면 검색을 따로 빼서 각 API에 포함시켰다. 다 하고나니까 전에 isMember 라는 미들웨어를 구현해놓은것 처럼 됐다. 결국 A,B,C기능도 검색 결과가 없다면 시작할 필요도 없던 기능이였기때문에 편하게 됐다. 또 테스트 코드를 작성하면서 필요없는 조건들이 정말 많구나 생각이 들었다. 당시에는 꼼꼼하게 예외처리 한다고 달아놓은 조건들이 였는데 다시보니까 터무니없는 조건이거나 앞에 미들웨어에서 이미 충분..
2022.08.02 -
84/99 Socket 중복 생성 트러블 슈팅
socket.io 그리고 namespace에 관하여 문제상황: 사이트 접속과 동시에 소켓이 생성된다. 문제는 disconnect되는 소켓없이 계속 불어나기만했다. 유저가 사이트를 나가기전까지는 계속 connect되기만 한다. 그리고 나가는 동시에 많게는 수십개의 socket이 끊어지는 상황이 생겼다. 이런 문제는 다른 room의 채팅이 보여지거나 두번 세번 중복되어 나오는 문제를 일으켰다. 전에 보고 지나쳤던 네임스페이스가 생각났는데 네임스페이스는 아래설명과 같다. 네임스페이스란 Express의 라우팅처럼 url에 지정된 위치에 따라 신호의 처리를 다르게 하는 기술이다. 서버와 클라이언트가 연결되면 실시간 데이터 공유가 가능한데, socket을 그냥 사용하면 데이터가 모든 socket으로 들어가게 된다...
2022.08.01 -
77/99 실전프로젝트 막바지 코드 리팩토링
이제 어느새 실전프로젝트도 막바지에 다다르고 있나보다. 지난주에 MVP 발표를 허겁지겁 했었는데 또 출시를 눈앞에 두고있다. 날도 덥고 체력이 바닥을 기는거같아서 .. 영양제도 샀다. 오늘은 휴일인데도 홍삼 + 영양제를 더블로 흡수 🫣 30대의 시작인가 싶더라. 물론 러닝도 아직 잘하고 나름 운동도 하니까 괜찮은거겠지. 오늘 WIL 주제는 실전 프로젝트를 하면서 기술적으로 막혔던 부분에대해서. 지난 글에서 언급했던 것 처럼. nginx (http -> https redirect) docker image를 통한 nginx와 Certbot을 이용해서 https로 리다이렉트 하려면 ssl 인증서를 갱신해줘야하는데 그 과정에서 수많은 오류들을 만났다. 일단 Docker-compose 파일에서 volumes로 파..
2022.07.24