
How Figma's multiplayer technology works를 번역한 글입니다. Overview 2015년, 멀티 플레이어 기능을 솔루션에 도입하고자 함. 다른 디자인 툴들에서는 이 기능이 없었던 상황이고, 구글 독스에서 사용하는 멀티 플레이어 알고리즘의 표준격인 Operational Transforms (OT)를 사용하고 싶지는 않았음. 빠르게 피쳐를 전달해야하는 우리 시스템에 OT는 불필요하게 복잡했음. 그래서 더 심플하고 사용하기 쉽게 새로 만들고자 함. 주변에서 멀티 플레이어 기능에 대한 부정적인 의견이 있었지만, 진행했음. 이 기능을 통해 export, sync, email copy 등의 작업을 제거할 것이고, 더 많은 사람들이 디자인 프로세스에 포함될 수 있을 것이라고 생각. 단순..

RabbitMQ, Kafka를 들어보기도 하고, 사내에서 사용하기도 하다보니 찾아보며 공부하는 것이 좋겠다 싶어 이렇게 정리하게 되었습니다. 뭐, 대충 어떠한 역할을 하는지는 알고 있었지만, 제일 중요한 "왜 필요한지?"에 대해서는 확실히 대답하지 못하는 것 같아 찾아보며 공부해보고자 합니다. RabbitMQ, Kafka 등 이러한 메세징 SW들을 찾다보니 이들을 이루는 구조, 이론 등이 있었고, 이를 먼저 정리해보고자 합니다. 3가지 단어가 자주 등장을 하는데요, 이걸 먼저 조금씩 알고 넘어갑시다. MOM (Message Oriented Middleware): 메시지 미들웨어의 이론, 개념, 설계도를 의미 Message Queue: 메시지 큐에 대해선 어떻게 보냐에 따라 의견이 나뉘는 것 같습니다. 단..

Stream 정리 글들을 보다보면 종단 연산 전까지는 연산이 수행되지 않는다고 한다. -> 그럼 어떻게 연산을 하는 건가? 연산 과정은 대략적으로 아래와 같다. - 정확하지 않고 이해를 위해 쉽게 표현했다. - Stream 데이터를 가지고 Map, Filter 같은 중간 연산을 거쳐 foreach 같은 종단연산까지 여러 스트림 클래스들로 쌓여진다. - 종단연산을 만나면 이제 스트림으로 쌓아놨던 데이터들을 가져오기 시작한다. 맨 위 종단연산에서 기존 데이터가 필요해 아래 스트림을 까게 되고, 그 과정이 반복되다보면 맨 아래 본 데이터를 가지고 스트림 연산을 수행하고 그 결과를 가져오고 가져오고 하는 행위가 수행된다. - 그 과정에서 중간 연산으로 데이터들이 조정되고 수정되고 필터된다. 그렇게 마지막 종단 ..
- Total
- Today
- Yesterday
- 백준
- boj
- k8s
- Log
- c++
- 쿠버네티스
- 클린 아키텍처
- Clean Architecture
- 로그
- 알고리즘
- tag
- 일상
- docker
- Algorithm
- HTTP
- Spring boot
- jasync
- 비동기
- 하루
- MySQL
- Intellij
- Istio
- WebFlux
- python
- Kubernetes
- OpenTelemetry
- gradle
- container
- java
- Spring
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |