紹介 絵本レコメ 2014年_技術系02
Transcript of 紹介 絵本レコメ 2014年_技術系02
5/8/14 Simple Tech Plus 2
目 次
Google App Engine
Slim3 ( スリムスリー )
Oauth (オーオース)
Amazon Product Advertising API
次回は?
5/8/14 Simple Tech Plus 3
Google App Engin (グーグル アップエンジン)
簡単に紹介すると・・・
Web サーバー兼 AP サーバ 兼 DB サーバー
Eclipse ( Java )から簡単公開
Java 、 Python 、 PHP 、 Go
ローカルで開発して、『公開』がすぐ可能!
5/8/14 Simple Tech Plus 4
Google App Engin (グーグル アップエンジン)
詳細な機能の一部・・・機能 説明
Google Cloud SQL = MySQL です。大規模データベース対応!! ( 2014 年 2 月に正式公開)
Datastore NoSQL(Not only SQL) 。いわゆる Apache HBase(Hadoop) 、 Apache Cassandra などなど。今までの RDB の考え方(固定のテーブルレイアウト定義とか)とは異なる思想の分散データストア実装 (BigTable) を扱うための機能を 'Datastore' と呼ぶ。
Memcache( メムキャッシュ ?)
分散メモリキャッシュ。ストレージではなく、メモリ上に一時的にデータを保存。複数台のサーバーで動いている上で、キャッシュを共通のものとして利用できる。
Mail メール送受信。Scheduled Tasks スケジュール実効機能。
もちろん Web サーバーの機能もありますので Http リクエストを受け付けて、クライアントに返します。
5/8/14 Simple Tech Plus 5
Google App Engin (グーグル アップエンジン)
個別の機能の API は用意されているけど・・・
正直、これだけでは開発が大変です。。。
そこで、 Web アプリ開発用の『 Slim3 』の登場
5/8/14 Simple Tech Plus 6
Slim3 (スリムスリー)
Seaser2 の開発者が開発
App Engine/J 用の MVC フレームワーク
ソースを自動生成( Model とか)
Slim3 Datastore
(標準の Datastore を型指定で利用可能)
Slim3 は 5 年前にリリースされたので最新技術ではない。
特に Datastore は MySQL がサポートされたので・・・。
5/8/14 Simple Tech Plus 7
Slim3 DataStore
public List<BookReview>
getBookReviewsPublic(int pOffsetIndex , int pLimitCnt)
{
BookReviewMeta e = BookReviewMeta.get();
return Datastore.query(e)
.filter(e.publicReview.equal("on"))
.sort(e.reviewDate.desc)
.offset(pOffsetIndex)
.limit(pLimitCnt)
.asList();
}
5/8/14 Simple Tech Plus 8
Slim3 コントローラ
マッピング用の XML ファイルは不要。
こんな感じで URL との対応関係が意識せずに利用できる。
http://ehonrecomme.appspot.com/use/Regist
↓ 呼び出すサーブレット(及びメソッド)は?
ehonrecomme.controller.use.RegistController の run()
5/8/14 Simple Tech Plus 12
Oauth (オーオース)
あるサービスがユーザーの認可の元で、
別のサービスの情報を取得・追加・更新・削除を
行えるようにするための『仕様』
facebookのアカウントで
” ”ユーザー 認証 して、
” ”名称を 取得 が可能。
パスワード不要。
5/8/14 Simple Tech Plus 13
Oauth (オーオース)
Resource Owner
OAuth Server
OAuth Client
1.別サービス利用(クリック)
2.初回は対象サイトが利用する事を許可する
(許可画面とか出てくる)
3.アクセス用のトークン取得
4.専用の APIでアクセス
0.事前に facebookにアプリ登録が必要
5/8/14 Simple Tech Plus 14
Amazon Product Advertising API
Amazonの商品を紹介して、紹介料を獲得するために商品情報にアクセスを可能にする API
○ 商品の色々な情報にアクセス可能
商品画像
タイトル
著者
・・・
○ アクセス方法
・ REST
・ SOAP
5/8/14 Simple Tech Plus 15
Amazon Product Advertising API
ブラウザ
ブラウザからも HTTP 、 AppEngineのサーバと Amazon間も HTTP(S) でやり取り。
利用しているのは SOAP。 Javaクラスを生成するツールを利用してクラスファイルを生成、 Amazonとのやり取りはそのクラスで実施している。これも古い方法。
最近は REST。 HTTPのシンプルな XML等のデータでのやり取りの事。 facebook では昔REST APIとか言う呼び方をしていた外部公開の APIをGraph APIに変更 (2011年末頃 )。