웹 애플리케이션은 현대 기업의 핵심입니다. 이러한 애플리케이션이 느리거나 사용할 수 없는 경우 사용자 경험이 즉시 악화되고 기업에서는 그 영향을 빠르게 느낍니다.
2021년 10월, Facebook, Instagram, WhatsApp에서 6시간 이상의 다운타임이 발생하여 Facebook은 약 6,000만 달러의 수익을 잃었습니다. 이후 Facebook의 주가가 폭락하면서 회사의 시가 총액은 수십억 달러의 손실을 입었습니다.
모든 웹 애플리케이션 장애가 Facebook의 장애만큼 심각하거나 비용이 많이 드는 것은 아닙니다. 그러나 비교적 작고 일시적인 문제도 회사의 수익에 영향을 미칠 수 있습니다. 전자 상거래 웹 사이트가 조금이라도 느리면 사용자는 다른 사이트로 이동하게 되고, 다시는 돌아오지 않을 수도 있습니다.
웹 애플리케이션 문제가 재정 및 평판에 심각한 영향을 미칠 수 있으므로 회사의 기술 리더는 애플리케이션 성능과 가용성을 유지하는 것을 최우선 과제로 삼아야 합니다. 반응성이 뛰어나고 안정적인 경험을 제공하려면 몇 가지 포인트 솔루션을 조합하는 것 이상의 노력이 필요합니다.
기술 리더는 개발 프로세스 개선, 애플리케이션 아키텍처 최신화, 보안 위협에 대처하는 방법 재고 등 다각적인 전략을 수립해야 합니다. 이러한 전략을 구축하는 첫 번째 단계는 웹 애플리케이션이 때때로 실패하는 이유를 이해하는 것입니다.
일부 장애는 Facebook 중단을 초래한 특정 인적 오류와 같은 비정상적 문제로 인해 발생하지만, 성능과 가용성에 부정적인 영향을 미칠 수 있는 몇 가지 일반적인 문제가 있습니다. 특히, 부실하게 작성된 코드, 복잡한 아키텍처, 사이버 위협은 많은 조직에 과제를 안겨 줍니다.
부실하게 작성된 코드: 많은 경우 성능과 안정성은 코드의 품질과 직접적인 관련이 있습니다. 예를 들어, 비효율적인 데이터베이스 요청이 있는 클라우드 기반 애플리케이션은 요청이 확장됨에 따라 속도가 느려질 수 있습니다. 드문 상황에서만 트리거되는 버그를 포함하여 버그로 인해 웹 애플리케이션이 갑자기 중단될 수도 있습니다.
개발자가 실수로 코드에 취약점을 남겨두어 웹 애플리케이션이 데이터 도난, 웹 서버 손상 등의 피해로 이어지는 zero-day 익스플로잇 위험에 노출될 수도 있습니다. 예를 들어, 2017년에는 Equifax의 웹 애플리케이션 프레임워크에 있는 패치되지 않은 취약점으로 인해 데이터 유출이 발생하여 1억 4,700만 명 이상이 영향을 받았습니다.
웹 사이트에서는 비효율적인 코딩 및 디자인 때문에 성능 문제가 발생하는 경우가 많습니다. 페이지에 가장 중요한 페이지 콘텐츠보다 먼저 로드되는 불필요한 코드가 포함되어 있어 전체 로드 시간이 느려질 수 있습니다. 또한압축되지 않은 큰 이미지를 사용하는 웹 사이트는 사용자에게 실망스러울 정도로 느린 페이지 로드를 초래할 수 있습니다.
복잡한 아키텍처: 복잡한 아키텍처나 레거시 네트워크 아키텍처는 심각한 성능 및 가용성 문제의 또 다른 원인입니다. 예를 들어 부하 분산을 사용하지 않는 아키텍처에서는 트래픽때문에 한 서버에 과부하가 걸리면 성능 및 대기 시간 문제가 발생할 수 있습니다.
또한 사용자와 웹 서버 사이에 네트워크 정체가 발생하면 사용자에게 대기 시간이 발생할 수 있습니다. 두 지점 사이의 최단 경로가 항상 가장 빠른 경로인 것은 아닙니다. 물론 사용자와 웹 서버 간의 물리적 거리 때문에 특히 원격 사용자가 수천 마일 떨어져 있는 경우 대기 시간이 발생할 수 있습니다.
사이버 위협: 웹 애플리케이션에 대한 공격은 잠재적으로 주요 장애 원인입니다. 특히악의적인 봇과 분산 서비스 거부(DDoS) 공격으로 인해 성능이 크게 저하되거나 애플리케이션을 완전히 사용할 수 없게 될 수 있습니다. 예를 들어, 2018년에 GitHub는 최근 몇 년 동안 가장 유명한 DDoS 공격 중 하나인 대규모 DDoS 공격으로 인해 이용할 수 없게 되었습니다. 다행히도 이 조직에서는 DDoS 방어 서비스를 사용하고 있었기 때문에 약 20 분 만에 공격을 차단할 수 있었습니다.
애플리케이션 인프라에서 필수적인 역할을 하는 애플리케이션 프로그래밍 인터페이스(API)도 자주 공격 대상이 됩니다 . 악의적인 봇, DDoS 공격 등API 관련 공격은 성능에 영향을 미치고 조직을 데이터 유출에 노출시킬 수 있습니다.
조직에서는 웹 애플리케이션을 안전하고 안정적이며 우수한 성능으로 유지하기 위해 멀티포인트 솔루션을 축적해 두었을 수 있습니다. 그러나 이들 솔루션은 하드웨어 기반 장비를 통해 제공되든 클라우드 서비스로 제공되든 관계없이 심각한 한계가 있는 경우가 많습니다.
첫째, 하드웨어 기반 솔루션을 사용하려면 수신할 트래픽 양을 추정해야 합니다. 하드웨어 기반 방화벽을 사용하고 트래픽이 예측을 초과하는 경우 방화벽은 트래픽을 삭제하여 검사 없이 통과시킵니다. 또한 이러한 솔루션은 특정 구성 요소가 있는 시스템을 구매해야 할 수 있으므로 공급망 문제가 발생하기 쉽습니다. 그리고 전반적으로 하드웨어를 새로 구매할 때마다 운영, 관리, 유지 관리 비용이 늘어납니 다.
AWS 또는 Azure와 같은 퍼블릭 클라우드 벤더의 네트워킹 및 보안 솔루션을 이용하면 자본 지출을 없앨 수 있습니다. 하지만 조직에서는 이러한 클라우드를 사용할 때 클라우드에서 데이터를 이전할 때 발생하는 데이터 송신료 등 숨겨진 비용에 직면하는 경우가 많습니다. 또한 이러한 솔루션은 조직이 단일 클라우드에서만 비즈니스를 운영하는 경우에 가장 효과적인 경향이 있습니다. 이러한 솔루션은 멀티 클라우드 또는 하이브리드 환경을 위해 설계되지 않았습니다. 클라우드 공급자는 다른 공급자의 서비스 사용을 촉진할 인센티브가 거의 없기 때문입니다.
성능과 보안을 개선하기 위한 새로운 전략을 구축하기 시작할 때는 솔루션 요구 사항을 신중하게 정의해야 합니다. 대부분의 조직에서는 확장성, 멀티클라우드 지원을 위한 유연성, 클라우드 전반에 걸친 가시성, 긴밀하게 통합된 기능을 결합한 솔루션을 필요로 합니다.
확장성: 비즈니스가 빠르게 성장하고 있다면 확장성은 절충할 수 없습니다. 강력한 성능과 가용성을 유지하면서 웹 애플리케이션에 더 많은 방문자를 수용하고 잠재적으로 더 많은 공격을 방어할 수 있는지 확인해야 합니다.
멀티클라우드: 멀티클라우드 및 하이브리드 클라우드 환경에 대한 지원도 중요합니다. 오늘날 대부분의 조직에서는 둘 이상의 퍼블릭 클라우드를 이용하며 하이브리드 환경을 보유하고 있는 조직이 많습니다. 단일 클라우드 공급자에게만 묶여 있는 솔루션을 선택하는 것은 의미가 없습니다.
가시성: 새로운 솔루션은 단순히 여러 클라우드를 수용하는 것이 아니라 전체 멀티 클라우드 환경에 대한 가시성과 제어 능력을 제공해야 합니다. 사용자는 웹 애플리케이션에 영향을 미칠 수 있는 모든 보안 문제와 네트워크 문제를 빠르게 파악하고 해결해야 합니다.
통합: 보안 및 네트워킹 솔루션이 함께 작동해야 합니다. 예를 들어 부하 분산 장치는 웹 애플리케이션 방화벽(WAF)과 함께 작동하여 성능과 보안을 동시에 유지해야 합니다.
진정으로 통합된 기능을 제공하는 벤더와 협력하면 관리 복잡성을 줄이는 데 도움이 됩니다. 여러 보안 및 네트워킹 기능을 통합하는 단일 인터페이스로 단일 플랫폼을 구현할 수 있으면 관리 오버헤드를 크게 줄일 수 있습니다.
개발 간소화: 성능 및 보안에 대한 요구 사항을 정의하는 동안 개발자가 혁신을 가속화하는 데 필요한 사항도 고려해야 합니다. 개발자 플랫폼은 생산성을 높이고, 확장 가능한 멀티 클라우드 환경을 활용하며, 코드 품질을 개선하여 안정성을 높여야 합니다.
Cloudflare의 클라우드 연결성은 웹 애플리케이션의 성능과 보안을 개선하여 안정적이고 반응성이 좋은 사용자 경험을 제공하는 데 도움이 될 수 있습니다. Cloudflare에서는 멀티 클라우드 환경에 쉽게 배포하고 단일 플랫폼에서 관리할 수 있는 포괄적인 통합 네트워킹 및 보안 서비스를 제공합니다.
Cloudflare 개발자 플랫폼은 소프트웨어 엔지니어가 강력하고 안정적이며 안전한 웹 애플리케이션을 제작할 수 있도록 지원합니다. 데이터베이스, 개체 스토리지, AI 모델, 기타 서비스와의 통합으로 정교한 기능을 갖춘 최신 소프트웨어를 간소화할 수 있습니다.
한편, Cloudflare의 대규모 전역 네트워크는 대기 시간을 최소화합니다. Cloudflare를 이용하면 사용자가 어디에 있든 사용자와 가까운 에지에서 웹 애플리케이션이 제공됩니다.
강력한 성능을 제공하고 중단 없는 가용성을 유지하는 것은 긍정적인 사 용자 경험을 제공하고 다운타임으로 인한 비용을 방지하는 데 필수적입니다. 올바른 통합 서비스 플랫폼을 통해 조직에서는 복잡성을 제어하면서 이러한 경험에 대한 위협을 해결할 수 있습니다.
이 글은 오늘날의 기술 의사 결정자에 영향을 주는 최신 동향 및 주제에 대한 시리즈 중 일부입니다.
이 글을 읽고 나면 다음을 이해할 수 있습니다.
웹 애플리케이션의 성능과 가용성에 영향을 미치는 요소
현재의 솔루션이 미흡한 부분
애플리케이션 성능 및 보안 개선을 위한 요건
애플리케이션 보안 현황 보고서에서 웹 애플리케이션 및 API 위협 환경을 형성하는 주요 동향에 대해 자세히 알아보세요.
시작하기