Chapter Chapter 신한대학교 2015 봄학기 클라이언트/서버 프로그래밍 고덕윤 [email protected] .
클라우드 서비스 개요 및 Google App Engine
우린 더 이상 시끄러운 서버를 구매할 필요가 없습니다.클라우드 컴퓨팅 클라우드 컴퓨팅 서비스란 무엇인가? 01 • 정의 • 개인 단말기를 통해 주로 입/출력이 이루어지 고, • 정보분석 및 처리, 저장, 관리, 유통은 클라우드 라는 제 3의 공간에서 이루어지는 컴퓨팅 시스 템 형태 • IT 기능들을 서비스 형태로 이용할 수 있음. • 기술 인프라스트럭처에 대한 지식이 없어도 서비스 를 이용/제공 가능
• IaaS, PaaS, SaaS 와 같은 기술 경향들과 연관을 가 지는 개념
IaaS (Infrastructure as a Service) • 서버, 스토리지, 네트워크를 가상의 환경으로 만듦 • 일반적으로 OS만 제공 • 사용자가 직접 OS를 관리해야 함 • Amazon EC2 가 대표적 • 가장 확장성이 높은 서비스 • 데이터 스토어, 파일 시스템, 보안 기술, 네트 워크 가상화, 서비스 가상화, 분산 병렬 처리 기반 서비스를 제공 02
PaaS (Platform as a Service) • 개발자가 어플리케이션을 개발 서 비스 하기 위한 기능을 제공함 • 사용자는 어플리케이션과 데이터만 관리함 • 인프라스트럭처와 OS, 플랫폼 관리 에 대한 부담을 경감시킴
• Google App Engine, Microsoft Azure이 대표적 • 가장 이상적인 형태의 서비스 • 인터페이스, 가상화 서빗, SDK, 보 안기술 서비스를 개발할 수 있는 플랫폼을 제공 03
SaaS (Software as a Service) • 사용자가 직접 소비하는 서비스를 클라우드에서 제공함 • 모든 고객은 웹을 통해서 어플리케 이션에 접근함 • Salesforce.com의 CRM서비스 • 웹 메일 서비스 • 애플리케이션, 오픈 API, 보안기술 직접 개발하여 쓰지 않고, 만들어진 것을 쓴다. 04
왜 클라우드 서비스를 이용하는가? 05 비즈니스 프로세스 애플리케이션 미들웨어 하드웨어 유지보수 비용 혁신비용 내부 관리 내부 관리 PaaS 혁신비용 관리비용 • 비즈니스 프로세스에 역량을 집중할 수 있다.
클라우드 서비스의 시장성
Google App Engine : 애플리케이션 만들기
1. https://appengine.google.com/
2. Google 계정 로그인 3. 애플리케이션 만들기
Google App Engine : 관리 페이지 보기 08 DashBoard : 종합적 통계를 보여줌 Instances : 여러 인스턴스가 있는 경우 어떤 인스턴스가 있는지 보여줌 Logs : 서비스 중지/시작과 데이터 트랜젝션 등의 로그를 보여줌 Versions : 여러 버전이 배포된 경우 버전 관리를 할 수 있게 해줌 Datastore Viewer : 데이터 베이스 조회 Blob Viewer : 이미지등의 비트맵 관련 데이터를 보여줌
Eclipse 로 Google App Engine 에 배포하기
• Deploy to App Engine 클릭
• Google login, application ID 입력
실행!
• [app id].appspot.com/[url] 로 확인 가능
• Servlet 호출이 되지 않을 경우 : java 1.7에서 컴파일 할 것.
실습 • HTML 을 이용하여 간단한 프로젝트 소개 사이트를 만드시오. • 두 개의 서블릿을 제작 1. 프로젝트 소개 2. 팀원 소개 11