인프라는 앱 내부의 비즈니스 코드를 바꾸지 않습니다. 대신 요청이 어떤 경로로 Akan 런타임에 도착할지를 결정합니다. 내 PC에서는 경로가 단순하고, 클라우드 클러스터에서는 구조화된 계층을 거치며, 엣지 서버가 있으면 현장별 경로가 추가될 수 있습니다.
로컬 경로: 개발자는 localhost로 접속하고 Akan 개발 런타임에 거의 직접 연결됩니다. 화면을 만들고 비즈니스 흐름을 확인하기에 가장 빠른 경로입니다.
클라우드 경로: 사용자는 공개 도메인으로 들어옵니다. Kubernetes Ingress가 요청을 받고, Service가 적절한 앱 pod를 찾은 뒤, Akan 런타임이 실제 페이지나 API 응답을 처리합니다.
엣지 경로: 매장, 키오스크, 로봇, 로컬 장비망은 먼저 엣지 프록시에 연결될 수 있습니다. 엣지 쪽은 가까운 런타임 작업을 처리하거나 클라우드 서비스로 트래픽을 전달할 수 있습니다.
요청이 Akan App Runtime에 도착하면 런타임은 어떤 종류의 작업인지 분류합니다. 페이지 요청은 웹 페이지를 렌더링하고, API 요청은 signal/service 로직을 실행하며, 웹소켓 요청은 실시간 채널을 유지하고, 정적 파일은 파일로 응답합니다.
Page: 브라우저 사용자를 위한 SSR 또는 CSR 페이지 응답입니다.
API: signal과 service 로직을 통한 비즈니스 작업입니다.
WebSocket: 실시간 업데이트와 오래 유지되는 클라이언트 연결입니다.
Asset: 정적 파일, 클라이언트 번들, 이미지, 생성 산출물입니다.
핵심은 이렇습니다. 인프라는 앱 안의 비즈니스 동작을 바꾸는 것이 아니라 앱으로 들어오는 경로를 선택합니다. 로컬, 클라우드, 엣지 경로는 서로 다르게 보일 수 있지만 결국 모두 Akan 런타임에 작업을 전달합니다.