SlideShare a Scribd company logo
1 of 34
Download to read offline
Lambdaによる
クラウド型言語の実装
Genki&Sugawara
お前誰よ
• twi%er
• @sgwr_dts
• github/bitbicket
• winebarrel
最近のアクティビティ
• Lambda便利ツール作りました
• lambchop
• h,ps://github.com/winebarrel/lambchop
• Please:try:it:out!
本題
Lambdaを触ってみました
• h#p://so)wh.at/search?q=lambda
• AWS;Lambdaで外部のURLをたたく;);h#p://goo.gl/aZkxTy
• AWS;LambdaでMySQL(RDS)に接続する;);h#p://goo.gl/33tVg1
• aws)sdkで自分自身にイベントを送る;);h#p://goo.gl/GhBykk
• バイナリデータをイベントとして送る;);h#p://goo.gl/Za5EpR
• 任意のシステムコマンドを実行する;);h#p://goo.gl/oJ60F8
スループットを計ってみたり
h"p://www.slideshare.net/winebarrel/
200ksec
twi$erボット作ってみたり
h"ps://github.com/winebarrel/aws6lambda6
tw6bot
僕はこう思ったッス
フィルタであって
ジョブキューではないのかな…
戻り値を受け取りづらい
Developer(Guide(9ページ目
h/p://docs.aws.amazon.com/lambda/latest/dg/lambda=dg.pdf
• context.done()は2つの引数をとる
• 1つ目がnullのときは成功
• null以外のときは失敗。CW(Logsに出力
• 2つ目の引数が与えられた場合、テスト実行コンソールに出力
戻り値を受け取りづらい
CW#Logsはともかく
テスト実行コンソールのログ取得APIがない
単体ではInvokeに一対一で対応した
実行結果を受け取れない
CloudWatch+Logsつらい
• 検索機能がない
• Log%Groupはfunc-on名
• しかし出力先Log%Streamが不定
エラーハンドリングつらい
• エラーのグラフはでるけど個別のエラーはログあさるしかない
• CloudWatch,Logsで探すのめんどい
lambchop)tail
• lambda用のtail
• h*ps://github.com/winebarrel/lambchop/
• blob/master/lib/lambchop/tail.rb
• blob/master/lib/lambchop/watch_dog.rb
中でやってること
• tailコマンド実行後に更新されたLog)Streamを全部取得
• 指定時間以降のLog)Eventを取得、ソートして出力
• 以降繰り返し…
Pythonのツールでも同じことやってた
• kappa
• command*line*tool*for*AWS*Lambda.
• h8ps://github.com/garnaat/kappa
• kappa tailコマンドの実装がほぼ同じ
ちょっとつらい…
AWSはこう思ったッス(想像)
『おおいなる流れ(Stream)の中では
 個々の実行結果などどうでもいいのだ』
現状では個々の実行結果を知るのが厳しい
なのでジョブキュー用途にはあまり向いていないような
戻り値を受け取る方法を
考えてみた
• アプリがLambdaを実行
• uuidを関数コールIDとして付ける
• LambdaはSQSに結果を投げる
• uuidもSQSに投げる
• 別スレッドがSQSをポーリング
• uuidに対応した関数呼び出しに結果を返す
なにが楽しいか?
• サーバいらずのジョブキューシステムを持てる
• 並列実効性が高い(タイムアウト60sだけど)
• Nodeならオンデマンドでロジックをぶち込める
• Func/on.toString
Func%on.toString
h"ps://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/
Global_Objects/FuncBon/toString
$ node
> var f = function() { console.log('hello'); }
undefined
> f.toString();
'function () { console.log('hello'); }'
こういうことができる
var lambda_func = lambda(function(args, callback) {
// Run on Lambda
// Any job
callback({key:'val'});
});
lambda_func({key: "val"}, function(retval) {
console.log(retval);
});
作ってみた
lambleg
h"ps://www.npmjs.com/package/lambleg
Demo
すでに同じネタをやってる人がいた!orz
Lambdaws
h)ps://github.com/mentum/lambdaws
var λ = require('lambdaws').create;
var calculator = function(a, b, callback) { callback(a+b) };
var cloudedCalculator = λ(calculator);
cloudedCalculator(5, 2, function(data) {
// Calls the function in the cloud, it doesn't run locally
console.log(data); // Prints 7
});
もう少し考えを進めてみた
• Pure&JSのコードはだいたいそのまま実行できる
• nodeで言語を実装すればもっとシームレスになるのでは?
作ってみた
クラウド型言語(仮)
Clala
h"ps://github.com/winebarrel/clala
こんなんです
• schemeのサブセット
• Lambdaに関数を定義できる
• コンテキストをLambdaに持って行ける
• (破壊的更新はできません)
Demo
所感
• 実験的実装なので未来はないが未来感はある
• 非同期な世界とのギャップがつらい
• だれか実用的なのを実装してください
まとめ
• 実行毎の結果をハンドルできると便利そうです
• なので機能追加をぜひー
• あとタイムアウト時間をのばさせて
• あとSNS対応を
• ついでにCW&Logsに検索機能をばー
Thank&you&for&your&a,en.on.

More Related Content

What's hot

AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
Takehiro Suemitsu
 
Spark in small or middle scale data processing with Elasticsearch
Spark in small or middle scale data processing with ElasticsearchSpark in small or middle scale data processing with Elasticsearch
Spark in small or middle scale data processing with Elasticsearch
chibochibo
 
Azure Websites で作るスケーラブルな PHP アプリケーション
Azure Websites で作るスケーラブルな PHP アプリケーションAzure Websites で作るスケーラブルな PHP アプリケーション
Azure Websites で作るスケーラブルな PHP アプリケーション
Masashi Shinbara
 
ログ解析をあきらめない、あるいはSumoLogicの紹介
ログ解析をあきらめない、あるいはSumoLogicの紹介ログ解析をあきらめない、あるいはSumoLogicの紹介
ログ解析をあきらめない、あるいはSumoLogicの紹介
Yasuhiro Araki, Ph.D
 
FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係
moai kids
 

What's hot (20)

Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターンLambdaのscheduled eventで実現する運用視点のサーバレスパターン
Lambdaのscheduled eventで実現する運用視点のサーバレスパターン
 
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
AWSでAPI Gatewayから非同期でLambdaを起動してS3にファイルアップロードしようとしたらハマった話。
 
はじめてのAWS Lambda
はじめてのAWS LambdaはじめてのAWS Lambda
はじめてのAWS Lambda
 
Kubernetes helm & helmc
Kubernetes helm & helmcKubernetes helm & helmc
Kubernetes helm & helmc
 
Aws docker-rails-demo slideshare
Aws docker-rails-demo slideshareAws docker-rails-demo slideshare
Aws docker-rails-demo slideshare
 
200k/sec
200k/sec200k/sec
200k/sec
 
前座Lambda
前座Lambda前座Lambda
前座Lambda
 
サーバーレスアプリケーションの作り方
サーバーレスアプリケーションの作り方サーバーレスアプリケーションの作り方
サーバーレスアプリケーションの作り方
 
Spark Streaming on AWS -S3からKinesisへ-
Spark Streaming on AWS -S3からKinesisへ-Spark Streaming on AWS -S3からKinesisへ-
Spark Streaming on AWS -S3からKinesisへ-
 
Vagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオンVagrant で PHP 開発環境を作る ハンズオン
Vagrant で PHP 開発環境を作る ハンズオン
 
Spark in small or middle scale data processing with Elasticsearch
Spark in small or middle scale data processing with ElasticsearchSpark in small or middle scale data processing with Elasticsearch
Spark in small or middle scale data processing with Elasticsearch
 
わかってるフレームワーク Laravel
わかってるフレームワーク Laravelわかってるフレームワーク Laravel
わかってるフレームワーク Laravel
 
AWS Lambda を使ってみた話 at づや会Vol.3
AWS Lambda を使ってみた話 at  づや会Vol.3AWS Lambda を使ってみた話 at  づや会Vol.3
AWS Lambda を使ってみた話 at づや会Vol.3
 
Azure Websites で作るスケーラブルな PHP アプリケーション
Azure Websites で作るスケーラブルな PHP アプリケーションAzure Websites で作るスケーラブルな PHP アプリケーション
Azure Websites で作るスケーラブルな PHP アプリケーション
 
ログ解析をあきらめない、あるいはSumoLogicの紹介
ログ解析をあきらめない、あるいはSumoLogicの紹介ログ解析をあきらめない、あるいはSumoLogicの紹介
ログ解析をあきらめない、あるいはSumoLogicの紹介
 
FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係FluentdとRedshiftの素敵な関係
FluentdとRedshiftの素敵な関係
 
Serverless frameworkでお手軽lambda運用 at #nseg #93
Serverless frameworkでお手軽lambda運用 at #nseg #93Serverless frameworkでお手軽lambda運用 at #nseg #93
Serverless frameworkでお手軽lambda運用 at #nseg #93
 
Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90Serverless frameworkを使ってみた話 at #nseg #90
Serverless frameworkを使ってみた話 at #nseg #90
 
もうちょっと早く知りたかった kubectl
もうちょっと早く知りたかった kubectlもうちょっと早く知りたかった kubectl
もうちょっと早く知りたかった kubectl
 
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
AWS Lambdaによるサーバレスアーキテクチャの基本に触れてみよう!【kintone & AWS ハンズオン祭り2015秋 B-2】
 

Similar to Lambdaによるクラウド型言語の実装

vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
Itsuki Sakitsu
 

Similar to Lambdaによるクラウド型言語の実装 (20)

はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよはじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
はじめての Go 言語のプロジェクトを AWS Lambda + API Gateway でやったのでパッケージ構成を晒すよ
 
RancherとGitOps的な話
RancherとGitOps的な話RancherとGitOps的な話
RancherとGitOps的な話
 
過去に自作したGoプロダクトの紹介 - Goオールスターズ
過去に自作したGoプロダクトの紹介 - Goオールスターズ過去に自作したGoプロダクトの紹介 - Goオールスターズ
過去に自作したGoプロダクトの紹介 - Goオールスターズ
 
AWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguroAWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguro
 
AWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguroAWS SDK for Go in #jawsmeguro
AWS SDK for Go in #jawsmeguro
 
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
20200528_AWSでサーバーレスなLINEBotLIFFアプリ環境をIaCな感じで構築するよ!.pdf
 
GitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へGitHub Copilotとともに次の開発体験へ
GitHub Copilotとともに次の開発体験へ
 
AWS Lambda in Golang
AWS Lambda in GolangAWS Lambda in Golang
AWS Lambda in Golang
 
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
LLプログラマ向けSwift ExtensionsとテストライブラリQuickの紹介
 
GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月GitHub最新情報キャッチアップ 2023年6月
GitHub最新情報キャッチアップ 2023年6月
 
GAS + SaaS時々 AWSで自動化
GAS + SaaS時々 AWSで自動化GAS + SaaS時々 AWSで自動化
GAS + SaaS時々 AWSで自動化
 
Lambda in java_20160121
Lambda in java_20160121Lambda in java_20160121
Lambda in java_20160121
 
GitHub Actions + Cloudflare API
GitHub Actions + Cloudflare APIGitHub Actions + Cloudflare API
GitHub Actions + Cloudflare API
 
AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境AWSとGCPを使用したインフラ環境
AWSとGCPを使用したインフラ環境
 
マイクロサービス時代の生存戦略 with HashiCorp
マイクロサービス時代の生存戦略 with HashiCorpマイクロサービス時代の生存戦略 with HashiCorp
マイクロサービス時代の生存戦略 with HashiCorp
 
grpc-haskell.pdf
grpc-haskell.pdfgrpc-haskell.pdf
grpc-haskell.pdf
 
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
vendoring が無くなると Go x Github private repo x Docker 運用が地味に面倒になって困る話 (未完)
 
Prometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slidePrometheus meetup tokyo#3 slide
Prometheus meetup tokyo#3 slide
 
Metahub for github
Metahub for githubMetahub for github
Metahub for github
 
Google container builderと友だちになるまで
Google container builderと友だちになるまでGoogle container builderと友だちになるまで
Google container builderと友だちになるまで
 

More from Sugawara Genki

ナウなヤングにCloud Formationが流行ってほしい
ナウなヤングにCloud Formationが流行ってほしいナウなヤングにCloud Formationが流行ってほしい
ナウなヤングにCloud Formationが流行ってほしい
Sugawara Genki
 
クックパッドの開発について
クックパッドの開発についてクックパッドの開発について
クックパッドの開発について
Sugawara Genki
 
Gitを使ったRoute53の管理
Gitを使ったRoute53の管理Gitを使ったRoute53の管理
Gitを使ったRoute53の管理
Sugawara Genki
 
ChefとPuppetの比較
ChefとPuppetの比較ChefとPuppetの比較
ChefとPuppetの比較
Sugawara Genki
 
EC2の天井を超える
EC2の天井を超えるEC2の天井を超える
EC2の天井を超える
Sugawara Genki
 
EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)
Sugawara Genki
 
ゴシッププロトコルによる冗長化と負荷分散の検証
ゴシッププロトコルによる冗長化と負荷分散の検証ゴシッププロトコルによる冗長化と負荷分散の検証
ゴシッププロトコルによる冗長化と負荷分散の検証
Sugawara Genki
 
20111012 jaws ug-tokyo勉強会-cookpad-on-aws
20111012 jaws ug-tokyo勉強会-cookpad-on-aws20111012 jaws ug-tokyo勉強会-cookpad-on-aws
20111012 jaws ug-tokyo勉強会-cookpad-on-aws
Sugawara Genki
 
AWS移行に向けたクックパッドの取り組み+α
AWS移行に向けたクックパッドの取り組み+αAWS移行に向けたクックパッドの取り組み+α
AWS移行に向けたクックパッドの取り組み+α
Sugawara Genki
 
AWS移行に向けたクックパッドの取り組み
AWS移行に向けたクックパッドの取り組みAWS移行に向けたクックパッドの取り組み
AWS移行に向けたクックパッドの取り組み
Sugawara Genki
 
クックパッドのLVSについて
クックパッドのLVSについてクックパッドのLVSについて
クックパッドのLVSについて
Sugawara Genki
 
サーバー・クライアントの ボトルネック調査と高速化
サーバー・クライアントの ボトルネック調査と高速化サーバー・クライアントの ボトルネック調査と高速化
サーバー・クライアントの ボトルネック調査と高速化
Sugawara Genki
 

More from Sugawara Genki (18)

Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張Elixir Meetup #1 Loggerの構造と拡張
Elixir Meetup #1 Loggerの構造と拡張
 
2014 09-23 Mechanism of Gossip protocol
2014 09-23 Mechanism of Gossip protocol2014 09-23 Mechanism of Gossip protocol
2014 09-23 Mechanism of Gossip protocol
 
CloudWatch Logsについて
CloudWatch LogsについてCloudWatch Logsについて
CloudWatch Logsについて
 
MHA on AWS+Rails
MHA on AWS+RailsMHA on AWS+Rails
MHA on AWS+Rails
 
ナウなヤングにCloud Formationが流行ってほしい
ナウなヤングにCloud Formationが流行ってほしいナウなヤングにCloud Formationが流行ってほしい
ナウなヤングにCloud Formationが流行ってほしい
 
クックパッドの開発について
クックパッドの開発についてクックパッドの開発について
クックパッドの開発について
 
Gitを使ったRoute53の管理
Gitを使ったRoute53の管理Gitを使ったRoute53の管理
Gitを使ったRoute53の管理
 
ChefとPuppetの比較
ChefとPuppetの比較ChefとPuppetの比較
ChefとPuppetの比較
 
EC2の天井を超える
EC2の天井を超えるEC2の天井を超える
EC2の天井を超える
 
EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)EC2でkeepalived+LVS(DSR)
EC2でkeepalived+LVS(DSR)
 
Puppet on AWS
Puppet on AWSPuppet on AWS
Puppet on AWS
 
クックパッドでのVPC移行について
クックパッドでのVPC移行についてクックパッドでのVPC移行について
クックパッドでのVPC移行について
 
ゴシッププロトコルによる冗長化と負荷分散の検証
ゴシッププロトコルによる冗長化と負荷分散の検証ゴシッププロトコルによる冗長化と負荷分散の検証
ゴシッププロトコルによる冗長化と負荷分散の検証
 
20111012 jaws ug-tokyo勉強会-cookpad-on-aws
20111012 jaws ug-tokyo勉強会-cookpad-on-aws20111012 jaws ug-tokyo勉強会-cookpad-on-aws
20111012 jaws ug-tokyo勉強会-cookpad-on-aws
 
AWS移行に向けたクックパッドの取り組み+α
AWS移行に向けたクックパッドの取り組み+αAWS移行に向けたクックパッドの取り組み+α
AWS移行に向けたクックパッドの取り組み+α
 
AWS移行に向けたクックパッドの取り組み
AWS移行に向けたクックパッドの取り組みAWS移行に向けたクックパッドの取り組み
AWS移行に向けたクックパッドの取り組み
 
クックパッドのLVSについて
クックパッドのLVSについてクックパッドのLVSについて
クックパッドのLVSについて
 
サーバー・クライアントの ボトルネック調査と高速化
サーバー・クライアントの ボトルネック調査と高速化サーバー・クライアントの ボトルネック調査と高速化
サーバー・クライアントの ボトルネック調査と高速化
 

Recently uploaded

Recently uploaded (10)

知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 

Lambdaによるクラウド型言語の実装