스레드의 성공 뒤에 숨겨진 메타의 인프라 기술 이야기

메타 스레드 성공 비결

우리가 살아가는 디지털 세상에서, 특정 제품이나 서비스가 대중에게 소개되어 큰 성공을 거두기까지는 수많은 배경이 필요합니다. 특히, 2023년 7월에 출시되어 첫 5일간 무려 1억 명이 가입한 메타의 스레드의 경우, 그 성공 뒤에는 메타의 혁신적인 인프라 기술이 자리잡고 있었다고 합니다. 메타의 인프라 기술은 단순히 한두 가지의 기술적 진보가 아닌, 10년 이상에 걸친 인프라 및 제품 개발의 결정체라고 할 수 있습니다.

사실 소규모의 엔지니어 팀이 단 5개월이라는 기간 동안 스레드를 구축했다는 사실은, 기술 개발 분야에서 상당한 성과로 평가받을 만합니다. 그런데 여기서 우리가 주목해야 할 더 중요한 사실은, 스레드를 위해 처음부터 새롭게 인프라를 구축한 것이 아니라, 메타가 이미 수년간 여러 제품을 위해 구축해온 인프라를 활용했다는 점이죠.

스레드에 사용한 주요 기술인 분산 키밸류 스토어 ‘ZippyDB’와 비동기 서버리스 함수 플랫폼 ‘Async’는 메타가 오랜 기간 동안 다져온 인프라의 핵심이며, 스레드와 같은 새로운 서비스가 대규모 사용자 증가에도 불구하고 안정적으로 운영될 수 있는 기반을 제공했습니다. 오늘 이 글에서는 스레드가 급속도로 성장할 수 있었던 비밀, 즉 메타가 어떻게 기존의 인프라를 통해 이러한 성공을 이끌어낼 수 있었는지에 대해 자세히 살펴보도록 하겠습니다.

ZippyDB와 TAO

스레드의 눈부신 성장과 안정적인 성능의 비밀은, 메타가 보유한 강력한 데이터 관리 시스템인 ZippyDBTAO에 뿌리를 두고 있다고 합니다. ZippyDB는 분산 키/밸류 데이터베이스로서, 처음부터 엔지니어들이 완전 관리형 서비스로 쉽게 확장하고 축소할 수 있는 플랫폼을 제공하는 기술입니다. 이는 스레드와 같은 새로운 서비스가 수백만, 혹은 수억의 사용자 데이터를 안정적으로 처리하고, 이를 여러 데이터 센터에 유연하게 배치함으로써, 전 세계 어디서나 빠른 접근성을 보장하는 기술이죠.

소셜 그래프 저장소인 TAO는 MySQL을 기반으로 하지만, ZippyDB와 함께 사용되면, 각각의 데이터 저장소가 가지는 장점을 최대한 활용할 수 있습니다. ZippyDB는 주로 카운터, 피드 순위/상태, 검색 등의 기능에 사용되며, TAO는 사용자 간의 관계와 상호작용을 효과적으로 관리합니다. 즉, 이 두 시스템의 결합은 스레드가 대규모 사용자 기반을 가지고도 높은 수준의 서비스를 지속적으로 제공할 수 있는 기술적 기반을 마련해 주는 것이죠.

이처럼 메타의 인프라는 단순히 하드웨어의 물리적 확장을 넘어, 데이터 관리와 처리의 지능화를 추구합니다. 그리고 이런 접근 방식은 스레드가 시장에 빠르게 적응하고, 사용자 경험을 지속적으로 개선할 수 있는 핵심 요소가 되었습니다.

Engineering at Meta

스레드의 무중단 확장성을 확보하는 ZippyDB 리샤딩

스레드의 기술적 성공 이야기에서 빼놓을 수 없는 중요한 부분은 ZippyDB의 최적화 및 리샤딩 프로세스입니다. 이는 스레드의 데이터 스토리지를 무중단으로 확장할 수 있는 핵심 기술로, ZippyDB의 리샤딩 프로토콜은 클라이언트에 영향을 주지 않으면서도 완전한 일관성과 정확성을 유지하며, 필요에 따라 샤딩 요소를 신속하게 증가시킬 수 있습니다. 이를 통해, 스레드는 급격한 사용자 증가나 데이터 요구 사항의 변화에 신속하게 대응할 수 있는 유연성을 제공할 수 있습니다.

더욱 인상적인 것은, 새로운 물리적 샤드 세트를 프로비저닝하고, 클라이언트에 새로운 논리적-물리적 샤드 매핑을 라이브 구성 변경을 통해 설치함으로써, 어떠한 다운타임도 발생하지 않게 하는 리샤딩 방법으로, 이런 접근 방식은 스레드가 사용자 경험에 영향을 주지 않으면서도 빠르게 확장할 수 있는 기술적 기반을 마련해줍니다.

또한 리샤딩 작업은 수평적으로 확장 가능하게 설계되어 있어, 스레드 출시와 같은 상황에서 리샤딩 속도를 높일 필요가 있을 때, 이를 신속히 수행할 수 있습니다. 이는 갑작스러운 사용 사례의 성장을 쉽게 처리할 수 있도록 하는 비상 운영자 도구의 개발과 함께, 메타의 인프라가 얼마나 잘 준비되어 있는지를 보여줍니다. 이 모든 것은 스레드가 사용자의 기대를 초과하는 성능과 안정성을 제공할 수 있게 하는 데 결정적인 역할을 합니다.

unsplash

Async: 서버리스 아키텍처를 통한 효율적 워크로드 관리

스레드의 성공적인 론칭과 지속 가능한 성장은 단순히 데이터 관리의 최적화에만 의존하는 것이 아니라, 워크로드의 효율적인 처리와 실행 능력의 확장에도 크게 의존합니다. 메타가 개발한 서버리스 함수 플랫폼인 Async는 이런 과제를 해결하는 데 중심 역할을 합니다. 개발자들은 Async를 통해 솔루션 개념부터 생산 배포까지의 시간을 대폭 단축할 수 있으며, 이를 통해 스레드와 같은 서비스가 시장의 변화에 빠르게 대응하고 사용자 경험을 지속적으로 개선할 수 있는 기반을 확보할 수 있습니다.

Async는 하루에 수조 개의 함수 호출을 처리할 수 있는 놀라운 처리 능력을 보유하고 있으며, 다양한 프로그래밍 언어의 지원을 통해 수많은 개발자 커뮤니티를 커버하고 있습니다. 이는 배포, 큐잉, 스케줄링, 확장, 재해 복구 및 준비의 세부 사항을 추상화함으로써 개발자가 핵심 비즈니스 로직에 더욱 집중할 수 있도록 만들며, 특히, 스레드에서는 Async가 Instagram에서 이미 팔로우하는 사람들을 스레드에서도 팔로우할 수 있게 하는 기능을 통해, 커뮤니티 구축을 빠르게 지원하는 데 필수적인 역할을 했습니다.

실제로, 스레드의 첫 출시 후 5일 동안 1억 명의 사용자를 처리하기 위해서는 상당한 처리 능력이 필요했을 겁니다. Async는 이런 증가된 부하를 우아하게 흡수하고, 필요한 작업을 몇 초에서 몇 시간 후에 수행할 수 있도록 큐잉함으로써, 사용자 경험을 방해하지 않는 서비스의 지속적인 제공을 보장했습니다. 이처럼 Async는 스레드의 기술적 인프라의 핵심 부분으로서, 급속도로 변화하는 디지털 환경에서의 성공적인 서비스 제공에 필수적인 요소가 되고 있습니다.

Engineering at Meta

인프라와 문화의 결합

스레드의 놀라운 출시 속도와 그 이후의 성공은 단순히 기술적 우수성만이 아닌, 메타의 엔지니어링 문화와 인프라가 조화롭게 결합된 결과라고 할 수 있습니다. 메타의 인프라는 고도로 자동화되어 있으며, 엔지니어링 팀은 이를 활용해 단기간 내에 필요한 용량을 확보하고, 작업 부하를 자동으로 재분배하며 로드 밸런싱과 확장을 원활하게 진행할 수 있습니다. 이는 스레드와 같은 새로운 제품이 시장에 빠르게 진입하고, 사용자 기반을 급속히 확장할 수 있는 기반이 되어줍니다.

또한, 스레드의 신속한 개발과 성공적인 론칭은 메타의 엔지니어링 문화가 얼마나 강력한지를 잘 보여준 사례라고 볼 수 있습니다. 메타의 제품 팀은 오랜 시간 동안 테스트를 견딘 공유 인프라를 활용하여 빠르게 움직이고, 협력하여 대규모의 공동 목표를 효율적으로 달성하는 데 집중합니다. 메타의 엔지니어들은 강력한 주도권을 가지고 있으며, 이를 통해 높은 수준의 혁신과 성공적인 제품 개발을 이루어냅니다.

이런 문화는 메타가 빠르게 움직이는 엔지니어링 문화를 추구하며, 모든 팀 멤버가 대규모 공동 목표에 대해 명확하고 강한 소유권을 가질 수 있도록 독려합니다. 이는 메타가 급변하는 디지털 환경 속에서도 지속적으로 혁신하고, 새로운 기술적 도전을 성공적으로 극복할 수 있는 원동력이며, 스레드의 성공은 이런 문화와 인프라의 결합이 얼마나 강력한 결과를 낼 수 있는지를 증명하는 사례로 볼 수 있습니다.

unsplash

마치며

메타의 스레드 프로젝트는 단순히 또 하나의 소셜 미디어 플랫폼을 출시했다는 사실을 넘어, 기술적 우수성과 엔지니어링 문화의 결합이 어떻게 대규모 성공을 이룰 수 있는지를 명확하게 보여주는 사례입니다. 이 프로젝트를 통해 메타는 자사의 강력한 인프라와 민첩한 엔지니어링 문화가 어떻게 혁신적인 제품을 신속하게 시장에 출시하고 성공적으로 확장할 수 있는지를 입증해보였습니다.

ZippyDB와 TAO, 그리고 Async와 같은 고도로 자동화된 시스템을 통해, 메타는 스레드를 위한 견고하고 확장 가능한 인프라를 구축했으며, 이런 시스템들은 메타의 엔지니어링 팀이 대규모 데이터 관리와 워크로드 처리를 효율적으로 수행하게 함으로써, 스레드의 론칭 초기부터 수억 명의 사용자를 빠르고 안정적으로 지원할 수 있게 만들었습니다.

또한, 인상적인 것은 이 과정에서 메타의 엔지니어링 문화가 큰 역할을 했다는 것이죠. 엔지니어들은 강한 주도권과 협력을 바탕으로 공동 목표를 효율적으로 달성했으며, 이는 스레드의 개발과 확장 과정에서의 빠른 결정과 실행을 가능하게 했습니다. 메타는 이를 통해 복잡하고 변화무쌍한 디지털 환경에서도 지속적인 혁신을 이루어내며, 사용자들에게 우수한 서비스를 제공할 수 있는 기반을 마련할 수 있었습니다.

이렇게, 메타가 스레드의 인프라를 구축한 방법은 단순히 기술적 우수성을 넘어서, 강력한 인프라와 엔지니어링 문화의 결합이 얼마나 중요한지를 잘 보여줍니다. 이는 다른 기업들에게도 중요한 교훈이 될 수 있으며, 미래의 기술적 도전과제를 해결하는 데 있어 이런 접근 방식이 얼마나 효과적일 수 있는지를 보여줍니다. 결국, 메타의 성공은 기술과 문화가 어우러져 혁신을 추구할 때, 그 어떤 어려움도 극복할 수 있음을 증명하는 강력한 사례라고 할 수 있습니다.

참고 자료: Engineering at Meta, “How Meta built the infrastructure for Threads”

답글 남기기