개발일기32 실시간 알림 서버에서 부하와 비용 최소화하기 1. 알림서버는 Webflux로 구축하고, 오직 데이터 스트림을 내려주는 역할만 한다.2. 부하를 줄이기 위해 소켓 통신이 아닌 HTTP의 기본 스펙인 가벼운 리얼타임 스트리밍이 가능한 SSE를 이용한다. - 구현이 매우 쉽다는 장점도 있다.3. 단방향 통신이라는 SSE의 단점을 극복하기 위해 데이터 생성, 상태 업데이트에 대한 것은 람다(무료니까!)로 처리한다. - 클라에서 직접적으로 람다를 트리거 하는게 일단 가능한지 여부는 궁금하긴한데, 현재 프론트는 Next로 구현되고 있기 때문에 그것이 가능하든 말든 문제 없다. Next의 백엔드단에서 쏘면 된다.4. 하나의 call 마다 Lambda를 사용하지 않기 위해 SQS를 buffer로써 이용한다. 즉, 여러 요청들을 모아서 람다를 배치(요청 묶음).. 2024. 1. 10. [Spring] 멀티 모듈 버릴게요 MSA를 하기에는 시간이 없고, Facade 레이어를 적용해보면서 아예 레이어간 의존성을 최대한 독립적으로 구성하기 위해 멀티 모듈을 도입했다. 각 레이어의 이름은 마음대로 지었다.컨셉은 하위의 모듈들은 상위 모듈을 참조할 수 없다는 것이다. 그리고 Common 레이어는 다른 레이어를 참조할 수 없다. Gateway: 흔히 Controller 혹은 Presentation 이라고 불리는 레이어이다. 인증을 담당하기도 한다.Service: Facade레이어이다. 핵심 비즈니스 로직이 들어가는 레이어이다.Domain: Domain의 유효성이나 제한 조건들을 검증하는 레이어이다. 도메인 자체의 예외처리는 여기 행해지고, Service(Facade)레이어에서는 예외처리는 최소화하고, 비즈니스 로직에만 집중할 수.. 2024. 1. 3. DynamoDB는 어렵다. DynamoDB의 장점 1. 일정하게, 매우 빠르다. 2. NoSQL이므로 스키마가 자유롭다. (초기 설계가 잘 되었단 가정 하에) 3. 무제한적인 DB 볼륨. 4. 온디맨드 방식으로 자유로운 오토 스케일링. 5. 서버리스. 6. 다른 AWS 서비스들 간의 조합 지원이 잘 되고 자유로움. 위 중 1, 4, 5, 6 장점에 입각하여 사이드 프로젝트에 DynamoDB를 사용해보려고 했다. 하지만 너무 제한 조건이 많았다. 가장 크게 다가온 단점들이 몇가지 있는데, 1. GSI 설정시 요금이 GSI 개수 만큼 n배로 증가. - 솔직히 이건 트래픽이 많지 않을 것이기에 그렇다치는데, 그럼에도 불구하고 내가 원하는데로 인덱스를 설정하지 못하는 것에 대한 불만이 있었다. GSI 최대 설정 개수가 20인데 과연 20.. 2023. 12. 24. ... SWC 오픈소스에 참여할 수 있는 기회를 얻게 되었다. 아... 음 근데 솔직히 일단 잘 모르겠다. (진짜 모르겠단 뜻ㅋㅋ) 어쩐담? 근데 꼭 해내고 싶다. 일단 Rust 언어의 장벽이 다소 크게 느껴진다. founder 분은 크게 급하지 않으니 천천히 하라고 하셨지만, 정말 모르겠다. 혼란스러운데 이런 좋은 기회를 놓치고 싶지는 않다. 원래 지금까지 뭐든 처음부터 쉬운건 없었긴 한데, 성급하게 기회를 잡은 것일지도 모르겠다. 그렇지만 정말, 정말로 잡고 싶고 성공시키고 싶은 기회이기도 하다. 깨달았다. Rust는 이제 메이저 언어라는 것을. 제트브레인에서 만든 Rust IDE가 있다는 사실을 알았다. 마이너한 언어는 전용 IDE를 만들어주지 않는다. 제트브레인이 인정한 언어..!! 꼭 컨트리뷰션에 성공.. 2023. 11. 13. [Stable Diffusion] 스테이블 디퓨젼 후기 Stable Diffusion은 왜 Stable Diffusion인가? Diffusion의 이전 모델은 아예 처음부터 이미지를 생성했었다면, Diffusion 모델은 이미지의 벡터값은 그대로 가져가고 노이즈를 추가한 상태에서 그 흐린 이미지를 점차적으로 원본 이미지로 복원한다. 이미지의 픽셀 값이 높은 농도에서 낮은 농도로 이동한다하여 Diffusion이라 하는 것이다. (디퓨져를 생각해보자!) Stable Diffusion은 '안정적인 Diffusion'이란 뜻에서 Stable Diffusion이라고 이름 지어졌다. 자세한 내용은 말할 수 없지만, 회사에서 AI TF를 진행하게 되어서 Stable Diffusion을 해보고 있는데 상당히 흥미롭고 재미있다. 평소에 관심 있게 보고 있었기에 Stable .. 2023. 9. 6. 이전 1 2 3 4 5 6 7 다음