React와 TypeScript를 사용해 어린 시절의 추억이 담긴 '무궁화 꽃이 피었습니다' 게임을웹으로 구현한 프로젝트 'mugunghwa'의 개발기를 적어보려고 합니다. 단순한 게임처럼 보이지만, 실시간 상태 동기화와 사용자 입력 처리에 있어 흥미로운 기술적 도전들이 있었습니다.이 글에서는 특히 게임의 핵심 로직을 어떻게 설계하고 Custom Hooks로 분리했는지에 초첨을 맞춰 이야기해 보겠습니다. 무궁화 꽃이 피었습니다로 순서 추첨?백엔드 서버 구매 없이 간단한 프론트엔드 개발을 하고 싶었던 차에방송인들이나 많은 사람들이 순서 추첨에 핀볼 추첨 웹 게임을 사용하는걸 보고나도 저런거 하나 만들어두고 방치(?) 해두고 싶다 라는 생각에 개발하게 되었습니다. 오징어게임으로도 유명한 우리나라 전통 놀이 ..
길다면 길고, 짧다면 짧았던 6개월이 끝났다.엊그제가 막 시작했던 겨울같은데 짧은 봄을 지나 벌써 습하고 더운 여름이 되었다. 저번 주에 발표, 수료식을 해서 조금 늦은 감이 있지만,짧은 회고글을 남겨본다삼성의 싸피(SSAFY), 현대의 소프티어를 기대하며 LG CNS도 드디어 자체 교육 프로그램이 생기는구나 라는 생각에 지원했던LG CNS KDT 1기, 하고싶은 말도 많고 탈도 많았지만 결과적으로는 하길 잘했다는 생각만 남았다. 지금같은 힘든 시기에 같은 길을 가는 좋은 사람들을 만난 것이 가장 컸고,MSA, Kubernetes, Kafka 같은 기술적인 경험을 원했던 부분들도 꽤나 해소되었다. 특히 나와 같이 기대하고 1기에 들어온 사람이 많았는지다들 관련학과에 학벌, 스펙 좋고 실력도 좋은 사람들로..
Kafka를 학습할 때 가장 먼저 마주하는 개념들이 있다.Topic, Partition, Offset, 그리고 Broker.도대체 이 단어들이 서로 어떤 관계를 맺고 있고,실제 메시지가 어떤 과정을 거쳐 Kafka에 저장되고,소비자(Consumer)가 어떻게 그 메시지를 읽어가는지 흐름이 잘 보이지 않을 때가 많다. Kafka는 단순한 큐 시스템이 아니다.대용량 메시지를 분산 환경에서 안전하게 저장하고, 빠르게 전송하며, 다양한 방식으로 소비할 수 있도록 설계된 데이터 스트리밍 플랫폼이다.이 글에서는 Kafka의 핵심 구조를 하나씩 뜯어보며, 기능과 동작 원리, 그리고 실제 운영 시 고려해야 할 포인트들까지 정리해보려 한다. Kafka 메시지 전달의 흐름 Kafka를 처음 접할 때 가장 먼저 이해해야 할..