서비스 플랫폼 구축을 위한 솔루션은?

새벽에 오랜만에 씩씩거리며 자료를 찾아 보고 정리하는 것 같다^-^.

웹 서비스 플랫폼을 구축할 때 여러분은 어떤 솔루션을 사용할 것인가? 상용 제품 또는 오픈소스. 이 두 대안중 하나를 선택할 때 어떤 기준으로 결정할 것인가? 가격,성능, 그리고 기술지원. 언듯 가격과 성능면에서 보면 오픈소스가 구미에 당겨도 실제 오픈소스 솔루션을 사용한다는 것은 쉽지 않은 결정이다. 왜냐하면 그만큼 오픈소스를 효과적으로 다루는 유능한 개발자가 확보돼야 하기 때문이다. 반대로 이야기하면 기술지원의 문제가 발생하기 때문이다. 그러나 찾아보면 의외로 오픈소스 커뮤니티의 집단지성이 기술지원을 해주고 , 오픈소스 컨설팅 회사와 전문가를 쇼셜 네트웍을 통해 쉽게 만날 수 있다.

현재 성공적으로 서비스를 운영하고 있는 서비스들의 구축 솔루션을 조사해 보았다 - 아마존, 구글, 유투브, 플리커 , 트위터. 이들 업체들이 공통적으로 사용하는 솔루션만 뽑아보면 - Linux , Java , Apache , MySQL ,Memcached 등이 자주 애용된다. 사용제품은 아마존의 DB가 오라클을 사용하고 있는데 아마 상품 DB에 사용되고 SimpleDB서비스에는 MySQL이 사용될 것으로 예상된다.

그리고 아마존 웹 서비스의 API 관리를 위해 Jboss를 사용하고 있는 것이 눈에 띠인다. 아마존의 경우 오픈 API만으로 플랫폼 사업을 하기때문에 오픈 API의 관리와 모니터링용으로 Jboss를 소프트웨어 버스로 이용하는 것으로 보인다.

상황이 이 정도면 오픈소스를 채택하는 데 있어 선입관을 가릴 필요가 없어 보인다. 국내 유력 통신사인 S사를 비롯하여 현재 많은 서비스 회사들이 엄청한 구축 및 유지보수 비용을 줄이기 위해 기존 상용 솔루션을 오픈소스로 전환하고 있다고 한다. 어차피 오픈소스가 피할 수 없는 선택이라면 빠른 도입과 준비야 말로 많은 경쟁력을 확보하는 지름길일 것이다.

마지막으로 첨언하면  기업들은 결사적으로 오픈소스 개발자와 엔지니어를 양성하고 이들에게 좋은 대우를 해주는 것이 바로 IT 관련 비용 절감을 이루는 첫번째 길이라는 사실을 기억하는 것이 좋을 것이다.

1. 아마존
Linux
Oracle
C++
Perl
Mason ( 멀티 에이전트 시뮬레이션 라이브러리)
Java
Jboss ( 서비스 버스 )
Servlets

2. 유튜브
Apache
Python
Linux (SuSe) 
MySQL
psyco(python to C 동적 컴파일러)
lighttpd ( 비디오용 ) 

3. 플리커
PHP
MySQL Shards
Memcached (캐쉬)
Squid ( HTML과 이미지를 위한 리버스 프록시 웹 캐쉬)
Linux (RedHat) Smarty
Perl PEAR (XML 과 Email 파싱용)
ImageMagick(이미지 프로세싱용)
Java(노드 서비스용)
Apache SystemImager (Deployment용)
Ganglia ( 분산 시스템 모니터링)
Sucon ( 손쉬운 Deply를 위해 subversion 레파지토리에 필수적인 시스템 설정 파일들을 저장하기 위해 사용)
Cvsup ( 네트웍상의 파일들을 분산하고 업데이트하기 위해 사용)

4. 구글
Linux
Python, Java, C++

5. 트위터(Twitter)
Ruby on Rails
Erlang
MySQL
Mongrel ( 하이브리드 Ruby/C HTTP 서버 - 작고,빠르고,보안에 중점을 둠)
Munin
Nagios
Google Analytics
AWStats( 실시간 로그 분석용 )
Memcached

'Architecture' 카테고리의 다른 글

IoT 클라우드 레퍼런스 모델  (0) 2014.07.16
Ajax Framewirk Review  (0) 2009.05.02
구글 Gear에 대한 이해를 위한 도움말  (2) 2007.06.09
2007 Web 2.0 korea 발표 후기  (3) 2007.03.29
REST Architecture  (0) 2007.03.25
S/W Development on the Web Platform  (0) 2007.03.25

Posted by 박재현
,

최근 들어 가장 많이 사용하는 IT 용어가 무엇일까 고민해 보았다. 아키텍쳐, 패턴,프레임웍 그리고 플랫폼이 아닌가 싶다. 이중에서 요즘 아주 지긋지긋하게 사용하는 단어가 바로 플랫폼이다.

구글 플랫폼이 어쩌구 저쩌구, 애플 플랫폼이 어쩌구 저꺼구 , 노키아 플랫폼이 어쩌구 저쩌구 그러니 우리가 어떻게 플랫폼을 구성해야 하고 어쩌구 저쩌구.. 오후가 되면 머리가 지끈지끈하다.

위키에 보면 플랫폼을 다음과 같이 설명해 주고 있다.

In computing, a platform describes some sort of hardware architecture or software framework (including application frameworks), that allows software to run.

아마 개발자 입장에서는 자바 플랫폼이나 닷넷 플랫폼 등 개발 플랫폼에 대한 이야기를 주로 들었을 것이고 기획이나 경영진 , 특히 모바일 기획자의 경우 구글의 안드로이드, 노키아의 OVI, 애플의 애플스토아 플랫폼에 대해 한마디씩 하지 못하는 사람은 없을 듯 하다.

그렇다면 이러한 플랫폼을 이해하고 구축하기 위한 기본은 무엇을까? 바로 플랫폼적 사고가 아닐까 싶다.

사용자 삽입 이미지
플랫폼적 사고에 대한 키워드를 찾아보니 켈로드 대학의 Mohanbir Sawhney 교수가 플랫폼적 사고란 비용 효과적인 방법으로 사용자의 요구사항을 만족시키기 위한 전략의 핵심이 바로 플랫폼적 사고다 라고 정의한 바 있었다.

Sawhney, Mohanbir S. (1998), "Leveraged High-Variety Strategies: From Portfolio Thinking to Platform Thinking", Journal of the Academy of Marketing Science, Vol. 26, No. 1, 54-61.

좀 더 풀어서 이해해 보면 플랫폼적 사고란 한 기업의 보유한 모든 것(제품,브랜드,시장,고객,경쟁자 등)에서 공통 분모를 찾고 이를 기반으로 하여 모든 제품들을 하나의 전략으로 묶어내는 것을 말한다. 가령, 기존의 다양한 전자 제품을 만들어 팔던 A사가 자신의 공통 분모로 모든 전자 제품을 언제 어디서나 접근하여 조작할 수 있는 것에 두고 이를 통해 모든 제품을 묶어 내는 것을 플랫폼적 사고라 할 수 있다.

이러한 플랫폼적 사고에 기반하여 개발되는 모든 제품은 하나의 일관된 전략으로 수렴할 수 있고 이를 통해 보다 신속한 개발이 가능하다. 또한 이들 제품은 하나의 일관적 마케팅과 영업 전략하에 판매되기 때문에 이 과정에서 적은 비용으로 큰 효과를 누릴 수 있다.

이러한 것을 가장 잘 수행한 업체가 바로 애플이고 구글이다. 애플은 "Think Different" 라는 광고 슬로건으로 대표되는 플랫폼적 사고를 바탕으로 애플스토어와 아이폰 그리고 아이툰으로 이어지는 전략적 플랫폼을 구축하여 MP3와 스마트폰 시장을 질주하고 있다. 애플이 만든 제품은 다르다. 그 제품은 모두 애플 플랫폼에 연동되어 보다 편하게 사용할 수 있다. 바로 이 점이 애플 사용자가 애플 제품을 계속해서 구매하는 원인중의 하나이다.

구글은 "모든 데이타는 구글에" 라는 플랫폼적 사고에 기반하여 Open API를 기반으로 한 웹 플랫폼을 만들었고 이를 모바일 플랫폼으로 확대해 나가고 있다.  이러한 플랫폼 전략을 바탕으로 애플은 애플 TV를 비롯해 신규 IT 가전 시장으로의 진출을 노리고 있고 구글 역시 안드로이드 플랫폼을 통해 시장을 넓혀가고 있다. 

과거 필자가 몸담고 있던 웹 오피스 개발 업체인 씽크프리에서도 자바 오피스와 웹이라는 공통분모를 기반으로 하여"Any where,Any time access"라는 플랫폼적 사고하였다. 이를 기반으로 웹과 데스크탑, 모바일이 하나로 통합된 통합 오피스 플랫폼을 개발하고 이를 오픈API를 통해 다양한 생태계에 접목하려는 노력을 하였다. 그 결과 다양한 웹2.0 업체들과의 제휴들을 통해 사업 기회를 늘릴 수가 있었다. 물론 현재 씽크프리는 이러한 통합 오피스 플랫폼 사고를 하는 것으로 보이지는 않는다.

항상 시간이 지나면서 느끼는 것이지만 플랫폼을 만드는 것도 중요하지만 플랫폼적 사고와 이를 기반으로 한 수행(doing)이 더욱 중요하다는 생각을 한다.  제품과 서비스의 개발이 플랫폼과 무관하게 진행된다면 비극적인 결과를 낳을 것이기 때문이다. 이런 결과를 낳지 않기 위해서는 플랫폼적 사고에 의한 전략과 수행능력이 항상 염두해 두어야 할 것이다.



Posted by 박재현
,

SaaS(Software As A Service)를 말할 때 프로그램의 설치없이 웹 브라우져를 통해 언제 , 어디서나 원하는 서비스에 접속해서 사용할 수 있다라는 것을 강점 중 하나라고 말한다.

며칠 전 구글의 G메일이 다운되었다. 웹의 최강자라 이 사건을 두고 많은 기사들이 포스팅되었다.

사용자 삽입 이미지


구글 G 메일의 다운 사건을 두고 과연 SaaS 시장에 영향이 없겠냐는 의견들이 많이 포스팅되었다.

사용자 삽입 이미지

개인적으로는 위의 사건에 대해 다음과 같이 생각한다.

- 어떤 시스템이든 장애가 없을 수는 없다.
모든 시스템을 설계,개발할 때는 무장애를 목표로 하지만 장애없는 시스템은 있을 수 없다. 실제 사내에서 사용하는 메일 시스템이 사소한 문제로 인해 장애가 생기거나 천재지변에 의해 장애가 발생할 수 당한다. 이런 경우 중요한 것은 이 장애를 얼마나 신속하게 대처하고 복구하느냐 일 것이다. 바로 이것이 해당 서비스의 QoS라 할 수 있다. 바로 이러한 QoS 측면에서 각 방면에 전문가가 신속하게 대처하도록 구성된 것이 바로  SaaS 서비스이다.  

- 오프라인일 경우를 대비해야 한다.
SaaS가 온라인 환경을 전체로 하지만 장애가 발생할 경우 해당 서비스를 이용하지 못하는 경우 업무를 수행할 수 없다. 따라서 오프라인 상태에서도 작업을 할 수 있는 기능이 필요하다. 실제 ,  필자가 과거 몸담고 있던 씽크프리에 오프라인에도 작업을 하고 해당 결과를 온라인시 자동을 동기화해주는 기능을 개발했었고  ,  구글의 기어를 이용하여 조호 역시 오프라인시 오피스를 사용하게 해준다. 또한 메일 분야에서는 짐브라가 오프라인 버전인 짐브라 데스크탑을 지원한다.

실제 데스크탑 소프트웨어의 경우에도 사용시 다양한 문제가 발생한다. 특정 프로그램과 충돌이 발생하거나 설정이 정확하지 않아 사용하지 못하는 경우도 자주 발생한다. 특히, 국내처럼 ActiveX가 온통 도배되어 있는 환경에서는 은행 몇곳만 온라인으로 이용해도 시스템에 듣도보도 못한 것들이 수없이 깔리고 메모리에 상주한다.

이런 면에서 SaaS 는 경제적인 비용으로 보다 우수한 서비스를 이용할 수 있는 수단임은 분명하다. 인간의 상상력이 존재하는 한 장애 시간을 최단으로 줄일 수 있는 환경과 온라인-오프라인을 투명하게 연결할 수단은 계속해서 발전할 것이다.


Posted by 박재현
,

씽크프리를 떠나 오랜만에 자유로운 시간을 갖았다. 일상으로 부터 떠나 새로운 곳에서 새로운 사람과 새로운 문화를 접한다는 것은 과거의  오만가지 생각을 잊게 하는 최고의 약인 것 같다. 새로운 곳에서의 경험을 뒤로하고 돌아오자 마자 접한 구글의 테터앤컴퍼니 인수 소식은 많은 생각을 하게 한다.

사용자 삽입 이미지
먼저 TNC 의 노정석 대표와 김창원 대표에게 축하를 보낸다. 이번 인수합병은 경영진으로서 회사를 성장시키고 영속화하기 위한 지혜로운 전략의 실천이었을 것으로 것이다. 협소한 국내 온라인 시장에서 수익을 창출하는 데도 한계가 있었을 것이고 , 대승적으로 해외 진출을 위해서는 든든한 우군이 필요한 상황이었을 것이다. 특히, 기술에 집중하는 노정석 대표와 사업과 해외 사업 등에 주력하는 김창원 대표 체제의 조화가 큰 힘이었을 것이다.

또한 구글 코리아 입장에서도 TNC가 국내 블러그계와 웹2.0 업체중에 인지도가 높은 업체였기에 인수합병을 통해 시장인지도를 높이고 , 검색의 질을 높이며 개발력을 보강하는 차원에서도 남는 것이 많았을 것이다.  TNC 경우 이미 우수한 개발자와 생산성 높은 개발 시스템을 보유하고 있는 회사였기 때문이다.

TNC 뿐만 아니라 국내에서 경쟁력있는 웹2.0 회사들이 다수 있다고 생각한다. 이러한 회사들도 분명한 전략을 세워야 한다. 그리고 이러한 전략에 맞춰 전술을 구사해야 한다. 인수합병을 위해서는 내부 경쟁력(개발자, 개발 프로세스 , 산출물 등등)을 갖춰야 하고 자신의 가치를 차곡차곡 정리.준비해 두어야 한다. 그래야 기회가 올 때 이를 잡을 수 있다. 갑자기 이전에 작성했던 글이 생각난다 ^ ^.

야후 , 씽크프리를 인수하다!?

다시 한번 TNC의 제2의 도약을 기대해 본다.

Posted by 박재현
,

구글은 모바일 시장에서 후발 주자이지만 가장 위협적인 존재이다. 기본적으로 가장 강력한 검색 서비스를 보유하고 있으며 이미 프리코노믹스  모델을 통해 막대한 광고 수익을 창출해 내고 있다. 이러한 검색 서비스는 모바일 시장에도 그래도 적용될 전망이다. 조사에 의하면 모바일 컨텐트를 찾을 때 가장 많이 이용되는 방법이 정보 검색이고 그 다음이 위젯이라고 한다.  이미 구글은 이러한 검색 서비스와 위젯과 더불어 무료 저장 공간과 메일, 일정 관리 , 구글 맵 등 다양한 웹 서비스를 제공하고 있다. 특히, 애플의 3G 아이폰 출시 후 제공되는 GPS 기능이 사용자들에게 매력적으로 다가가는 상황에서 구글 맵은 이후 모바일 시장에서 검색과 더불어 구글의 킬러 컨텐트가 될 것으로 보인다.

당연히 검색을 비롯한 강력한 구글의 웹 서비스들을 효과적으로 모바일 시장에 진입시키는 것이 구글의 핵심적인 전략일 수 밖에 없다. 이러한 전략하에 출시된 안드로이드 모바일 플랫폼은 기존의 모바일 플랫폼에 비해 충분한 경쟁력을 보유하고 있다. 최근 안드로드이드  SDK 의 개발 및 공개 일정의 지연과 버그 수정 지연들로 인해 개발자들이 불평이 들려오기는 하지만 기존의 아이폰SDK 나 심비안의 경우에도 이러한 불평은 항상 있어왔다.

2008/06/26 - [Mobile Service] - 노키아 VS 구글 그리고 ...  .

오히려 개발자 커뮤니티들의 관심의 표현이 아닐까 싶다.  특히 , 모바일 시장에 대한 구글의 사업 전략과 애플  3G 폰의 성공적 시장 진출과 심비안의 오픈소스화 등 주변의 경쟁 환경을 볼 때  안드로이드 SDK는 구글에서 가장 중요하게 다뤄지고 있는 분야이다.

사용자 삽입 이미지

최근 들어 , 테크크런치나 언론을 통해 구글 폰의 출시 이야기가 과거보다 구체적으로 나오고 있다. 실제 속사정은 알 수 없지만 안드로이드를 공개한 후 가능한 한 많은 디바이스 업체를 우군으로 만들어야 하는 구글의 입장에서 구글 자체 폰은 시기상조가 아닌가 싶다. 그러나 어느 시점이 되면 기존의 아이폰을 뛰어 넘는 새로운 디비이스의 출시를 위해 무엇인가 준비하고 있을 것이다. 구글 폰 논쟁을 떠나 예상대로 올 해 말 이후 , 안드로이드를 탑재한 폰이 출시되면 사용자는 정보를 찾기 위해 구글 모바일 검색 서비스를 이용하고 무료로 다양한 모바일 응용 프로그램의 가젯을 구글 사이트를 통해 다운로드 받아 이용할 수 있게 될 것이다. 이게 바로 구글이 원하는 모바일 시장의 모습이다.

그러나 이러한 모습에서 한가지 불확실한 부분이 있다. 바로 데스크탑 플랫폼에 대한 부분이다. 노키아의 ovisuite 나 애플 아이튠같은 데스크탑상의 프로그램은 핸드폰 디바이스의 업그레이드를 비롯해 정보 백업 등 모바일과 웹 상의 서비스를 연결해주거나 오프라인 상태에서 무척 중요한 역할을 수행한다.

2008/07/15 - [Mobile Service] - 노키아의 미래 생존을 위한 시도들
2008/07/14 - [Mobile Service] - 애플의 모바일 시장에 대한 선제 공격

아마도 구글이 주도할 경우 기존의 구글 데스크탑에 이러한 기능들이 추가되어 배포될 것으로 보인다. 구글 데스크탑은 웹과 모바일을 하나로 연결하며 안드로이드폰을 디바이스로 인식하고 이를 오프라인 상태에서 효과적으로 제어 하는 기능 등이 추가되는 것이다.

그러나 기존 핸드폰 디바이스 업체들의 경우라면  좀 더 입장이 복잡해 질 것으로 보인다. 이 과정에서 가장 중요한 선택은 구글 컨텐트의 채택 여부이다.  먼저 구글 서비스 플랫폼 채택하는 경우 생산하는 폰에서 사용자들은 구글 검색창을 첫페이지로 제공받고 구글 모바일 컨텐트를 직접 웹을 통해 다운로드 받거나,  데스크탑상의 관리 프로그램을 통해 이용하게 될 것이다. 이 과정에서 구글로 부터 컨텐트 채택에 따른 대가를 받을 수 있다.

다른 하나는 안드로이드 운영체제만을 사용하고 자체적으로  모바일 서비스와 컨텐트를 제공하는 것이다. 이 경우 노키아와 애플 같은 자체적인 서비스 플랫폼을 구축하여 사업을 하는 것과 동일한 모델이다.  디바이스 업체 입장에서는 향후 모바일 사업이 다비이스에서 서비스 위주로 전화될 것을 감안하면 가장 적극적인 방법이지만 많은 투자와 위험이 따르기도 하다.  구글 입장에서는 디바이스 업체들에게 무료로 컨텐트와 서비스를 제공하는 대가로 비용을 지불하더라도 모바일 광고 등을 통해 얻는 수익이 보다 크기 때문에 첫번째 방법을 통해 사업을 펼칠 것이다. 디비이스 업체들 입장에서도 초기에는 이 방법이 안정적이겠지만 미래를 위해 자체 서비스를 개발하려는 노력은  반드시 필요하다 할 수 있다.


Posted by 박재현
,