빌링:미터링 bss platform구현

56
빌링 / 미터링 BSS 플랫폼 구현 O pen Cloud Engine Sang Song 2015 - 2 - 13 www.opencloudengine.org

Upload: -

Post on 19-Jul-2015

186 views

Category:

Technology


4 download

TRANSCRIPT

Page 1: 빌링:미터링 Bss platform구현

빌링/미터링 BSS 플랫폼 구현Open Cloud Engine

Sang Song

2015-2-13

www.opencloudengine.org

Page 2: 빌링:미터링 Bss platform구현

Dollar Shave Club

• 3 Plans• Upgrade / Downgrade at any time• 2012 YouTube video viral “Our Blades Are F***ing Great”• 1.2million customers• $7million / month• 20 percent of its customers are women• Disrupted Gillette and Schick

https://www.youtube.com/watch?v=ZUG9qYTJMsI

Page 3: 빌링:미터링 Bss platform구현

Subscription Services

• 핸드폰요금

• 인터넷요금

• 정수기 / 공기청정기

• Amazon AWS

• Salesforce

• Netflix

• Google apps

• Dropbox

• Evernote

• 이카운트 ERP

Page 4: 빌링:미터링 Bss platform구현

Pricing

Page 5: 빌링:미터링 Bss platform구현

Subscription Pricing

http://www.salesforce.com/kr/

Page 6: 빌링:미터링 Bss platform구현

SaaS Pricing Strategy Components

1. Packaging

• Enterprise, personal. Features and functionality

2. Regional pricing

• US pricing vs. Asia pricing

3. Customer/Market segmentation

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Page 7: 빌링:미터링 Bss platform구현

SaaS Pricing Strategy Components

4. Loyalty discounts

• Historical spend

5. Volume discounts

• Quantity purchased

6. Payment and credit adjustments

• Quarterly, monthly.

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Page 8: 빌링:미터링 Bss platform구현

SaaS Pricing Strategy Components

7. Usage type adjustments

• Subscription vs. pay-per-use

8. Promotions

• Limited time in a region

9. Upgrade/Cross grades discounts

10.Channel discounts

• Partners

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Page 9: 빌링:미터링 Bss platform구현

Pricing lever example

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Page 10: 빌링:미터링 Bss platform구현

SaaS Pricing Practices

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Leaders Mainstream Laggards

Pricing strategy • Pricing metrics are defin

ed as perceived by the

customers

• Pricing strategy is easy t

o understand, measure.

• Boundaries for usage, fe

atures, time, conversion

from trial are clearly def

ined

• Pricing is ad hoc

• Pricing is based on inter

nally-oriented metrics

• Difficult to convert trial

and freemium to paid

Page 11: 빌링:미터링 Bss platform구현

SaaS Pricing Practices

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Leaders Mainstream Laggards

Price formulation • Pricing determined by b

reakeven point, paymen

t benefit

• Capability to price at th

e feature level

• Guided selling

• Pricing rules enable up-

selling and cross-sell

• Inability to adjust price

for different market seg

ment and features

Page 12: 빌링:미터링 Bss platform구현

SaaS Pricing Practices

pwc-the-future-of-software-pricing-excellence-saas-pricing by PwC

Leaders Mainstream Laggards

Transaction management

• Models for impact on r

ecurring revenue, future

discounts, competitor re

action and price set for

the market

• Loyalty-based discounts • Poor control around dis

counting

Page 13: 빌링:미터링 Bss platform구현

Billing

Page 14: 빌링:미터링 Bss platform구현

SaaS Subscription-Billing Services

Zuora Aria

Hiveage Chargify

And more..

Page 15: 빌링:미터링 Bss platform구현

• Plan

– 하나의 과금정책

• Service

– Plan을 구성하는 하나의 제공 Feature

• Service and Rate

– 각 Feature들의 가격정책

• Recurring Billing

– 반복적인 과금. 매월, 매분기 또는 매년

SaaS Subscription Words

Page 16: 빌링:미터링 Bss platform구현

SaaS Subscription Words

Page 17: 빌링:미터링 Bss platform구현

SaaS Subscription Words

Page 18: 빌링:미터링 Bss platform구현

SaaS Subscription Words

Page 19: 빌링:미터링 Bss platform구현

Aria Systems

Page 20: 빌링:미터링 Bss platform구현

Aria Systems

Page 21: 빌링:미터링 Bss platform구현

Zuora

• Sells a billing platform

• Founded 2007 by Tzuo

• Z-Billing, Z-Commerse, Z-Finance, Z-Pay

ment, Z-Tax

• Zendesk, Box, Dell, HP Cloud, SugarSync,

etc..

Page 22: 빌링:미터링 Bss platform구현

Zuora

Page 23: 빌링:미터링 Bss platform구현

Zuora

Page 24: 빌링:미터링 Bss platform구현

Zuora

1. One-time Pricing Model

1. 가입시 한번

2. 기본료

3. 상품에 따라 무상 혹은 할인가능

2. Recurring Pricing Model

1. 주기적으로 반복되어 과금

2. 한도를 넘어서면 제한 또는 추가과금

3. Usage-based Pricing Model

1. 사용량에 비례하여 과금

2. 사용량이 늘어나면 할인가능

Page 25: 빌링:미터링 Bss platform구현

Zuora

Page 26: 빌링:미터링 Bss platform구현

Zuora

Page 27: 빌링:미터링 Bss platform구현

• Aria + IBM Cloud + Zuora 의 과금모델을 분석하여 만든 과금 라이브러리

• Java 1.6+• 소스 - http://www.opencloudengine.org/svn

/garuda/trunk/bss-monetization/

List<Plan> planList = app.getPlanList();

Plan plan = planList.get(0);

BillingContext context = new BillingContext();

ServiceUsages serviceUsages = plan.calculate(context);

// serviceUsages가 Billing 과금결과.

OCE 오픈소스 과금라이브러리

Page 28: 빌링:미터링 Bss platform구현

OCE 오픈소스 과금라이브러리

Page 29: 빌링:미터링 Bss platform구현

OCE 오픈소스 과금라이브러리

Page 30: 빌링:미터링 Bss platform구현

More

• 첫 과금모델은 불완전할 수 밖에 없다.

• Listen to customers voice.

• Trial, Freemium 기간에 검증하라.

• 패턴분석 – 시간, 사용량, 사용자 분류

• Plan 향상 – Win-win

Page 31: 빌링:미터링 Bss platform구현

Metering

Page 32: 빌링:미터링 Bss platform구현

• Measures how much resource used

• Billing source data

• Data loss -> Money trouble

• Logging

• Centralization

• Aggregate

Metering

Page 33: 빌링:미터링 Bss platform구현

Metering System Arch.

Page 34: 빌링:미터링 Bss platform구현

Metering 사용방식

미터링방식

사용시스템

장점 단점 적합성

API Call AriaZuora

로그가 로컬에남지 않음

• 원본로그를 직접관리

• 10분에 8000건호출등의 제약

• Https필수.

외부시스템에서Billing Service연동시 적합

Log Agent OCE 파일로그를 이용하므로 로그의 손실우려없음

웹어플리케이션과빌링서비스가 다른네트워크에 있을경우 로그가 보안노출위협. TCP on SSL 필수.

내부 PaaS 시스템에서 적합.하지만 SSL사용시 외부시스템도가능.

Page 35: 빌링:미터링 Bss platform구현

Billing / metering

프레임워크 개발

Page 36: 빌링:미터링 Bss platform구현

Final Billing System Arch.

Page 37: 빌링:미터링 Bss platform구현

Billing API

HTTPMethod

URI Description

GET /app/{appId}/plan 플랜정보취득

POST /app/{appId}/tenant

param1 : tenantId={tenantId}param2 : planId={planId}

사용자 가입

GET /app/{appId}/tenant/{tenantId} 사용자 가입정보 취득

Page 38: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

A. 사용자의 Subscription 변경시

B. 사용자의 Subscription 해지시

C. Subscription이 Expired 되었을때

D. PLAN내용 변경시

1. 정책변경

Page 39: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

A. 서비스호출전 항상 확인

B. 서비스호출후 Update

C. 분산캐시솔루션

D. 초과상태 Update 주기

E. 초과제한시 Flag On

2. 허용량 초과 대응

Page 40: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

A. 프로세스(JVM)당 하나의 로그파일

B. 로그기록 라이브러리

3. 로그기록

Logger Throughput / Thread

Log4j 2 All Async 288,997

Log4j 2 Async Appender 23,980

Log4j 1 Async Appender 14,072

Log4j 2 Synchronous 4,253

Log4j 1 Synchronous 3,509

http://logging.apache.org/log4j/2.x/

Page 41: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

4. 로그백업

# 해당날짜의 로그파일을 하나의 파일로 압축한다.

$ tar cf metering.log.<DATE>.tar.gz metering.*.log.<DATE>

# 압축파일을 백업서버로 복사한다.

$ scp metering.log.<DATE>.tar.gz

<backup_server_ip>:/< backup_path>

Page 42: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

5. 과금계산단위

A. 사용자의 Subscription 해지 / 변경시

B. Provider의 Plan 변경시

C. 잔여비용 반환 / 비용 적용 구간

D. 아마존 1시간 단위

E. Google Cloud 기본 10분, 이후 1분 단위

https://cloud.google.com/compute/

Page 43: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

6. 사용량 / 비용 계산 주기

A. Recurring pricing : 허용량 초과시

B. Usage-base pricing

C. 1분주기 계산후 1시간, 1일, 1달 단위로 합산

Page 44: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

7. Raw 로그데이터저장소

A. 비정형 데이터 - NoSQL

B. 로그검색

C. 통계분석

Page 45: 빌링:미터링 Bss platform구현

Billing 프레임워크 개발 고려사항

8. 로그수집기 SOF 문제

A. 중앙의 로그수집기 FAIL시 Money trouble

B. 이중화

C. Fluentd <match metering.log>

type forward

flush_interval 1s

<server>

name log-collector1

host 172.17.0.179

port 24224

</server>

<server>

name log-collector2

host 172.17.0.180

port 24224

</server>

</match>

Page 46: 빌링:미터링 Bss platform구현

Demo

Page 47: 빌링:미터링 Bss platform구현
Page 48: 빌링:미터링 Bss platform구현

패턴분석

Page 49: 빌링:미터링 Bss platform구현

사용자 패턴분석

• Subscriber에게 더 나은 Plan 제공

• Provider는 최대 수익지점 예측

• 조용한 사용자

Page 50: 빌링:미터링 Bss platform구현

서비스 사용률, 서비스별 사용비율, 조직별 사용비율, 사용위치정보, 그

리고 상세 데이터 테이블까지 대시보드에서 한눈에 확인할 수 있다.

Kibana를 통한 서비스사용 패턴분석

http://www.elasticsearch.org/overview/kibana

Page 51: 빌링:미터링 Bss platform구현

Claim 대응

http://www.elasticsearch.org/overview/kibana

(”basic service" OR ”advance service") AND uengine

Page 52: 빌링:미터링 Bss platform구현

Fastcat분석기를 통한 검색패턴분석

http://fastcatsearch.org/viewInOnePage/24

Page 53: 빌링:미터링 Bss platform구현

http://fastcatsearch.org/viewInOnePage/24

Fastcat분석기를 통한 검색패턴분석

Page 54: 빌링:미터링 Bss platform구현

http://fastcatsearch.org/viewInOnePage/24

Fastcat분석기를 통한 검색패턴분석

Page 55: 빌링:미터링 Bss platform구현

결론

Page 56: 빌링:미터링 Bss platform구현

결론

Provider는 Plan의 적극적인 설계가 중요

• 고객의 피드백을 적극 수용하라

• 조용한 고객을 대비하여 패턴분석을 하라

• 패턴분석결과로 고객그룹을 나누어 Plan을 재정비하라

• 수요를 예측하고 적합한 가격결정을 하라

• 고객이 기능별로 선택하여 구성할 수 있도록 하라

• 플랜별 기능구분을 명확히 느끼도록 하라

• Up-selling과 Cross-selling을 유도하라

• Trial에서 Paid로 전환이 용이하도록 하라

• Discount 정책을 적절히 활용하라