글자수 제한이 큰 데이터를 저장해야하는 요구사항에 대해 데이터 모델링 작업을 진행하게 되었다. 그러면서 mysql 의 varchar 타입과 text 타입의 차이점에 대한 차이점에 대해 정리하게 되었다. 먼저 결론은 다음과 같다. 물론 DBMS 서버스펙이나 데이터 모델 그리고 유입되는 트래픽에 따라서 미치는 영향도가 다를수 있다는점을 감안해야 한다....
swagger 사용시 패키지가 다른 동일 클래스를 구별하지 못하는 이슈
자바/스프링부트 기반 애플리케이션에서 응답 모델 구현시 inner 클래스명이 겹치다보면 swagger-ui 에서 클래스를 정확하게 구분하지 못하는 이슈가 생길수 있다. 아래 출처 포스팅 내용처럼 use-fqn 옵션을 활용하면 Schema 가 패키지를 포함하여 관리되므로 위와 같은 이슈를 해결할 수 있다. 자세한 내용은 출처 포스팅에 잘 정리되어 ...
[디자인패턴] 상태 패턴(State Pattern)
아래 출처 포스팅이 정리가 잘 되어 있습니다. 기록용으로 남깁니다😊 출처 https://johngrib.github.io/wiki/pattern/state/
AWS ECS 기반 MSA 환경에서 서버리스 스케줄링 아키텍처 구축기
배경 제품 비즈니스 요구사항중 휴직이 시작/종료된 구성원들에 대해 재직상태를 즉시 갱신시켜줘야 하는 요구사항이 도출되었다.(이전까지는 관리자가 수동으로 재직상태를 업데이트 해주는 방식이었음) AWS ECS 기반 MSA 환경에서 첫 스케줄링이 필요한 요구사항이었고 이를 해결하고자 시작하게 되었다. 클라우드 아키텍처 설계 이전까지 사내 프로젝트들은 모...
AWS 서버리스 아키텍처 기반 2,000여명 고객사 인사데이터 동기화 시스템 구축기
배경 임직원 규모가 1,000명 이상인 기업에선 자사 인사 관리 시스템(HCM)과 외부 서드 파티 솔루션의 임직원 데이터를 이중화 관리해야 하는 번거로움이 존재한다. Open API가 구축되지 않은 상황에서 위 문제를 해결하기 위해 고객사에서 동기화 시스템 구축을 제품 도입 조건으로 제안하게되어 시작하게 되었다. 클라우드 아키텍처 설계 현재 사내에...
클린아키텍처 내용 정리
‘클린 아키텍처’ 기술 서적에 대해 학습했던 내용을 정리하기 위한 목적의 TIL 포스팅입니다.🙆♂️ 1부 - 소개 1장 - 설계와 아키텍처란? 목표는? 소프트웨어 아키텍처의 목표는 필요한 시스템을 만들고 유지보수하는데 투입되는 인력을 최소화하는데 있다. 새로운 기능을 출시할 때 마다 비용이 증가한다면 나쁜 설계라 볼수 있다....
[Java] HashSet은 어떠한 이유로 순서를 보장하지 않을까
HashSet 은 중복을 허용하지 않고 순서를 보장하지 않는다는 것은 많은 이들이 알고 있을 것이다. 그러면 어떠한 이유로 인해 순서를 보장하지 않을까? 라고 접근해봤을때 아주 잘 정리된 포스팅이 있어 여기를 참고하면 좋다.(✨정독 강추✨) 짧게 요약하면 다음과 같다. HashSet 은 내부적으로 HashMap 으로 구현되어 있다. Key Ob...
객체지향의 사실과 오해 내용 정리
‘객체지향의 사실과 오해’ 학습 내용을 정리하기 위한 목적의 TIL 포스팅입니다🙆♂️ Chapter1-협력하는 객체들의 공동체 객체지향의 목표는 실세계를 모방하는 것이 아니라 새로운 세계를 창조하는 것이다. 협력하는 사람들 커피 공화국의 아침 손님, 캐시어, 바리스타는 주문한 커피를 손님에게 제공학 위해 협력하는 과정...
AWS Lambda 개요
아래 출처 포스팅이 정리가 잘 되어 있습니다. 기록용으로 남깁니다😊 출처 https://inpa.tistory.com/entry/AWS-%F0%9F%93%9A-%EB%9E%8C%EB%8B%A4Lambda-%EA%B0%9C%EB%85%90-%EC%9B%90%EB%A6%AC
JWT 저장 위치
액세스 토큰은 프로그램상 자바스크립트 로컬 변수에 저장하고, http 헤더에 bearer 토큰으로 담아서 매 요청마다 보내도록 하자. 액세스 토큰을 쿠키에 담으면 CSRF 공격에 취약해진다. 즉, 해커가 내 인증정보를 활용해서 서버에 나인것처럼 속여서 요청을 보낼 수 있게 된다. 로컬스토리지는 사용...