이전 게시물에서는 변화하는 앱 아키텍처에 ‘삽입 지점’이라는 개념을 활용해 앱 서비스를 추가하는 방안을 살펴보았습니다. 앞선 내용을 접하지 못한 분들을 위해 설명하자면, 삽입 지점은 코드에서 고객 데이터로 이어지는 경로에서 아키텍처적으로 구분되는 위치로, 개발 범위를 벗어나는 경우가 많거나 운영 측면에서 더 효율적인 기능을 추가하기에 적합한 지점을 뜻합니다.

강력한 기능 세트는 오늘날의 비즈니스 활동을 나타내는 애플리케이션을 추가하거나 개선합니다.
삽입 지점에는 클라이언트, 인프라, 앱 자체가 포함됩니다. 운영 효율성과 비용 효율성 간의 균형을 고려할 때 각 지점에는 장단점이 있습니다. 예를 들어 네트워크 중심의 DDoS 앱 서비스를 클라이언트나 앱에 삽입하는 것은 운영 측면이나 비용 측면에서 효율적이지 않을 가능성이 큽니다. 두 삽입 지점 모두 인프라 옵션에서 제공되는 하드웨어 가속 기능을 이용할 수 없으며, 정확한 판단을 내리는 데 필요한 가시성도 확보할 수 없기 때문입니다.
따라서 우리가 찾는 것은 삽입 지점에서 운영 및 비용 측면 모두 효율적인 앱 서비스입니다. 여기서는 앱 서버(플랫폼) 자체에 초점을 맞춥니다.
삽입 지점으로서의 앱 플랫폼
처음에는 이 삽입 지점이 다소 의외의 선택처럼 보일 수 있습니다. 앱 서버는 앱 서비스를 제공하는 것이 아니라 앱을 호스팅하고 전달하기 때문입니다. 하지만 오늘날 NGINX 및 기타 앱 서버가 수행하는 역할을 살펴보면, 인프라이자 서버로서의 역할을 동시에 수행하는 경우가 많다는 것을 알 수 있습니다. 예를 들어 일부 앱 서버는 SSL 종료 지점 역할을 할 수 있으며, 실제로 그렇게 사용되고 있습니다. SSL 종료는 앱 서비스로, 흔히 SSL 오프로딩(하드웨어 가속)과 함께 사용됩니다. 웹 애플리케이션 방화벽 서비스 역시 플러그인을 통해 앱 서버와 연동되는 경우가 많습니다.

애플리케이션 서버를 삽입 지점으로 사용하는 것은 새롭거나 생소한 방식이 아닙니다. 당사의 2020년 애플리케이션 서비스 현황 조사에서는 애플리케이션 서비스를 배포하는 이 방식에 대해 질문했습니다. 조사 결과, 이 삽입 지점에 대한 관심이 있는 것으로 나타났습니다. 응답자의 약 6%는 애플리케이션 서비스에 "플러그인"을 사용하고 싶다고 답했습니다. 또 다른 9%는 호출을 위해 함께 사용되는 코드(삽입되거나 포함된 코드)가 필요한 "서비스형" 방식을 선호했습니다. 소수인 4%는 라이브러리를 사용하여 애플리케이션 서비스를 포함하고 싶다고 답했습니다. 이 마지막 방식은 서버리스(FaaS, 서비스형 함수) 애플리케이션에 기능을 추가할 때 자주 사용됩니다.
많은 경우 앱 서버에 앱 서비스를 배포하는 것은 운영 측면에서 합리적입니다. 이러한 서비스는 대개 단일 앱을 지원하도록 구성되므로 동일한 팀에서 패키징하고 배포할 수 있습니다. 앱 서버에 대한 전문 지식이 있으면 에코시스템 및 배포 파이프라인에 더욱 확신을 갖고 손쉽게 통합할 수 있습니다.
경우에 따라서는 앱과 앱 서비스를 하나의 앱 서버에 있는 동일한 인스턴스에 함께 배포하는 것이 합리적일 수 있습니다. 예를 들어 앱별 정책을 통한 앱 보호 기능을 플러그인하여 요청 및 응답 처리 단계에서 실행할 수 있습니다. 이 기능을 서버 내부에서 호출하는 것은 합리적이며, 검사를 로컬에서 실행하면 환경 외부에 호스팅된 서비스를 거치는 추가 통신과 처리를 없애 성능을 향상할 수 있습니다. 또한 운영 및 비용 측면에서 효율성을 높일 수 있으며, 특히 서비스 사용료를 시간당 또는 호출당 지불하는 경우 더욱 그렇습니다.
앱 서버를 독립형 앱 서비스의 호스트로 사용하든, 앱과 앱 서비스를 모두 호스팅하는 데 사용하든, 적합한 앱 서비스를 통합하기에 앱 서버가 좋은 지점임은 분명합니다.
작성자 소개

Lori MacVittie는 F5 CTO 오피스의 수석 엔지니어이자 최고 에반젤리스트로, 애플리케이션 딜리버리, 자동화 전략 및 인프라 분야에서 깊이 있는 전문성을 보유하고 있습니다. AI 에이전트를 위한 가드레일을 정의하고, 취약한 멀티클라우드 아키텍처를 분석하며, 확장 가능한 시스템의 한계를 탐구하는 등 복잡한 문제를 명확하게 풀어내는 것으로 잘 알려져 있습니다. 애플리케이션 개발, IT 아키텍처, 네트워크 및 시스템 운영 전반에 걸쳐 30년 이상의 업계 경험을 쌓았습니다. F5에 합류하기 전에는 수상 경력이 있는 기술 편집자로 활동했습니다. MacVittie는 컴퓨터 과학 석사 학위를 보유하고 있으며, 보안, 클라우드 및 엔터프라이즈 아키텍처 분야를 아우르는 다수의 저서를 집필한 작가입니다. 또한 보드게임과 비디오 게임을 열정적으로 즐기며, 치즈에 대해서는 거리낌 없이 확고한 견해를 갖고 있습니다.
Lori Mac Vittie의 다른 블로그 게시물관련 블로그 게시물
AI 시대의 새로운 애플리케이션 제공 원칙으로 복잡성 극복하기
보안, 일관성, 완전 자동화에 중점을 둔 애플리케이션 제공의 새로운 6가지 원칙을 도입하여 복잡성 없이 하이브리드 멀티클라우드의 유연성을 누리세요.
디지털 혁신을 가속화하는 6가지 기술 역량
오늘날의 엔터프라이즈 아키텍처에는 기술 변화를 주도하는 데 핵심적인 민첩성, 확장성, 보안 및 관찰 가능성이 부족하지만, 이 여섯 가지 핵심 역량은 기업이 디지털 혁신 전반에 걸쳐 위험과 과제를 관리하는 데 도움이 될 것입니다.
하이브리드 근무가 ID 중심 보안으로의 전환을 이끌고 있습니다
자동화와 디지털화의 폭발적인 성장에 하이브리드 근무 모델로의 전환 추세가 더해지면서, IP 기반 보안에서 벗어나 ID 기반 액세스 전략으로 전환하는 움직임이 더욱 가속화될 것입니다.
관점의 현대화: 애플리케이션에서 경험으로
그리스와 로마의 신들처럼, 여러 신화에서도 동일한 존재가 다양한 모습으로 나타나는 것을 볼 수 있습니다. 본질적으로 각각의 화신은 기존 존재가 새로운 얼굴로 드러난 것입니다. 디지털 세계에서도 이와 비슷한 양상이 나타납니다. 우리가 ‘애플리케이션’이라고 부르는 것들은 흔히 기존 기능이 새로운 형태로 구현된 것이라 볼 수 있습니다.
코로나19 이후 기업 결제의 디지털 전환
디지털 결제는 과거의 현금만큼이나 보편화되었습니다. 코로나19 팬데믹으로 인한 봉쇄 조치는 소비자의 디지털 결제 서비스 의존도를 더욱 빠르게 높였습니다. 기업의 디지털 결제 도입 역시 가속화되었습니다. 대중을 상대로 영업하든 하지 않든 기업에는 여전히 지급해야 할 대금과 받아야 할 대금이 있기 때문입니다.
공급망 해킹과 보안에서 하드웨어의 역할
수석 아키텍트 Dave Schmitt와 CTO 오피스가 최근 Bloomberg의 Super Micro 관련 기사를 계기로 하드웨어 보안 전문성의 중요성을 되짚어봅니다. 또한 이 글에서는 시스템이 안전하게 보호되고 있는지 확인하기 위해 공급업체에 물어봐야 할 질문도 소개합니다.