プログラマブルクラウドの薦め
-
Upload
shinpei-ohtani -
Category
Technology
-
view
2.845 -
download
1
description
Transcript of プログラマブルクラウドの薦め
プログラマブル クラウド のススメ
@shot6
プログラマ
クラウド
といえば・・・
EC2
使ってるよね?
でも・・・
今日は そこじゃない
クラウドの
API重要
というお話
AWSのあまり聞かないよいところ
プログラマブルなところ
何がうれしいか
EC2 CloudFront VPC
SQS
SNS SimpleDB
RDS EMR
S3
インフラ
ミドルウェア
どれも API装備
どのレイヤもコードで操作可能。
EC2 CloudFront VPC
SQS
SNS SimpleDB
RDS EMR
S3
インフラ
ミドルウェア
さわって みる。
最初に する事
GET AWS SDK
http://aws.amazon.com/sdkforjava/
Java/.NET Python/PHP
accessKey secretKey メモ
Javaの場合。
ProperKesファイルに 記述する
サンプルを動かす
S3 //S3クライアントの作成、ここで先ほどのproper-esを読む
AmazonS3 s3 = new AmazonS3Client(…);
//バケットの作成 s3.createBucket(bucketName);
//オブジェクトのput s3.putObject(new PutObjectRequest(bname, key, file)));
//オブジェクトのget S3Object object = s3.getObject(new GetObjectRequest(bname, key));
SQS //SQSクライアントの作成
AmazonSQS sqs = new AmazonSQSClient(…);
//キューの作成 String myQueueUrl = sqs.createQueue(createQueueReq).getQueueUrl();
//メッセージの送信 sqs.sendMessage(new SendMessageRequest(myQueueUrl, message));
//メッセージの受信 List<Message> messages = sqs.receiveMessage(receiveMessageReq) .getMessages();
どれも簡単
セットアップ してすぐに 使える
インストール 設定も不要
そこで、、、
もう少し ギアを上げる
幾つかを 連携させる
Amazonas
Amazonas
ユースケース1:ファイルアップロード実行、通知、ジョブの実行などの連携機能
S3 ファイル
SNS
完了通知依頼
ジョブ 完了通知
ユースケース2:ファイルの高度な扱い
S3
ファイル
条件付きアップロード 一括アップロード
S3 ファイル
条件付きダウンロード 一括ダウンロード
S3 条件付き削除 論理削除
Amazonas
Amazonas
ユースケース1:ファイルアップロード実行、通知、ジョブの実行などの連携機能
S3 ファイル
SNS
完了通知依頼
ジョブ 完了通知
ユースケース2:ファイルの高度な扱い
S3
ファイル
条件付きアップロード 一括アップロード
S3 ファイル
条件付きダウンロード 一括ダウンロード
S3 条件付き削除 論理削除
こっから自前ライブラリで書いてある
S3 s3 = new S3();
//通知先を指定 s3.setupNo-fica-on("test_receive2");
//オブジェクトput成功すると、SNSで通知 String ret = s3.putObject(”sns_it_test", "mogemoge.txt", new File(”hoge.txt"));
Amazonas
Amazonas
ユースケース1:ファイルアップロード実行、通知、ジョブの実行などの連携機能
S3 ファイル
SNS
完了通知依頼
ジョブ 完了通知
ユースケース2:ファイルの高度な扱い
S3
ファイル
条件付きアップロード 一括アップロード
S3 ファイル
条件付きダウンロード 一括ダウンロード
S3 条件付き削除 論理削除
S3 s3 = new S3();
//一括アップロード List<String> result = s3.putAllObjects(BUCKET_NAME, ”your_directory”);
S3 s3 = new S3();
//論理削除(ゴミ箱バケットに移動) s3.soXDeleteObjects(BUCKET_NAME, "cccc/c2dm.pdf");
//条件付き削除 s3.checkAndDelete(BUCKET_NAME, "moge/events2.txt”, Time.expired("2010/07/21"));
Amazonas
Amazonas ユースケース3:操作の記録
S3
SNS
ユースケース4:暗号化、圧縮などの便利機能
S3
SimpleDB
SQS
操作記録
SimpleDB
SQS
暗号化、圧縮
暗号化
JSONにして、 暗号化
作ったのは こんなんです
Amazon SDK for Java
SimpleDB SQS SNS S3
Amazonas(今回作ったプロト)
データ暗号化 クレデンシャル
管理
操作記録の 収集
通知・連携 機能
簡易利用機能
レプリケー ション
アプリケーションレイヤ
フレームワークレイヤ
Amazonインフラレイヤ
AWSを使ったアプリケーション
複数のAWSサービスを 連携して使う
しゃべり足りないw
時間があったら話したい
忘れないように共有。
Deep dive into SDK
その1
ポリシの 記述の仕方
ポリシAPIを使う方法
その2
連携の仕方
SNS-‐SQS SNS-‐HTTP
URL-‐ARN 変換
その3
何故か無い CloudFront API
をみんなで 考える (実はjets3tにはある)
とかやれたらいいな。
プログラマ
クラウド
叩いて試してみてください
プログラマブル クラウド のススメ
おしまい
Thanks!