29
AWS Datasource for CakePHP わたなべかずひろ@kaz_29 201144日月曜日

Phpカンファレンス関西2011 lt

Embed Size (px)

DESCRIPTION

PHPカンファレンス関西 AWS Datasource for CakePHP

Citation preview

Page 1: Phpカンファレンス関西2011 lt

AWS Datasource for CakePHPわたなべかずひろ@kaz_29

2011年4月4日月曜日

Page 2: Phpカンファレンス関西2011 lt

目次•自己紹介•AWS Datasource for CakePHP

•EC2 Datasource•S3 Datacource•おまけ

2011年4月4日月曜日

Page 3: Phpカンファレンス関西2011 lt

自己紹介• わたなべかずひろ• 株式会社イーツー(E2)-CTO• 主にWeb系の受託開発会社• 公式サイトとか携帯CMSとか作ってます• 最近は、iPhoneアプリ書いてます!• id:kaz_29(kaz29)• #iphonedev #cakephp #lithium #php • #golf #cat #beer

2011年4月4日月曜日

Page 4: Phpカンファレンス関西2011 lt

おみやげ持ってきました!

2011年4月4日月曜日

Page 5: Phpカンファレンス関西2011 lt

AWS(Amazon Web Services)

知ってる人?2011年4月4日月曜日

Page 6: Phpカンファレンス関西2011 lt

AWS(Amazon Web Services)

使ってる人?2011年4月4日月曜日

Page 7: Phpカンファレンス関西2011 lt

AWS歴三週間!

2011年4月4日月曜日

Page 8: Phpカンファレンス関西2011 lt

一人一インスタンス支給

2011年4月4日月曜日

Page 9: Phpカンファレンス関西2011 lt

使ってない時は電源落として経費節約!

2011年4月4日月曜日

Page 10: Phpカンファレンス関西2011 lt

Management Console渡すのはちょっと嫌だ!

2011年4月4日月曜日

Page 11: Phpカンファレンス関西2011 lt

時間無いから作っちゃおう(><)!

2011年4月4日月曜日

Page 12: Phpカンファレンス関西2011 lt

AWS Datasourcefor CakePHP

2011年4月4日月曜日

Page 13: Phpカンファレンス関西2011 lt

AWS Datasource for CakePHP

•EC2 Datasource•S3 Datasource

2011年4月4日月曜日

Page 14: Phpカンファレンス関西2011 lt

AWS Datasource for CakePHP

•EC2 Datasource•S3 Datasource•S3 Behavior

2011年4月4日月曜日

Page 15: Phpカンファレンス関西2011 lt

EC2 Datasource• describe_regions

• describe_security_groups

• describe_availability_zones

• describe_images

• describe_addresses

• describe_instances

• describe_key_pairs

2011年4月4日月曜日

Page 16: Phpカンファレンス関西2011 lt

EC2 Datasource• start_instances

• stop_instances

• run_instances

• terminate_instances

• associate_address

• deassociate_address

2011年4月4日月曜日

Page 17: Phpカンファレンス関西2011 lt

AWS Datasource for CakePHP

•EC2 Datasource•S3 Datasource•S3 Behavior

2011年4月4日月曜日

Page 18: Phpカンファレンス関西2011 lt

S3 Datasource• create_bucket

• delete_bucket

• list_buckets

• create_object

• delete_object

• list_objects

2011年4月4日月曜日

Page 19: Phpカンファレンス関西2011 lt

AWS Datasource for CakePHP

•EC2 Datasource•S3 Datasource•S3 Behavior

2011年4月4日月曜日

Page 20: Phpカンファレンス関西2011 lt

S3 Behavior

• create_object

さっき作りました(><)2011年4月4日月曜日

Page 21: Phpカンファレンス関西2011 lt

サンプル

2011年4月4日月曜日

Page 22: Phpカンファレンス関西2011 lt

Instanceの検索$result = $this->Model->find('all', array('conditions'=>array('region' => ‘ap-northeast-1’

)));

2011年4月4日月曜日

Page 23: Phpカンファレンス関西2011 lt

Instanceの制御// 起動$this->Model->start_instances(‘インスタンスID’);// 停止$this->Model->stop_instances(‘インスタンスID’);// 削除$this->Model->terminate_instances(‘インスタンスID’);// 作成$params = array('params' => array($imageId, 1, 1,

array('InstanceType' => 't1.micro') ), 'region' => ‘ap-northeast-1’ );$result = $this->Model->run_instances($params);

2011年4月4日月曜日

Page 24: Phpカンファレンス関西2011 lt

S3に保存// データの保存

$data = array( 'bucket' => ‘testbucket.example.com’, 'filename' => 'aws_datasource_test_object', 'body' => 'ぽぽぽぽ~ん!', ); $this->S3Object->create(); $this->S3Object->set($data); $result = $this->S3Object->save();

2011年4月4日月曜日

Page 25: Phpカンファレンス関西2011 lt

S3から読込む// 情報取得$conditions = array( 'bucket' => Configure::read('AWSDataSource.s3test.bucket'), 'prefix' => 'aws_datasource_test_object',);$result = $this->S3Object->find('first', array( 'conditions'=> array( 'bucket' => ''testbucket.example.com'', 'prefix' => 'aws_datasource_test_object',));// データを読込む$result = $this->S3Object->get_object( 'testbucket.example.com', 'aws_datasource_test_object');

2011年4月4日月曜日

Page 26: Phpカンファレンス関西2011 lt

githubに上げましたhttps://github.com/kaz29/aws-datasource-for-cakephp

2011年4月4日月曜日

Page 27: Phpカンファレンス関西2011 lt

まだサポートしていないAPIが多数

2011年4月4日月曜日

Page 28: Phpカンファレンス関西2011 lt

どんどんForkしてAPI追加してください

2011年4月4日月曜日

Page 29: Phpカンファレンス関西2011 lt

ご清聴ありがとうございました(><)

2011年4月4日月曜日