• 検索結果がありません。

Bluemixにおける XXXXX

N/A
N/A
Protected

Academic year: 2021

シェア "Bluemixにおける XXXXX"

Copied!
25
0
0

読み込み中.... (全文を見る)

全文

(1)

IBM Bluemix テクニカル・セミナー

API Connect / API Management

2016年07月26日

日本アイ・ビー・エム 株式会社

クラウド・ソフトウェア事業部

Bluemix & XaaS テクニカル・セールス

伊藤 拓也

(2)

Disclaimer

ワークショップ、セッション、および資料は、IBMまたはセッション発表者によって準備され、それぞれ独自の見解を反映したものです。それらは情報提供の 目的のみで提供されており、いかなる参加者に対しても法律的またはその他の指導や助言を意図したものではなく、またそのような結果を生むものでもあ りません。本講演資料に含まれている情報については、完全性と正確性を期するよう努力しましたが、「現状のまま」提供され、明示または暗示にかかわら ずいかなる保証も伴わないものとします。本講演資料またはその他の資料の使用によって、あるいはその他の関連によって、いかなる損害が生じた場合も、 IBMは責任を負わないものとします。 本講演資料に含まれている内容は、IBMまたはそのサプライヤーやライセンス交付者からいかなる保証または表明 を引きだすことを意図したものでも、IBMソフトウェアの使用を規定する適用ライセンス契約の条項を変更することを意図したものでもなく、またそのような 結果を生むものでもありません。 本講演資料でIBM製品、プログラム、またはサービスに言及していても、IBMが営業活動を行っているすべての国でそれらが使用可能であることを暗示す るものではありません。本講演資料で言及している製品リリース日付や製品機能は、市場機会またはその他の要因に基づいてIBM独自の決定権をもって いつでも変更できるものとし、いかなる方法においても将来の製品または機能が使用可能になると確約することを意図したものではありません。本講演資 料に含まれている内容は、参加者が開始する活動によって特定の販売、売上高の向上、またはその他の結果が生じると述べる、または暗示することを意 図したものでも、またそのような結果を生むものでもありません。 パフォーマンスは、管理された環境において標準的なIBMベンチマークを使用した測定と 予測に基づいています。ユーザーが経験する実際のスループットやパフォーマンスは、ユーザーのジョブ・ストリームにおけるマルチプログラミングの量、入 出力構成、ストレージ構成、および処理されるワークロードなどの考慮事項を含む、数多くの要因に応じて変化します。したがって、個々のユーザーがここ で述べられているものと同様の結果を得られると確約するものではありません。 記述されているすべてのお客様事例は、それらのお客様がどのようにIBM製品を使用したか、またそれらのお客様が達成した結果の実例として示されたも のです。実際の環境コストおよびパフォーマンス特性は、お客様ごとに異なる場合があります。

IBM、IBM ロゴ、ibm.com、Bluemix、IBM MobileFirst は、世界の多くの国で登録されたInternational Business Machines Corporationの商標です。

他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。

現時点でのIBM の商標リストについては、www.ibm.com/legal/copytrade.shtmlをご覧ください。 Windowsは Microsoft Corporationの米国およびその他の国における商標です。

(3)

アジェンダ

API とは?

API による新しいエコシステム

Bluemix と API

API Connectとは

料金プラン

導入体系と機能の違い

API Connectが管理するAPIのライフサイクル

(デモ)API Connect で API を作る

事例

サンプル構成

(4)

API とは?

Application Programming Interface

プログラマが何らかの機能を実行できるように公開された関数

何かを

インプット

して、

処理

して、目的の

アウトプット

が得られる

データを

インプット

して、

保存

して、

保存結果

を得る

音声を

インプット

して、

テキストに変換

して、

変換結果

を得る

上記の

処理

の中身の部分は公開する必要がない

機密保持

バージョン管理/メンテナンス性

最近の主流は REST API

HTTP ベース

言語非依存

API を「第三者に使ってもらう」という考え方

自分が持っているデータやシステムを、API として第三者に公開する

使ってもらうことで利用料金を得る

今までゼロから作る必要があったものが簡単に使えるようになる

新しいアイデアの想起、開発部門のアウトソーシング、・・・

API

(5)

CRUD

例えば「商品(item)」をデータベース化する場合

新規作成

読み込み

更新

削除

C

reate

R

ead

U

pdate

D

elete

列名

目的

属性

ID

ユニークID

数字/一意

NAME

名前

文字列

CATEGORY_ID

カテゴリID

数字

CODE

バーコード文字列

文字列

PRICE

価格

数字

URL

画像URL

文字列

一連の処理をまとめて “CRUD” と呼ぶ

(6)

CRUD をルール化

CRUD 処理と HTTP リクエストを対応させてルール化

新規作成

読み込み

更新

削除

CRUD

目的

HTTP リクエスト

Create

新規作成

POST /item

Read

一覧取得

GET /item(s)

1データ取得

GET /item/{id}

Update

データ更新

PUT /item/{id}

Delete

削除

DELETE /item/{id}

REST(Representational State Transfer) API

特徴:言語に依存しない

(7)

データ API によるエコシステム

商品

データ

社内業務アプリで利用

商品データの参照機能だけ API にして公開

呼び出し回数に制限をかけて提供

他サイトで商品を紹介

比較サイト

(8)

銀行で例える API エコノミー

API で銀行の機能(サービス)やデータを提供することで

新しいビジネスを生み出すのが APIエコノミー

API

エコノミー

為替

レート

参照

銀行

B2B パートナー ウェブサイト スマートフォン タブレット スマート テレビ ゲーム機 スマートカー コネクテッド家電

などなど・・

¥

サービスやデータ

例:

通販サイト

に決済機能

をAPIで提

供し、決済

ごとに手数

料をいただ

例:

残高データ

を家計簿

アプリに提

供し、利便

性やUXを向

例:

経費管理

アプリに

為替レート

をAPIで提供

し、月料金

をいただく

例:

車が最寄り

ATMにガイ

ドができる

ようにATM

位置情報を

APIで提供

(9)

API Connectとは

API ConnectはAPIの作成・実行・管理・保護を圧倒的な

スピードで実現する包括的なAPI基盤ソリューション

API基盤ソリューション

外部

アプリ開発者

クライアント

アプリケーション

社内 取引先 IoT モバイル Web B2B SaaS ESB Web Service

IBM z

バックエンド

システム

API公開

APIプロバイダー

APIコンシューマー

作成

実行

管理

保護

(10)

作成

迅速なモデル駆動型APIの作成

データソースからのAPIマッピングの自動化

Swagger 2.0 API仕様のGUIツールによる定義

ローカルでのAPI作成とテスト

API、プラン、製品のステージング

(11)

API Connect で API を作成する

API 自動生成

item

列名

目的

属性

ID

ユニークID

数字/一意

NAME

名前

文字列

CATEGORY_ID

カテゴリID

数字

CODE

バーコード文字列 文字列

PRICE

価格

数字

URL

画像URL

文字列

データソースを与えるだけで、テーブル構造から

一連の REST API をリバース生成して公開する

つまり(既存の)データベースを簡単に

OpenAPI(Swagger) と呼ばれる標準形式で、

ドキュメント化されて公開される

(12)

実行

作成したAPIと管理ポータルの実行環境を提供

エンタープライズHA とオートスケーリング

(13)

Bluemix で API を使うメリット

Auto-Scaling サービスによる API サーバーの負荷対策

ランタイム(アプリケーションサーバー)のインスタンス数をランタイムの負荷に

応じて、自動で調整するビルトイン機能。サービスそのものは無料。

アクセス頻度が高くなった時だけサーバーをスケールアウトすることで、

トータスコストを抑えたパフォーマンスの確保が可能。

(14)

管理

公開するAPI、プラン、製品の定義

クライアントIDの発行と管理

利用者の制限/利用者ごとの利用量制限

(15)

APIを管理する

製品やアプリケーション、プランなど

アプリケーションの登録や

サブスクリプションの認証

(16)

保護

APIのサーバーのホスト名や IP アドレスの隠蔽

レート制限

(17)

デモ(既存DBからAPI を作成し、Bluemixに公開する)

API Connect

id

category_id

name

price

2

2

Apple

140

12

2

Pear

160

22

2

Watermelon

1800

StrongLoop

clearDB

API Manager

Bluemix

Application

Developer

1.

既存DBからモデルとAPIを作成し、Bluemixに公開する

2.

アカウントを発行し、サブスクリプションを認証する

3.

発行されたアカウントを利用してAPIからデータを取得する

(18)

料金プラン

プラン

フィーチャー(1ヶ月あたり)

料金(APIの呼び出し回数)

Essentials

5 万回の API 呼び出し

無料

Professional

10 万回の API 呼び出し毎

¥8,400/10 万回

Enterprise

10 万回の API 呼び出し毎

¥10,500/10 万回

Professional 5M

500 万回の API 呼び出し以降は 10 万回の

API 呼び出し毎

¥262,600/最初の 500 万回

¥8,400/その後の 10 万回

Enterprise 25M

2500 万回の API 呼び出し以降は 10 万回の

API 呼び出し毎

¥1,051,000/最初の 2500 万回

¥10,500/その後の 10 万回

(19)

導入

形態と機能の違い

多様な導入形態

SaaS

パブリック・

クラウド(IaaS)

オンプレミス

APIゲートウェイ

API運用管理

ランタイム運用管理

仮想アプライアンス

仮想アプライアンス

Bluemix

IBM

IBM

Bluemix

お客様

お客様

お客様

お客様

お客様

IBM

ソフトウェア

物理/仮想アプライアンス

ソフトウェア

仮想アプライアンス

APIマネージャー

開発者ポータル

(20)

事例、ユースケース

ジャイアンツハッカソン

http://event.samurai-incubate.asia/yomiuri-hack/

ハッカソン参加者に提供する API を作成し、

参照機能だけを認証付きで提供

(21)

(0)

各種データ

(このままの公開は不

可)

API Connect

検索

作成

更新

削除

存在

確認

各種APIを自動生成

ここだけ公開

ハッカソン参加チーム

(2) API manager

→ IBM Cloud

DB

CSV

XLS

(22)

サンプル構成と価格(円/月額)

Node.js で API を実行

最大3インスタンスまでスケールアウト

全文検索機能(オプション)

API の利用状況を管理/監視

(20GB)

38,745

(Free)

¥0

(1,440GBH)

¥5,181

(260K MPV)

¥25,200

(20GB)

¥74,376

(23)

まとめ

Bluemix は3つの視点で API と親和性が高い

作る

使う

管理する

Strongloop LoopBack によって、データベースのモデル情報

から REST API を自動作成することが可能になる

Auto Scaling サービスによって、API サーバーの負荷に応じ

たサーバーリソース最適化運用が可能になる

API Management / API Connect によって、公開 API の非

機能要件対応が可能になり、本格的な API ビジネスが可能に

なる

(24)

参考資料

CentOS に StrongLoop をインストールする

http://dotnsf.blog.jp/archives/1044734593.html

StrongLoop アプリで MySQL を使う

http://dotnsf.blog.jp/archives/1047831609.html

LoopBack で生成した API でクエリーパラメータを指定する

http://dotnsf.blog.jp/archives/1051526511.html

Bluemix のオートスケール機能を使う

http://dotnsf.blog.jp/archives/1022754046.html

IBM Bluemix の API Management サービス

http://dotnsf.blog.jp/archives/1039539746.html

API Management でパラメータ/パスをラッピングする方法

http://dotnsf.blog.jp/archives/1051578630.html

Cloudant 内のデータをインデックスして検索する

(25)

参照

関連したドキュメント

[r]

[r]

奥付の記載が西暦の場合にも、一貫性を考えて、 []付きで元号を付した。また、奥付等の数

奥付の記載が西暦の場合にも、一貫性を考えて、 []付きで元号を付した。また、奥付等の数

名      称 図 記 号 文字記号

従来から iOS(iPhone など)はアプリケーションでの電話 API(Application Program

“〇~□までの数字を表示する”というプログラムを組み、micro:bit

関西学院大学には、スポーツ系、文化系のさまざまな課