데스크탑 애플리케이션 대 클라우드에 최적화된 애플리케이션의 장점 비교
클라우드 컴퓨팅이 엔터프라이즈 및 일반 사용자의 큰 호응을 얻으면서, 많은 기존의 애플리케이션들이 클라우드로 이동하고 있다. 한 가지 이유는 클라우드 애플리케이션이 상대적으로 저렴하고 관리하기에 간단하며 업데이트하여 사용하기에 간편하다는 점이다. 브라우저가 일반 사용자가 가장 자주 사용하는 도구이므로 많은 사람들이 브라우저를 통해 전달되는 클라우드 기반 애플리케이션과 작업하는 데 편리하다고 생각한다. 각 전달 메소드는 장단점이 있다.
- 소프트웨어 설치
클라우드 애플리케이션의 가장 큰 장점 중 하나는 설치가 필요하지 않다는 점이다. 소프트웨어를 다운로드하는 데 필요한 시간과 노력을 방지할 수 있다. 클라우드 애플리케이션은 브라우저에서 렌더링되므로 플래시 컨텐츠 렌더링 및 CSS와 같은 브라우저 기능을 이용한다. 장점: 클라우드 - 자원 활용
클라우드 애플리케이션에서 대규모 처리의 대부분은 서비스 제공자가 해결하며, 이는 시스템 구성에서 요구사항을 최소화한다. 데스크탑 애플리케이션은 그래픽 설계와 같은 복잡한 애플리케이션을 위해 높은 메모리 및 처리 속도가 필요하다. 장점: 클라우드 - 소프트웨어 업데이트
데스크탑 애플리케이션은 정기적으로 업데이트되어야 한다. 데스크탑 애플리케이션은 업데이트를 다운로드하거나 수동으로 소프트웨어를 업데이트해야 한다는 프롬프트를 표시한다. 클라우드 애플리케이션은 애플리케이션 서비스 제공자가 업데이트한다. 장점: 클라우드 - 플랫폼 독립성
데스크탑 애플리케이션은 Windows, Linux, Mac 및 특정 하드웨어와 같이 여러 플랫폼용으로 개발되어야 한다. 대부분의 클라우드 애플리케이션이 브라우저에 사용되도록 개발되었으므로 이는 다양한 플랫폼에서 실행한다. 장점: 클라우드 - 네트워킹 기능
데스크탑 애플리케이션의 핵심적인 장점 중 하나는 인터넷 연결 및 대역폭 고려사항에 독립적인 것이다. 클라우드 애플리케이션은 데이터 전송 및 컨텐츠 렌더링을 위해 인터넷 인프라에 의존한다. 장점: 데스크탑 - 광고
클라우드 기반 애플리케이션에서는 광고를 마주칠 가능성이 높은 반면, 몇 가지 데스크탑 애플리케이션은 애플리케이션 내에 광고를 표시한다. 이는 기술적인 문제는 아니지만, 대역폭이 클라우드 애플리케이션에서 매우 중요한 고려사항이라는 사실을 감안하면 광고가 쌓여가는 낭비된 대역폭을 고려하게 된다. 장점: 데스크탑 - 인증 및 권한 부여
클라우드 애플리케이션은 사용 추적 또는 서비스 품질 전달과 같은 다양한 이유로 일반 사용자 정보를 사용한다. 많은 클라우드 애플리케이션이 고급 서비스가 없는 사용자에 제공되는 기능과 비교하면 고급 사용자에게 개선된 대역폭, 추가 스토리지 및 다른 부가가치 기능을 제공하는 것을 보게 된다. 대부분의 데스크탑 애플리케이션은 어느 인증이나 거의 필요하지 않으며, 필요한 경우 전체 액세스를 갖춘 시스템 관리자로 권한을 판별하기 위해 운영 체제에 의존할 것이다. 장점: 데스크탑 - 아키텍처
데스크탑 애플리케이션은 단일 테넌트 기반 애플리케이션인 반면, Software as a Service (SaaS) 기반 클라우드 애플리케이션은 멀티테넌트를 기반으로 한다. 멀티테넌트 모델을 통해 애플리케이션 업그레이드는 SaaS 제공자가 처리한다. 단일 테넌트 애플리케이션을 통해 구성 및 업그레이드는 사용자가 수행하며, 이는 특정한 기능 및 사용자 정의를 제공할 수 있다. 장점: 둘 다 - 데이터 스토리지
데스크탑 애플리케이션에서 데이터는 자체 컴퓨터에 저장되는 반면, SaaS 애플리케이션에서 데이터는 독자에게 할당된 서버 공간에 상주한다. 대부분의 처리가 서버측에서 수행되므로 데이터는 클라우드 애플리케이션 서비스 제공자에게 그리고 이러한 제공자로부터 전송되어야 한다. 이는 잦은 대규모 데이터 호출을 클라우드 서버에 수용하기 위해 높은 대역폭에 대한 요구사항을 부과할 수 있다. 장점: 데스크탑 - 보안
데스크탑 애플리케이션은 데이터 스토리지 위치, 사용된 암호화 및 사용자 권한과 같은 시스템의 내부 세부사항에 대한 정보를 가진다. 클라우드 컴퓨팅의 가장 큰 도전 과제 중 하나는 데이터의 위치, 사용한 복구 정책, 암호화 메소드 및 클라우드 서비스 제공자의 신뢰성에 대한 적합한 정보가 부족한 것이다. 이러한 요인들 때문에 사용자는 써드파티 클라우드 서비스 제공자의 서버에 대한 고도로 민감한 정보를 배치하는 데 주저할 수 있다. 장점: 데스크탑
브라우저로 렌더링되는 모든 애플리케이션이 클라우드 기반 애플리케이션이라는 것은 오해이다. 실제로 애플리케이션이 클라우드 애플리케이션이 되는 특정 특성들이 있다. 클라우드 애플리케이션의 몇 가지 중요한 특성은 다음과 같다.
- 멀티테넌트이다.
- 플랫폼 및 하드웨어 독립적이다.
- API 액세스를 지원한다.
- 인터넷에 연결된 어느 시스템에서나 액세스 가능하다.
- 사용자에게 애플리케이션이 상주하는 곳은 문제가 되지 않는다.
데스크탑용으로 작성된 많은 애플리케이션은 클라우드로 마이그레이션된다. 일부 경우에 동일한 애플리케이션은 클라우드 환경에서 실행한다. 다른 경우에는 애플리케이션의 다른 구현 방식이 클라우드에서 실행된다. 그리고, 클라우드에서 제공되는 장점을 이용할 수 있도록 특히 클라우드 인프라에서 실행하기 위해 개발된 새로운 애플리케이션이 있다. 다음 섹션은 다양한 시나리오에서 클라우드와 데스크탑 애플리케이션의 비교를 제공한다.
데스크탑 애플리케이션은 클라우드 환경, 샌드박스 또는 애플리케이션 스트리밍을 통해 실행될 수 있다.
클라우드에서 데스크탑 애플리케이션을 호스트하는 한 가지 방법은 spoon.net으로 제공되는 것과 같은 서비스를 사용하는 것이며, 이는 예측 스트리밍 및 애플리케이션 가상화를 사용하여 대부분의 Windows™ 기반 애플리케이션을 실행하도록 샌드박스 환경을 제공한다. 이들 사이트에서부터 플러그인을 설치해야 할 것이다.
이 메소드에서 애플리케이션의 작은 부분이 시스템에 상주하고 나머지 컴포넌트는 스트리밍 서버에 놓여 있고 요청 시 독자에게 전송된다. 애플리케이션 스트리밍은 결과적으로 애플리케이션 가상화에 의존한다. 스트리밍 인프라는 기업 환경에서 로컬로 설정될 수 있거나 인터넷을 통해 액세스될 수 있다. 사용하는 기술과 메소드에 따라 클라이언트는 스트리밍되는 애플리케이션을 실행하기 위해 플러그인이나 소프트웨어가 필요할 수 있다. 이러한 사용 가능한 하나의 도구는 Endeavors Technologies의 Application JukeBox이다.
클라우드 환경에서 데스크탑 애플리케이션을 실행하는 면에서 다음과 같은 몇 가지 장점이 있다.
- 설정 및 소프트웨어 업데이트를 최소화하기 위해 클라우드 인프라를 활용할 수 있다.
- 애플리케이션을 스트리밍하면 사용할 수 없는 기능을 모두 설치하는 것이 아니라 필요할 때에만 애플리케이션의 기능을 사용할 수 있다.
동시에 클라우드 환경에서 동일한 애플리케이션을 실행하면 다음과 같은 단점을 일부 내포한다.
- 네트워크 속도 및 가용성에 의존하게 될 것이다.
- 써드파티 플러그인의 설치에 대해 어느 정도 우려할 수 있다.
많은 기존의 데스크탑 기반 애플리케이션은 이제 클라우드 버전도 제공하여 양쪽 지지자가 요구하는 것을 처리한다. 데스크탑 애플리케이션의 클라우드 버전은 편리성이 있지만 기능을 적게 제공한다. 이는 브라우저에서 열릴 것이므로 빠르게 열려서 바로 작업을 시작할 수 있다. 이러한 몇 가지 데스크탑은 다음과 같다.
- IBM Lotus® Notes. 이 데스크탑 애플리케이션은 클라우드 버전인 Lotus iNotes를 제공하며, 이는 Gmail과 같은 브라우저를 통해 액세스될 수 있다. 지원되는 기능에 따라 Lotus iNotes는 전체 모드, 경량 모드 및 초경량 모드의 세 가지 모드로 사용할 수 있다.
- Adobe. 마찬가지로 이는 사진 편집 소프트웨어 Photoshop의 클라우드 버전을 제공한다. 클라우드 버전은 데스크탑 버전보다 기능을 적게 제공한다.
- IBM Rational® Team Concert. 소프트웨어 개발 팀을 위한 협업 도구. 두 가지 모드를 제공하며, 태스크 작성/편집, 소스 코드 편집기 및 기타 등등을 비롯한 전체 기능을 갖춘 데스크탑 기반 도구이다. 브라우저 기반 버전은 소스 코드 편집기를 비롯한 몇 가지 기능을 생략한다.
클라우드와 데스크탑 둘 다에서 지원되는 애플리케이션을 보유하는 장점은 당시에 필요한 버전을 사용하는 유연성이다. 애플리케이션의 데스크탑 및 클라우드 버전에서 수행되는 조작은 사용자 인터페이스가 다를 지라도 상태 및 데이터의 일관성을 보장하기 위해 동기화될 것이다. 다음 시나리오를 고려해 보자.
- Lotus Notes 이메일 클라이언트를 갖춘 사용자가 인터넷을 찾아보고 있고 동료와 URL 링크를 공유하려고 한다. 비록 Lotus Notes 시크(thick)클라이언트를 열고 메일을 전송할 수 있지만 브라우저에서 Lotus-iNotes URL을 사용하여 링크를 간단하게 전송하는 것이 더 빠르고 훨씬 더 편리할 것이다.
- 소프트웨어 팀에서도 마찬가지로 팀 리드가 팀의 진행상황을 한 눈에 보고 싶으면 클라이언트를 열고 세부사항을 확인하는 것이 아니라 Rational Team Concert의 웹 URL을 작동시킬 수 있다.
클라우드에서 데스크탑 애플리케이션이 작동하도록 원하지 않거나 데스크탑 애플리케이션의 추가 버전을 작성하려 하지 않는다면, 클라우드에서 실행하도록 특별히 개발된 애플리케이션이 있다. 이러한 애플리케이션은 대개 데스크탑에 상응하는 것을 제공하지 않는다. 하지만, 이러한 애플리케이션은 클라우드에서 이를 배치하기 위한 용도로 개발되므로 클라우드 인프라에서 더 효율적으로 실행한다. 일부 예제는 다음을 포함한다.
- ZohoDocs는 데스크탑 오피스 제품군을 제공한다.
- LotusLive는 이메일에 액세스하고(LotusLive iNotes), 웹 미팅을 수행하며(LotusLive Meetings), 파일 공유 및 비즈니스 네트워킹(LotusLive Connections)을 위한 IBM 오퍼링 서비스의 클라우드 기반 협업 도구 세트이다.
- Pixlr 및 picnik는 무료 사진 편집을 제공한다.
- 일부 고객 관계 관리(CRM) 애플리케이션은 SugarCRM을 비롯하여 클라우드에서 사용 가능하다.
이 기사에서는 데스크탑 애플리케이션의 기능과 클라우드에 실행하는 이러한 애플리케이션의 기능을 비교했으며, 클라우드 또는 데스크탑 환경에서 애플리케이션을 실행할 때 직면할 수 있는 차이점을 설명했다. 각 환경은 장단점이 있으며, 독자의 고유한 요구사항에 따라 어느 것이 독자에게 최선인지 판단할 것이다.
교육
- 다음과 같이 사진 편집 및 문서 관리를 위한 일부 온라인 도구를 확인하자.
- 클라우드 공간에서 CRM applications에 관해 배우자.
- Application Jukebox를 확인해보자.
-
developerWorks 클라우드 개발자 참고자료에서는 클라우드 배치를 위한 프로젝트를 개발 중인 애플리케이션 및 서비스 개발자의 경험과 지식을 찾아보고 공유할 수 있다.
-
다음 단계: IBM Cloud에 액세스하는 방법을 찾아보자.
제품 및 기술
- Rational Team Concert를 시도하자.
-
IBM Cloud Enterprise에서 사용 가능한 제품 이미지를 참조하자.
토론
- developerWorks의 Desktop Virtualization and Open Source in Cloud group에 참여하자.
-
developerWorks의 클라우드 컴퓨팅 그룹에 참여하자.
-
developerWorks에 있는 뛰어난 클라우드 블로그를 모두 읽어보자.
-
연결, 공유 및 협업을 위한 전문가 네트워크이자 통합 커뮤니티 도구 세트인 developerWorks 커뮤니티에 참여하자.
