일간 회고록(TIL)

    [22.09.18] Daily 회고록 (프록시, 프록시 패턴, 데코레이터 패턴)

    [개인공부] Proxy란 클라이언트 - 서버에 필요한 것을 요청, 서버 - 클라이언트의 요청을 처리Proxy란 대리자를 의미하며 직접호출과 다르게 간접 호출을 하면 대리자가 중간에 여러가지 일을 할 수 있다. 주요 기능 1. 접근 제어 및 캐싱- 권한에 따른 접근 차단- 캐싱- 지연 로딩(JPA 등) 2. 부가 기능 추가- 원래 서버가 제공하는 기능에 더 해서 부가 기능을 수행- 요청 값 중간 변형- 실행 시간을 측정해서 추가 로그 남김 3. 대리자가 다른 대리자를 호출 가능, 클라이언트는 호출 이후의 과정을 모른다 (프록시 체인)[ Client -> Proxy -> Proxy2 -> Proxy3 ] 대체 가능- 객체에서 프록시가 되려면, 클라이언트는 서버에게 요청을 한 것인지, 프록시에 요청을 한 것인..

    [22.09.14] Daily 회고록 (CloudWatch를 활용한 프로젝트 로그 저장, 영어 스피치)

    [일일회고] 하루하루는 생각보다 느리게 가는데, 일주일은 너무 빠르게 지나간다. 추석 때 본가를 다녀오느라 버스에서만 2일을 버린 것도 일조했다고 생각한다 . . 지난 글에 올렸던 영어 스피치 시간이 벌써 다가왔다. 이번주에는 외국인도 두 명 참석해서 8명이나 됐고, 외국인들 이름이 리아랑 아짇나..? 아무튼 발음하기 어려운 이름이였다. 이번주에는 뭔가 나름 전보단 잘 말한 것 같아 뿌듯했다. ㅎㅎㅎ.. 매 주 수요일에 진행되서 수요일의 일정을 물어보는데 늦게 일어나서 수업 하나 듣고 밥 먹고 참석하기 때문에 따로 말할게 없어서 잡담을 더 많이 하는 것 같다. [프로젝트] 추석 일정을 보내고, 공채 하반기 자소서를 작성하느라 글을 많이 작성하지 못했다.. 다음주 토요일에 코딩테스트이기 때문에 프로젝트를 ..

    [22.09.07] Daily 회고록 (TemplateCallback 패턴, 영어 스피치)

    [일일회고] 매 주 수요일은 저녁에 영어 스피치를 다니고 있다. 인스턴트 클럽이라는 곳인데 1회에 5000원으로 영어 스피치에 대한 장벽을 낮추고 오픽 준비를 돕도록 하는 컨텐츠들을 주로 한다. 하루 다녀오면 기가 빨리는 기분.. 1학기에는 외국인들과 했었는데 외국인들과 얘기하다보면 스피킹보다 리스닝에 더 집중하게 된다.. 원어민 교사님들이 우리를 엄청 배려해줬다는 것을 느끼는게 하나도 들리지가 않는다 . 그래서 2학기에 진행하는 스피치는 외국인이 없어서 좀 더 스피킹에 치중할 수 있는 것 같아 개인적으로 더 좋은 것 같다. 올해 겨울방학에는 꼭 오픽을 따야겠다. [개인공부] 디자인 패턴 - TemplateCallback - 기존에 전략 패턴을 이용해 만들었던 로그 추적기를 TemplateCallback..

    [22.09.05] Daily 회고록 (Stomp, Cookie to Session, handshake interceptor)

    웹소켓을 적용하기 전에 익명 사용자의 접속정보를 어떻게 유지할까 고민하다가 쿠키를 사용하여 구분하기로 정해 제작하였었다. 그런데 웹소켓을 적용하자 쿠키를 위해 사용하였던 HttpServletResponse를 STOMP(SockJS) controller의 message mapping에서 이용할 수 없었다. 그 이유를 알아보았는데 일단 쿠키는 HTTP 프로토콜의 비연결성을 지향하여 사용자의 접속 정보를 남기지 않음을 고려하여 HTTP 프로토콜 내에서 상태를 유지하기 위해 사용하는 것인데, 그에 반해 세션은 사용자 정보를 서버 측에서 관리하며 세션 ID를 부여하여 인증상태를 유지한다. websocket은 HTTP와는 다르게 양방향향 통신을 지원하는 OSI 모델의 7계층에 위치한 프로토콜이며, 이를 기반한 st..

    [22.09.03] Daily 회고록 (인프라 재구성 & CodeDeploy 문제 해결)

    [일일회고] 개강하고 나서 수업도 참석하고, 과생활도 하다보니 시간이 매우 빨리 지나간다. 이번에 2023 KAKAO 블라인드 모집도 하여서 작년처럼 면접까지, 운 좋다면 합격할 수 있도록 신청했다. 저번과 달리 이번에는 본사만 모집하는 것으로 보아 점점 개발자의 취업폭이 좁아짐을 느꼈다. 꾸준히 공부하여서 취업 막차를 탈 수 있도록 노력해야겠다. [프로젝트] [소마] - 기존에는 인프라 구성을 기본 vpc에서 간단한 certicifacte manager와 로드밸런서, ec2를 가지고 구축하였는데 이번 중간발표가 끝남과 동시에 인프라 재구성을 시작했다. 모두 public subnet에 넣었던 기존과 달리 private subnet을 구축하여 rds와 activemq를 넣었고, public access를 ..

    [22.08.23] Daily 회고록 (jwt + google oauth2 소셜 로그인)

    [일일회고] 소마 프로젝트 중간 평가가 이번 주 목요일로 거의 하루정도 남았다. 저번주에는 프로젝트에 관한 문서를 작성하고 이번 주는 발표 ppt를 만들면서 프로토타입을 만드는데 집중하고 있다. 기획했던 속도에 비해 MVP가 생각보다 늦게 나와서 이대로 갔을 때 제대로 배포 가능한지 의문이 든다.. 분명 이 점을 중간 평가때도 질문이 들어올텐데 고안을 해보아야겠다. 백엔드 쪽은 불완전하여 리팩토링이 필요하지만 60% 이상은 완성이 된 듯하고, 프론트엔드는 30%정도 완성이 된 것 같다. 나중에 외주 작업도 필요하니 빠르게 작업할 필요가 있는데 프론트엔드 팀원이 첫 프로젝트다 보니 트러블 슈팅에 긴 시간이 소요되어 지연되고 있다. 다음주부터는 개강인데 속도를 맞출 수 있을지 . . [프로젝트] [소마] -..

    [22.08.17] Daily 회고록 (아키텍처, EC2, ALB와 NLB 환경 STOMP test)

    [일일회고] 현재 프로젝트에서 websocket을 stomp를 이용한 pub/sub 관계로 구성을 하고 있는데 stomp를 ec2에 올리니 문제가 많다. 여러 케이스들에서 테스트 해봤는데 각각의 환경에서 발생하는 문제가 달라 해결하는 과정이 길어지고 있다. 각 상황에 대해서 설명하고 나중에 해결될 시 글로 남기려고 한다. [환경] EC2(ubuntu22.04, nginx, websocket관련 헤더 업데이트 완료) AmazonMQ(ActiveMQ) SSL(Certificate Manager) ALB(80 - 443 redirect, 443 - ec2), NLB(80 - ec2, 443 - ec2) Spring Application(8080, 내부에서 ActiveMQ 브로커 호출) 1. EC2로 직접 연결..

    [22.08.14] Daily 회고록 (ActiveMQ, ALB websocket 설정)

    [프로젝트] [소마] 4일 정도 계속해서 웹소켓관련 파트만 잡고 있었다. 단순한 작성 오류로 인해 되지 않던 것부터 해서 웹소켓과 외부 브로커에 대한 잘못된 개념도 바로 잡는 시간을 가졌다. 아직 완벽하게 해결되진 않았지만 빠른 시일내에 해결되리라 생각된다. 목요일에는 온라인으로 이태우 멘토님에게 웹소켓관련 질문을 드려 웹소켓과 외부 브로커에 관한 개념을 바로 잡는 시간을 가졌다. 지금까지 만들었던건 외부 브로커만 있었고 그것을 관리해줄 StompConfig나 WebsocketConfig가 존재하지 않았다. 그래서 금요일에 만들어보고 토요일에 소마 센터에 올라가서 멘토링을 통해 조금의 버그들을 고치고, 로컬 환경에서는 apic을 이용해서 테스트에 성공하였다. 그래서 aws ec2에 올렸는데 websock..