한 개발자가 런던의 한 아파트 선반 위에서 6개의 저렴한 ESP32-S3 마이크로컨트롤러(microcontroller)를 이용해 개인 웹사이트를 직접 호스팅하는 독특한 프로젝트를 공개했습니다. 이 시스템은 클라우드, CDN(콘텐츠 전송 네트워크), 라즈베리 파이(Raspberry Pi) 같은 일반적인 인프라 없이 순수하게 마이크로컨트롤러만으로 웹 서비스를 제공하며, 자체 로드 밸런싱(Load Balancing)과 장애 복구(Failover) 기능을 구현했습니다.
이 시스템은 4개의 ESP32-S3 보드가 암호화된 무선 통신을 통해 리더(leader)를 선출하는 방식으로 작동합니다. 선출된 리더는 가상 MAC 주소와 라우터(router)가 포트 포워딩(port forwarding)하는 단일 LAN 주소를 사용하여 레이어 4 TCP 스플라이서(splicer) 역할을 합니다. 즉, 외부 연결을 받아 가장 한가한 다른 블레이드(blade)로 원시 바이트(raw bytes)를 중계합니다. 이 블레이드는 TLS 1.3 암호화를 처리하고 자체 플래시(flash) 메모리에서 웹 페이지를 제공합니다. 리더가 고장 나더라도 다른 블레이드가 4초 이내에 새로운 리더가 되어 동일한 MAC 주소와 인증서로 서비스를 이어갑니다. 심지어 모든 블레이드가 고장 나고 하나만 남더라도, 해당 블레이드는 자체적으로 연결을 처리하며 서비스를 유지합니다. 2개의 추가 보드는 시스템 상태를 실시간으로 모니터링하여 디스플레이에 표시합니다.
이 프로젝트는 웹 호스팅에 대한 고정관념을 깨고, 저비용 하드웨어만으로도 안정적이고 분산된 시스템을 구축할 수 있음을 보여줍니다. 특히, 클라우드 종속성을 벗어나 자체 인프라를 구축하려는 시도는 기술적 독립성을 추구하는 이들에게 큰 영감을 줄 수 있습니다. 또한, 이 시스템은 모든 블레이드에 동일한 프로그램이 탑재되어 있고, 무선 통신을 통해 실시간으로 상태를 공유하며, 펌웨어(firmware) 업데이트 시에도 롤백(rollback) 기능을 통해 안정성을 확보하는 등 견고한 설계 원칙을 따르고 있습니다. 이는 분산 시스템 설계와 임베디드(embedded) 시스템 개발에 대한 깊은 이해를 바탕으로 한 결과이며, 소규모 프로젝트나 개인 웹사이트 운영에 새로운 가능성을 제시합니다.