![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cYinyO/btr0xMuwolH/SX0HUWDz5c2nocFXLF4Dk0/img.png)
How Figma's multiplayer technology works를 번역한 글입니다. Overview 2015년, 멀티 플레이어 기능을 솔루션에 도입하고자 함. 다른 디자인 툴들에서는 이 기능이 없었던 상황이고, 구글 독스에서 사용하는 멀티 플레이어 알고리즘의 표준격인 Operational Transforms (OT)를 사용하고 싶지는 않았음. 빠르게 피쳐를 전달해야하는 우리 시스템에 OT는 불필요하게 복잡했음. 그래서 더 심플하고 사용하기 쉽게 새로 만들고자 함. 주변에서 멀티 플레이어 기능에 대한 부정적인 의견이 있었지만, 진행했음. 이 기능을 통해 export, sync, email copy 등의 작업을 제거할 것이고, 더 많은 사람들이 디자인 프로세스에 포함될 수 있을 것이라고 생각. 단순..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/cjnBlj/btrax79a8Bn/7Y6xDJoEIpkXDvgVMEmwo1/img.jpg)
RabbitMQ, Kafka를 들어보기도 하고, 사내에서 사용하기도 하다보니 찾아보며 공부하는 것이 좋겠다 싶어 이렇게 정리하게 되었습니다. 뭐, 대충 어떠한 역할을 하는지는 알고 있었지만, 제일 중요한 "왜 필요한지?"에 대해서는 확실히 대답하지 못하는 것 같아 찾아보며 공부해보고자 합니다. RabbitMQ, Kafka 등 이러한 메세징 SW들을 찾다보니 이들을 이루는 구조, 이론 등이 있었고, 이를 먼저 정리해보고자 합니다. 3가지 단어가 자주 등장을 하는데요, 이걸 먼저 조금씩 알고 넘어갑시다. MOM (Message Oriented Middleware): 메시지 미들웨어의 이론, 개념, 설계도를 의미 Message Queue: 메시지 큐에 대해선 어떻게 보냐에 따라 의견이 나뉘는 것 같습니다. 단..
![](http://i1.daumcdn.net/thumb/C148x148/?fname=https://blog.kakaocdn.net/dn/kzCcK/btqZ6iOIL4A/1WhEL6uzqvMEwtSl6gkbkK/img.png)
Stream 정리 글들을 보다보면 종단 연산 전까지는 연산이 수행되지 않는다고 한다. -> 그럼 어떻게 연산을 하는 건가? 연산 과정은 대략적으로 아래와 같다. - 정확하지 않고 이해를 위해 쉽게 표현했다. - Stream 데이터를 가지고 Map, Filter 같은 중간 연산을 거쳐 foreach 같은 종단연산까지 여러 스트림 클래스들로 쌓여진다. - 종단연산을 만나면 이제 스트림으로 쌓아놨던 데이터들을 가져오기 시작한다. 맨 위 종단연산에서 기존 데이터가 필요해 아래 스트림을 까게 되고, 그 과정이 반복되다보면 맨 아래 본 데이터를 가지고 스트림 연산을 수행하고 그 결과를 가져오고 가져오고 하는 행위가 수행된다. - 그 과정에서 중간 연산으로 데이터들이 조정되고 수정되고 필터된다. 그렇게 마지막 종단 ..
- Total
- Today
- Yesterday
- container
- gradle
- Kubernetes
- tag
- k8s
- 알고리즘
- MySQL
- Spring
- Log
- HTTP
- java
- Algorithm
- 하루
- WebFlux
- 일상
- python
- 클린 아키텍처
- Intellij
- OpenTelemetry
- Istio
- 백준
- Spring boot
- docker
- 로그
- boj
- 쿠버네티스
- c++
- Clean Architecture
- jasync
- 비동기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |