IT의 중심에서

기술은 사람을 행복하게 할 때 가장 가치가 크다.

글로벌로 API 서비스하기

글로벌하게 API를 서비스하게 되면, 대용량 트래픽과 다양한 접근시도 등에 쉽게 대응하기 힘들게 됩니다.
이에 대한 세가지 대응원칙을 제시하고 있습니다.

※ 출처 : Delivering APIs to a global audience (Apigee Webinar)

점점 더 많은 API 들이 만들어지고 있다.
하지만, API 트래픽은 지난해보다 20배가 올랐다.
[2005~2010년 OpenAPI 수] (출처 : Programmable Web)

선택은 점점 더 빨라지고 있다.

[Netflix API 성장곡선]

그리고, 적용기기는 점점 더 많아지고 있다.

API 가상화는 1년 전보다 더 의미있게 되었다.
하지만, 가장 큰 변화는 API 가 Global 화되고 있다는 것이다.

1. Globalization
글로벌 자체는 새로운 것이 아니다.
하지만, API 에게는 더 중요해졌다.
인터넷 시장의 46%가 5개국에 있다. – 미국, 중국, 브라질, 인디아, 러시아

이것은 사업과 기술에 대한 이야기이다.

“기술은 글로벌하게 논의될 수 있다.
하지만, 사업은 Local Delivery에 한정되어 있다. 하지만, 기회는 글로벌하다.”

제한 조건은 Local 이다.

2. Black Swan
블랙스완은 뒤늦게 알게되거나, 예상되어지는 아주 큰 변화나 사건 등을 말한다.

우리가 블랙스완이라고 부르는 것들은 아래와 같은 세가지 특성들을 가진다.

첫째, 그것은 예상할 수 있는 세계의 밖에 위치한다. 왜냐하면, 아무것도 가능성을 암시하고 있지 않기 때문이다.
둘째, 그것은 극도의 충격을 가지고 온다.
셋째, 그것이 예상 외의 것임에도 불구하고 우리들은 그것을 설명하기 위해 이유를 지어낸다.
– Nassin Nicolas Taleb

블랙스완은 빚, 예상, 무작위성, 불확실성, 에러 등으로 만들어진 예외들을 일컫는다.

블랙스완과 Fat tail (정규분포에서 양 끝단, 즉 예외치가 많은 경우) 간에는 강한 상관관계가 있다.
자주색 곡선을 피해야 한다. 노란색 곡선이 Best

3. Globalizing APIs
API 를 Globalizing 하고, 블랙스완으로부터 숨기 위해서는 3가지 규칙이 있다.

  1. 지역적으로 배포하기(Distribute Locally)
    Cash 가 왕이다? Cache 가 왕이다.

    • 캐싱할 수 있도록 API 를 구조화하라.
    • OAuth를 내리고, Traffic processing 을 하라.
    • 당신의 API는 Content Delivery Network 을 위한 원격조종기이다.
  2. 탄력적으로 서비스하라(Serve Elastically)
    Mobile + Global 은 미친 짓이다.
    때때로, 이것은 대단히 비극적인 성공이라고 불리기도 한다.

    • Anycasting : 어디에서나 붙을 수 있고
    • Cloudscaling : 클라우드 기반의 Scale-out
    • Geographic redundancy : 지역별로 복제해서 트래픽이나 데이터를 분산하라.
  3. 보편적으로 만들어라(Specialize Universally)
    하나의 크기로는 어떠한 것도 맞출 수 없다.

    • Security protocol and version
    • Audit and regulation compliance
    • Device format and bandwidth

이 세가지 지침은 운영 탄력성을 극도로 높여준다. 그리고, 당신이 비즈니스를 글로벌화하는 동안에 블랙스완으로부터 숨도록 도와준다.
Taleb 는 블랙스완에 탄력적인 사회를 위해 10개의 규칙을 제시했다.

이 중에 6번째가, “비록 경고문이 붙어 있어도, 다이너마이트를 아이들에게 주지마라.”는 것이다.

API는 글로벌 규모에 도달한다면, 이미 다이너마이트다.
API는 당신 사업의 장애물들을 안보이게 만들 수 있다.
API는 당신의 인프라를 망가뜨릴 수도 있다.

하지만, 당신은 어린아이가 아니고 경고문을 볼 수 있다. 경고를 보고 대비하라.

Distribute Locally
Serve Elastically
Specialize Universally

Advertisements

답글 남기기

아래 항목을 채우거나 오른쪽 아이콘 중 하나를 클릭하여 로그 인 하세요:

WordPress.com 로고

WordPress.com의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Twitter 사진

Twitter의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Facebook 사진

Facebook의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

Google+ photo

Google+의 계정을 사용하여 댓글을 남깁니다. 로그아웃 / 변경 )

%s에 연결하는 중

정보

이 엔트리는 2011년 10월 28일에 님이 API와 기술에 게시하였으며 , 태그가 지정되었습니다.

내비게이션

%d 블로거가 이것을 좋아합니다: