클라우드응용SW개발

[6주차] 클라우드 기반 웹 서비스

jubin0615 2026. 4. 19. 13:38

웹 서비스를 만든다고 해서 반드시 서버를 직접 설치하고 운영해야 하는 시대는 아니다.

클라우드 환경에서는 필요에 따라 IaaS, PaaS, SaaS 형태의 다양한 방식으로 웹 서비스를 배포할 수 있다. 즉, 사용자가 어디까지 직접 관리하느냐에 따라 서비스 모델이 달라진다.


📍Azure가 제공하는 웹 서비스 플랫폼

  • Azure App Service 
    - 웹 애플리케이션, REST API, 모바일 백엔드를 호스팅할 수 있는 대표적인 PaaS 서비스
    - .NET, Java, Node.js, Python, PHP 등 다양한 언어와 프레임워크를 지원

  • Azure Static Web Apps
    - 프론트엔드 프레임워크로 만든 결과물을 호스팅하고, GitHub와 연동해 자동 빌드와 배포를 진행할 수 있다.
    - 여기에 Azure Functions와 연계하면 서버리스 API도 함께 붙일 수 있어 프론트엔드 중심 프로젝트에서 특히 강점을 가진다.

  • Azure Container Apps
    - 컨테이너 기반 애플리케이션을 위한 서버리스 플랫폼
    - Kubernetes 기반 오케스트레이션, 자동 스케일링, 트래픽 분산 기능을 제공
  • Azure Virtual Machines
    - IaaS 방식
    - 사용자가 가상 머신을 직접 구성하고 운영해서 자유도가 높지만, 관리와 유지보수 부담도 함께 커진다.

 

📍Streamlit으로 만드는 파이썬 기반 웹 앱

Streamlit의 가장 큰 장점은 복잡한 프론트엔드 지식 없이도 파이썬만으로 빠르게 웹 인터페이스를 만들 수 있다는 것이다.

화면 구성 요소를 함수 호출 중심으로 제공하기 때문에, 데이터 처리나 파이썬 로직에 익숙한 사람이라면 훨씬 빠르게 결과물을 만들 수 있다. 실제로 간단한 텍스트 출력, 입력 위젯, 표와 그래프, 채팅 UI까지 비교적 짧은 코드로 구현할 수 있다!

 

빠른 프로토타이핑과 시각화, 간단한 내부 도구 제작에는 매우 강하지만, 복잡한 서비스 구조나 정교한 웹 애플리케이션 전체를 대체하는 도구로 보기는 어렵다는 단점도 존재한다.

 


📍 Azure App Service와 Streamlit을 활용한 웹앱 구축

1. Azure 리소스 그룹에 마켓플레이스를 통해 웹앱을 생성하고 배포한다. 

 

배포가 완료되면 아래와 같이 웹앱의 기본 페이지를 확인할 수 있다.

 

2. vscode 에서 WebApp 폴더를 생성한 후 파이썬 파일(test.py)을 생성한 뒤,

터미널에서 pip install streamlit 명령어를 사용해 streamlit을 설치한다.

 

아래와 같이 작성된 코드를 바탕으로 웹 앱 안에서 구성된 streamlit 화면을 볼 수 있다!