3P by neo 2달전 | favorite | 댓글 1개

웹 앱 대부분은 단일 서버에서 운영 가능

  • 웹 개발 씬을 따라가면서 느끼는 바는, 많은 웹사이트와 앱들이 복잡한 인프라를 필요로 하지 않으며, 대부분의 웹사이트와 앱들이 초당 10개 미만의 요청을 받고 바쁜 날에는 50개를 받는 수준임.
  • 전 세계에 엔드포인트가 있으면 지연 시간이 줄어들지만, 데이터에 접근해야 하므로 클라이언트와 20ms 거리에 있더라도 데이터베이스가 그 엔드포인트로부터 200ms 떨어져 있다면 의미가 없음.
  • 캐싱은 유용하지만, 이는 CDN이나 단순한 HTTP 캐싱으로 얻을 수 있음. 업데이트 후 새 파일을 CDN에 푸시하면 대부분의 경우 전체 사이트가 CDN에서 운영될 수 있음.
  • 몇몇 API 엔드포인트가 동적 기능을 위해 필요할 수 있지만, 이는 예를 들어 자바스크립트로 처리할 수 있음.
  • 대부분의 프로젝트는 $5짜리 VPS에서 컨테이너로 실행될 수 있으며, 이는 더 빠를 수도 있음.

GN⁺의 의견

  • 이 기사는 웹 앱 개발에 있어서 과도한 인프라 사용에 대한 비판적인 시각을 제공함. 많은 웹 앱들이 실제로는 간단한 인프라에서도 충분히 운영될 수 있음을 지적하고 있으며, 이는 초급 소프트웨어 엔지니어들에게 인프라 구축 시 과도한 자원 투입을 피하고, 필요한 만큼의 자원을 적절히 사용하는 중요성을 일깨워줌.
  • 기사는 또한 캐싱과 CDN의 중요성을 강조하고 있으며, 이는 웹 앱의 성능을 향상시키는 데 있어 핵심적인 요소임. 이는 웹 개발자들이 성능 최적화를 위해 캐싱 전략을 고려해야 함을 시사함.
  • 웹 앱이 규모가 작거나 트래픽이 많지 않은 경우에는 복잡한 분산 시스템보다는 단일 서버 또는 간단한 클라우드 서비스를 고려하는 것이 비용 효율적일 수 있음. 이는 스타트업이나 소규모 프로젝트에 특히 해당됨.
  • 기사는 웹 개발자들에게 기술 선택에 있어 신중을 기하고, 프로젝트의 실제 요구 사항에 맞는 인프라를 선택할 것을 권장함. 이는 기술의 트렌드에 휩쓸리지 않고 실질적인 요구를 충족시키는 개발을 추구하는 데 도움이 됨.
  • 비판적인 시각으로 볼 때, 이 기사는 대규모 트래픽을 처리해야 하는 대형 웹 앱이나 서비스에는 적용되지 않을 수 있음. 따라서, 프로젝트의 규모와 요구 사항에 따라 적절한 인프라 선택이 중요함을 인지해야 함.
Hacker News 의견
  • 한 사용자는 자신의 프로젝트가 해커뉴스(HN) 첫 페이지에 올랐을 때 5달러짜리 Digital Ocean 드롭렛에서도 트래픽을 잘 처리했다고 확인함. 대부분의 프로젝트는 비동기 응답과 스케줄러/큐를 사용하여 시간에 걸쳐 부하를 수평적으로 분산시키면 충분하다고 주장함. 또한, 새로운 DevOps 문화가 클라우드 앱 배포를 복잡하게 만들었다고 비판하며, 간단한 소프트웨어에 대해 과도하게 확장할 필요가 없다고 지적함.

  • Standard Ebooks는 매달 상당한 페이지 뷰와 전자책을 제공하며, HN 첫 페이지에 3~4번 올랐음에도 불구하고 단일 4GB VPS로 모든 것을 처리함. 'Decline and Fall of the Roman Empire' 전자책을 만들기 위해 더 많은 RAM이 필요해서 2GB에서 4GB로 업그레이드했을 뿐, 그렇지 않았다면 2GB 서버로도 충분했을 것이라고 함. 이에 대한 블로그 포스트 링크를 제공함.

  • 한 엔지니어가 k8s를 배우고 싶어서 선택한 이유 외에는 k8s를 사용하는 이유가 없다고 언급한 사용자는 k8s 때문에 서버 로그조차 볼 수 없다고 불평함. Cloudflare 5달러 플랜으로 충분히 처리할 수 있었을 것이라고 주장함.

  • sqlite.org가 하루에 500,000개 이상의 HTTP 요청을 처리하고 약 200GB의 콘텐츠를 제공하는데 40달러/월의 Linode를 사용한다고 언급함. 만약 당신의 앱이 sqlite.org보다 많은 요청을 처리하지 않는다면, 더 많은 비용을 지불할 필요가 없다고 주장함.

  • 한 사용자는 Oracle Free Tier를 사용하여 백엔드를 무료로 운영하고, Cloudflare 터널링과 페이지를 통해 프론트엔드 통합을 무료로 구현하여 하루 약 10,000개의 요청을 처리하는 여러 웹 앱을 운영하고 있음을 공유함.

  • 개인 웹사이트, 두 개의 멀티플레이어 게임 서버, 터널링을 위한 frp를 포함하여 단일 5유로 서버에서 여러 애플리케이션을 운영하고 있으며, 서버가 포기할 때까지 더 많은 것을 추가할 계획이라고 언급함. 또한, 다른 애플리케이션들도 5유로 VM에서 잘 작동한다고 함.

  • 한 사용자는 Terraform 파일로 인해 실제 기능을 작성하는 것보다 4배 많은 시간을 소비했던 경험을 공유함. 해당 회사는 하루에 1,000번 미만의 히트를 받았다고 함.

  • 4달러/월 VPS가 초당 수천 개의 쿼리를 처리할 수 있다는 사실을 언급한 사용자는 관련 링크를 제공함.

  • 대부분의 웹앱이 단일 기계에서 실행될 수 있지만, 대부분의 고객이 거의 100% 가동 시간을 기대하며, 단일 기계가 고객의 요구 사항을 충족시키지 못한다는 점을 지적함.

  • 복잡한 시스템이 필요하지 않은 기본적인 웹앱에 대해 반대 의견을 제시하는 사용자는, 내부 서비스와 대시보드를 단일 바이너리에서 실행하는 FAANG과 같은 회사들도 있지만, 다운타임이 손실로 직결될 때는 복잡한 시스템의 필요성을 인식하게 된다고 주장함.