2019/01/17
好きなAws
Lambda, cognito
その他60%!!
{
  id: "id12345678",
  expire: "12345678", //TTL
  payload: {
    expire: "12345678",
    d1: "22.2", //温度
    d2: "33.3"  //湿度
  }
}やった事
baopham/dynamodb
$ composer require baopham/dynamodb
$ vi config/app.php <- 'providers'に追加
$ php artisan vendor:publish
 Which provider or tag's files would you like to publish?:
  [0 ] Publish files from all providers and tags listed below
  [1 ] Provider: BaoPham\DynamoDb\DynamoDbServiceProvider
  [2 ] Provider: BeyondCode\DumpServer\DumpServerServiceProvider
  [3 ] Provider: Fideloper\Proxy\TrustedProxyServiceProvider
  [4 ] Provider: Illuminate\Foundation\Providers\FoundationServiceProvider
  [5 ] Provider: Illuminate\Mail\MailServiceProvider
  [6 ] Provider: Illuminate\Notifications\NotificationServiceProvider
  [7 ] Provider: Illuminate\Pagination\PaginationServiceProvider
  [8 ] Provider: Laravel\Tinker\TinkerServiceProvider
  [9 ] Tag: config
  [10] Tag: laravel-errors
  [11] Tag: laravel-mail
  [12] Tag: laravel-notifications
  [13] Tag: laravel-pagination
 > 1
Copied File [/vendor/baopham/dynamodb/config/dynamodb.php] To [/config/dynamodb.php]
Publishing complete.nodejsインストール
welcome.blade.phpの修正、
ExampleComponent.vue追加
自身のapiをaxiosで叩き、DynamoDbよりデータ取得
sudo amazon-linux-extras install epel
sudo yum install -y nodejsis 何?
比較的大きなものでも動かせるようになるので、laravel等のフレームワーク用のLayer作っておいてソースだけをLambda Functionにdeployとかできるかもですね。
is 何?
Serverless Application Model
AWS SAM は言うならば、 AWS CloudFormation (以降 CFn) のサーバーレス拡張 です。AWS SAM の各リソースは CFn のこれまでのリソース定義と似たフォーマットで定義されており、このフォーマットで記述されたテンプレートを CFn に渡すことで、スタックとして AWS 上に展開することができます。具体的には以下のような感じです。YAML または JSON で記述することができます。
AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Resources:
FunctionName:
  Type: AWS::Serverless::Function
  Properties:
    Handler: index.handler
    Runtime: nodejs4.3api gateway:
/css/app.css等のpathがdefaultでは表示できなかった。
→ api gatewayのリソースとして
  追加してやれば表示できると思う
Lambda Layer:
もっとLaravel特有の部分とソースを分けておいてよかったように思う。
”AWS Lambda で Laravel を動かしてみた”をやってみた
https://qiita.com/ikegam1/items/b96a496751d448fffe6c
Lambda on Laravel on VueJs with Dynamodb する
https://qiita.com/ikegam1/items/e903aab13ad026287e39
https://github.com/ikegam1/Lambda-on-Laravel-on-VueJs-with-Dynamodb