狠狠撸

狠狠撸Share a Scribd company logo
Simplest API Server
“miq”
Good Coding Friends LT
Yuki Ito / @publmag1 / acomagu / s1230004
みなさん
搁顿叠は好きですか
そこそこ好き: 11人
嫌い: 0人
なるほどね。
じゃあ、
厂蚕尝は好きですか?
そこそこ好き: 0人
ふつう: 5人
嫌い: 5人
なるほどねー
めっちゃわかるぅ?☆(ゝω?)惫
3日前に陥った状況
- WebサーバーにちょっとしたDBが必要
- NoSQL微妙
- RDB使いたいけど、SQL書きたくない
- 書いてもいいけど、サーバーのロジックと混ぜたくない
- できることならHTTP/JSONで通信したい
- でもFirebaseとかは使いたくない
- 今回のアプリケーションにはちょっと大げさかな...
だから一昨日からつくった
だから一昨日からつくった
miq
Simplest API Server "miq"
Simplest API Server "miq"
Simplest API Server "miq"
miq: micro query-runner server
- コンパクトなAPIサーバー
- YAMLの設定ファイルにしたがって動作
- SQLを実行して結果をJSONにして返すのみ
- (現状)できること
- クエリの実行
- Pathパラメータ、URLクエリ、POST Body(JSON)から変数を受け取
れる
- トランザクション
- 複数クエリの実行
- できないこと
- 認証
- なのでそのまま外部には公開できない
- データになんらかの処理をしてからJSONを返却
つかいどころ
つかいどころ
- SQLをコードに書きたくない人
- Microservicesごっこしたいひと
それ、単に二度手間なだ
けじゃね?
Benefits
Benefits
- SQL Injectionのリスクが減る(必ず静的プレース
ホルダが使用される)
- SQLの事前コンパイルし忘れがない
- そのアプリケーションがどんなSQL オペレーショ
ンをするのかひと目でわかる
- やっぱり生のSQL実行よりJSONから読むほうが
簡単
github.com/acomagu/miq
Thank you!
Ad

Recommended

レガシーシステムの顿叠マイグレーションし始めた话
レガシーシステムの顿叠マイグレーションし始めた话
nekogeruge_987
?
CSV
CSV
Masahiro Tomita
?
ネットワークこわい
ネットワークこわい
Masahiro Tomita
?
Raytracing4
Raytracing4
Kazuma Hatta
?
CouchDB+OpenSocial - OSC 2009/Fall Tokyo
CouchDB+OpenSocial - OSC 2009/Fall Tokyo
Yohei Sasaki
?
ServerSideJavaScript
ServerSideJavaScript
Ryunosuke SATO
?
C#er から見た Turbolinks 3
C#er から見た Turbolinks 3
dany1468
?
Next GAE Heroku を使って 3分でRailsアプリをリリース
Next GAE Heroku を使って 3分でRailsアプリをリリース
よしだ あつし
?
コマンドライン使いも尝颈产谤别翱蹿蹿颈肠别
コマンドライン使いも尝颈产谤别翱蹿蹿颈肠别
Kiwamu Okabe
?
歌舞伎座tech発表資料 RxJSの中を追う
歌舞伎座tech発表資料 RxJSの中を追う
wilfrem
?
Rubyでやろう。データ解析導入編( CSV, XML, JSON)
Rubyでやろう。データ解析導入編( CSV, XML, JSON)
NAKAOKU Takahiro
?
LT#7 Hello coffeeしてきた
LT#7 Hello coffeeしてきた
Shingo Inoue
?
テ?ータヘ?ース実践入門読書会スヘ?シャル #nseg
テ?ータヘ?ース実践入門読書会スヘ?シャル #nseg
ko ty
?
惭辞苍驳辞ざっくり绍介
惭辞苍驳辞ざっくり绍介
masakazuyamanaka
?
ど素人向けエンジニア勉强会(第2回)
ど素人向けエンジニア勉强会(第2回)
YukiIwasaki2764
?
Free Serverというナウでヤングなサービス
Free Serverというナウでヤングなサービス
nemumu
?
狈鲍罢ハッカソン2014成果报告
狈鲍罢ハッカソン2014成果报告
Joe_noh
?
Reudy on Ruby1.9
Reudy on Ruby1.9
Glass_saga
?
SpockからRSpecにきたときの気つ?き #coedorb
SpockからRSpecにきたときの気つ?き #coedorb
Youtarou TAKAHASHI
?
厂别濒别苍颈耻尘再入门-奥3颁勧告とページオブジェクトパターンと私-201707飞别产エンシ?ニア勉强会#2神田
厂别濒别苍颈耻尘再入门-奥3颁勧告とページオブジェクトパターンと私-201707飞别产エンシ?ニア勉强会#2神田
Y Watanabe
?
About Reauire.js
About Reauire.js
Kyohei Morimoto
?
俺とモテ?リンク?
俺とモテ?リンク?
Masayuki KaToH
?
狈笔惭で便利なツールの绍介
狈笔惭で便利なツールの绍介
Amuro Nishizawa
?
Pgconf asia-201612203-pg reversi-ja
Pgconf asia-201612203-pg reversi-ja
Toshi Harada
?
AWS Casual 02: ふつうのRedshiftパフォーマンスチューニング
AWS Casual 02: ふつうのRedshiftパフォーマンスチューニング
Minero Aoki
?
20200212 KumaMCN GTFS勉強会
20200212 KumaMCN GTFS勉強会
Syota Yano
?

More Related Content

What's hot (20)

Next GAE Heroku を使って 3分でRailsアプリをリリース
Next GAE Heroku を使って 3分でRailsアプリをリリース
よしだ あつし
?
コマンドライン使いも尝颈产谤别翱蹿蹿颈肠别
コマンドライン使いも尝颈产谤别翱蹿蹿颈肠别
Kiwamu Okabe
?
歌舞伎座tech発表資料 RxJSの中を追う
歌舞伎座tech発表資料 RxJSの中を追う
wilfrem
?
Rubyでやろう。データ解析導入編( CSV, XML, JSON)
Rubyでやろう。データ解析導入編( CSV, XML, JSON)
NAKAOKU Takahiro
?
LT#7 Hello coffeeしてきた
LT#7 Hello coffeeしてきた
Shingo Inoue
?
テ?ータヘ?ース実践入門読書会スヘ?シャル #nseg
テ?ータヘ?ース実践入門読書会スヘ?シャル #nseg
ko ty
?
惭辞苍驳辞ざっくり绍介
惭辞苍驳辞ざっくり绍介
masakazuyamanaka
?
ど素人向けエンジニア勉强会(第2回)
ど素人向けエンジニア勉强会(第2回)
YukiIwasaki2764
?
Free Serverというナウでヤングなサービス
Free Serverというナウでヤングなサービス
nemumu
?
狈鲍罢ハッカソン2014成果报告
狈鲍罢ハッカソン2014成果报告
Joe_noh
?
Reudy on Ruby1.9
Reudy on Ruby1.9
Glass_saga
?
SpockからRSpecにきたときの気つ?き #coedorb
SpockからRSpecにきたときの気つ?き #coedorb
Youtarou TAKAHASHI
?
厂别濒别苍颈耻尘再入门-奥3颁勧告とページオブジェクトパターンと私-201707飞别产エンシ?ニア勉强会#2神田
厂别濒别苍颈耻尘再入门-奥3颁勧告とページオブジェクトパターンと私-201707飞别产エンシ?ニア勉强会#2神田
Y Watanabe
?
About Reauire.js
About Reauire.js
Kyohei Morimoto
?
俺とモテ?リンク?
俺とモテ?リンク?
Masayuki KaToH
?
狈笔惭で便利なツールの绍介
狈笔惭で便利なツールの绍介
Amuro Nishizawa
?
Pgconf asia-201612203-pg reversi-ja
Pgconf asia-201612203-pg reversi-ja
Toshi Harada
?
Next GAE Heroku を使って 3分でRailsアプリをリリース
Next GAE Heroku を使って 3分でRailsアプリをリリース
よしだ あつし
?
コマンドライン使いも尝颈产谤别翱蹿蹿颈肠别
コマンドライン使いも尝颈产谤别翱蹿蹿颈肠别
Kiwamu Okabe
?
歌舞伎座tech発表資料 RxJSの中を追う
歌舞伎座tech発表資料 RxJSの中を追う
wilfrem
?
Rubyでやろう。データ解析導入編( CSV, XML, JSON)
Rubyでやろう。データ解析導入編( CSV, XML, JSON)
NAKAOKU Takahiro
?
LT#7 Hello coffeeしてきた
LT#7 Hello coffeeしてきた
Shingo Inoue
?
テ?ータヘ?ース実践入門読書会スヘ?シャル #nseg
テ?ータヘ?ース実践入門読書会スヘ?シャル #nseg
ko ty
?
惭辞苍驳辞ざっくり绍介
惭辞苍驳辞ざっくり绍介
masakazuyamanaka
?
ど素人向けエンジニア勉强会(第2回)
ど素人向けエンジニア勉强会(第2回)
YukiIwasaki2764
?
Free Serverというナウでヤングなサービス
Free Serverというナウでヤングなサービス
nemumu
?
狈鲍罢ハッカソン2014成果报告
狈鲍罢ハッカソン2014成果报告
Joe_noh
?
SpockからRSpecにきたときの気つ?き #coedorb
SpockからRSpecにきたときの気つ?き #coedorb
Youtarou TAKAHASHI
?
厂别濒别苍颈耻尘再入门-奥3颁勧告とページオブジェクトパターンと私-201707飞别产エンシ?ニア勉强会#2神田
厂别濒别苍颈耻尘再入门-奥3颁勧告とページオブジェクトパターンと私-201707飞别产エンシ?ニア勉强会#2神田
Y Watanabe
?
狈笔惭で便利なツールの绍介
狈笔惭で便利なツールの绍介
Amuro Nishizawa
?
Pgconf asia-201612203-pg reversi-ja
Pgconf asia-201612203-pg reversi-ja
Toshi Harada
?

Similar to Simplest API Server "miq" (20)

AWS Casual 02: ふつうのRedshiftパフォーマンスチューニング
AWS Casual 02: ふつうのRedshiftパフォーマンスチューニング
Minero Aoki
?
20200212 KumaMCN GTFS勉強会
20200212 KumaMCN GTFS勉強会
Syota Yano
?
サーバーのおしごと
サーバーのおしごと
Yugo Shimizu
?
Jawsug福岡 201606 up
Jawsug福岡 201606 up
Ken'ichirou Kimura
?
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
GoAzure
?
Jsf アプリ作ったった
Jsf アプリ作ったった
Oda Shinsuke
?
楽ちんユーサ?ー认証付厂辫补
楽ちんユーサ?ー认証付厂辫补
Takahiro Tsuchiya
?
泥臭い运用から、プログラマブルインフラ构筑(に行きたい)
泥臭い运用から、プログラマブルインフラ构筑(に行きたい)
Akihiro Kuwano
?
Cockatoo
Cockatoo
Hiroaki Kubota
?
HTML5 NIGHT 08. Web × パフォーマンス技術
HTML5 NIGHT 08. Web × パフォーマンス技術
Yoichiro Takehora
?
Amazon Redshift ことはじめ
Amazon Redshift ことはじめ
Shiro Miyazaki
?
思い通りにいかないのがWebなんて 割り切りたくないから (Gunma.web #4 2011/02/12)
思い通りにいかないのがWebなんて 割り切りたくないから (Gunma.web #4 2011/02/12)
parrotstudio
?
产辞迟迟濒别で始める奥贰叠アプリの最初の一歩
产辞迟迟濒别で始める奥贰叠アプリの最初の一歩
Satoshi Yamada
?
今すく?使えるクラウト?と笔辞蝉迟驳谤别厂蚕尝
今すく?使えるクラウト?と笔辞蝉迟驳谤别厂蚕尝
Soudai Sone
?
高トラフィックサイトを搁补颈濒蝉で构筑するための罢颈辫蝉基础编
高トラフィックサイトを搁补颈濒蝉で构筑するための罢颈辫蝉基础编
Kazuya Numata
?
201311 webデザイナとエンジニアのチームワークを加速させるテンプレートエンジンmixer2 devlove現場甲子園
201311 webデザイナとエンジニアのチームワークを加速させるテンプレートエンジンmixer2 devlove現場甲子園
Y Watanabe
?
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
Yuki KAN
?
Rustで DDD を実践しながら API サーバーを実装?構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装?構築した(つもり)
ShogoOkazaki
?
Couch DB in 15minutes
Couch DB in 15minutes
Yohei Sasaki
?
AWS Casual 02: ふつうのRedshiftパフォーマンスチューニング
AWS Casual 02: ふつうのRedshiftパフォーマンスチューニング
Minero Aoki
?
20200212 KumaMCN GTFS勉強会
20200212 KumaMCN GTFS勉強会
Syota Yano
?
サーバーのおしごと
サーバーのおしごと
Yugo Shimizu
?
B 2-1 はじめての Windows Azure
B 2-1 はじめての Windows Azure
GoAzure
?
Jsf アプリ作ったった
Jsf アプリ作ったった
Oda Shinsuke
?
楽ちんユーサ?ー认証付厂辫补
楽ちんユーサ?ー认証付厂辫补
Takahiro Tsuchiya
?
泥臭い运用から、プログラマブルインフラ构筑(に行きたい)
泥臭い运用から、プログラマブルインフラ构筑(に行きたい)
Akihiro Kuwano
?
HTML5 NIGHT 08. Web × パフォーマンス技術
HTML5 NIGHT 08. Web × パフォーマンス技術
Yoichiro Takehora
?
Amazon Redshift ことはじめ
Amazon Redshift ことはじめ
Shiro Miyazaki
?
思い通りにいかないのがWebなんて 割り切りたくないから (Gunma.web #4 2011/02/12)
思い通りにいかないのがWebなんて 割り切りたくないから (Gunma.web #4 2011/02/12)
parrotstudio
?
产辞迟迟濒别で始める奥贰叠アプリの最初の一歩
产辞迟迟濒别で始める奥贰叠アプリの最初の一歩
Satoshi Yamada
?
今すく?使えるクラウト?と笔辞蝉迟驳谤别厂蚕尝
今すく?使えるクラウト?と笔辞蝉迟驳谤别厂蚕尝
Soudai Sone
?
高トラフィックサイトを搁补颈濒蝉で构筑するための罢颈辫蝉基础编
高トラフィックサイトを搁补颈濒蝉で构筑するための罢颈辫蝉基础编
Kazuya Numata
?
201311 webデザイナとエンジニアのチームワークを加速させるテンプレートエンジンmixer2 devlove現場甲子園
201311 webデザイナとエンジニアのチームワークを加速させるテンプレートエンジンmixer2 devlove現場甲子園
Y Watanabe
?
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
17 E-5 震災とHackとクラウドと ━ URIベースのCSLB
Yuki KAN
?
Rustで DDD を実践しながら API サーバーを実装?構築した(つもり)
Rustで DDD を実践しながら API サーバーを実装?構築した(つもり)
ShogoOkazaki
?
Couch DB in 15minutes
Couch DB in 15minutes
Yohei Sasaki
?
Ad

More from Yuki Ito (7)

僕が構文解析にこんなにも時間をかけてしまった理由 ?Yacc/Bisonにおけるノウハウ?
僕が構文解析にこんなにも時間をかけてしまった理由 ?Yacc/Bisonにおけるノウハウ?
Yuki Ito
?
蹿颈蝉丑别谤-濒补锄测つくったはなし
蹿颈蝉丑别谤-濒补锄测つくったはなし
Yuki Ito
?
奥补测濒补苍诲でも动くキーリマッパーを作りたかった话
奥补测濒补苍诲でも动くキーリマッパーを作りたかった话
Yuki Ito
?
みんなのコンポーネント志向 Web開発
みんなのコンポーネント志向 Web開発
Yuki Ito
?
Mutexを実装する implementation of mutex
Mutexを実装する implementation of mutex
Yuki Ito
?
フロントエンド温泉にサーバーレスでダイブする(笔耻产濒颈肠)
フロントエンド温泉にサーバーレスでダイブする(笔耻产濒颈肠)
Yuki Ito
?
狈狈罢笔について简単すぎる説明
狈狈罢笔について简単すぎる説明
Yuki Ito
?
僕が構文解析にこんなにも時間をかけてしまった理由 ?Yacc/Bisonにおけるノウハウ?
僕が構文解析にこんなにも時間をかけてしまった理由 ?Yacc/Bisonにおけるノウハウ?
Yuki Ito
?
蹿颈蝉丑别谤-濒补锄测つくったはなし
蹿颈蝉丑别谤-濒补锄测つくったはなし
Yuki Ito
?
奥补测濒补苍诲でも动くキーリマッパーを作りたかった话
奥补测濒补苍诲でも动くキーリマッパーを作りたかった话
Yuki Ito
?
みんなのコンポーネント志向 Web開発
みんなのコンポーネント志向 Web開発
Yuki Ito
?
Mutexを実装する implementation of mutex
Mutexを実装する implementation of mutex
Yuki Ito
?
フロントエンド温泉にサーバーレスでダイブする(笔耻产濒颈肠)
フロントエンド温泉にサーバーレスでダイブする(笔耻产濒颈肠)
Yuki Ito
?
狈狈罢笔について简単すぎる説明
狈狈罢笔について简単すぎる説明
Yuki Ito
?
Ad

Simplest API Server "miq"