Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AWS Lambda Node.js

AWS Lambda Node.js

Avatar for Haruyuk Mohri

Haruyuk Mohri

May 04, 2017

Other Decks in Programming

Transcript

  1. AWS Lambda + API Gateway • 例 API Gateway ・関数1()

    ・関数2() ・関数3() Lambda リソース ↓ 処理 ↓ 完了
  2. AWS Lambda Create Function • プログラム 「Hello from Lambda」 exports.handler

    = (event, context, callback) => { // TODO implement callback(null, 'Hello from Lambda'); }; ʻHello from Lambdaʼと出⼒されます。
  3. AWS Lambda Create Function • exports.handler の引数 • event イベントデータをハンドラーに渡します。

    • context 実⾏中の Lambda 関数のランタイム情報を ハンドラーに提供 • callback 呼び出し元に情報を返すために使⽤
  4. AWS Lambda exports.handler の引数 • event exports.handler = (event, context,

    callback) => { // TODO implement callback(null, 'Hello from Lambda'); }; exports.handler = (event, context, callback) => { // TODO implement callback(null, event); };
  5. AWS Lambda exports.handler の引数 • context exports.handler = (event, context,

    callback) => { // TODO implement callback(null, 'Hello from Lambda'); }; exports.handler = (event, context, callback) => { // TODO implement callback(null, context); };
  6. AWS Lambda +API Gateway+ C++Builder • 例 API Gateway ・test_function

    Lambda リソース ↓ 処理 ↓ 完了 exports.handler = (event, context, callback) => { // TODO implement callback(null, event); }; 投げたデータをECHOする C++Builder
  7. C++Builder(Embarcadero) • C++BuilderはTNetHTTPClientと⾔うコンポーネントがあり http / httpsに接続するコードは⾮常にシンプルに書けます。 std::unique_ptr<TNetHTTPClient> net_cliant_{new TNetHTTPClient(nullptr)}; http_

    = net_cliant_->Post( "https://*.execute-api.ap-northeast-1.amazonaws.com/test-function", フォーム設計画⾯ iOS, Android, Windows ターゲットプラットフォームを 変更するだけ (Professional版以上の機能)