Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Open Beer Server - theory and the implementation
Search
moznion
December 03, 2016
Technology
8.3k
5
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Open Beer Server - theory and the implementation
Slide of builderscon Tokyo 2016
moznion
December 03, 2016
More Decks by moznion
See All by moznion
ブラウザアプリの継続的パフォーマンスモニタリング (序) / Continuous Browser Application Performance Monitoring; Act 1
moznion
0
120
reFACToring
moznion
1
1.3k
cccccc
moznion
1
2.6k
履歴テーブル、今回はこう作りました 〜 Delegated Types編 〜 / How We Built Our History Table This Time — With Delegated Types
moznion
16
16k
「データ無い! 腹立つ! 推論する!」から 「データ無い! 腹立つ! データを作る」へ チームでデータを作り、育てられるようにするまで / How can we create, use, and maintain data ourselves?
moznion
11
7.6k
避けられないI/O待ちに対処する: Rails アプリにおけるSSEとasync gemの活用 / Tackling Inevitable I/O Latency in Rails Apps with SSE and the async gem
moznion
4
9.5k
RubyKaigi Hack Space in Tokyo & 函館最速 "予習" 会 / RubyKaigi Hack Space in Tokyo & The Fastest Briefing of RubyKaigi 2026 in Hakodate
moznion
1
470
地に足の付いた現実的な技術選定から魔力のある体験を得る『AIレシート読み取り機能』のケーススタディ / From Grounded Tech Choices to Magical UX: A Case Study of AI Receipt Scanning
moznion
7
5.2k
Chrome Extension Techniques from Hell
moznion
1
330
Other Decks in Technology
See All in Technology
CLIライブラリ開発を支える技術
htnabe
0
140
白金鉱業Meetup Vol.25 アウトカムが二値のデータに対するCausal Impact
brainpadpr
0
250
Claude Codeを「使うほど育つ」AI秘書にするノウハウ
minorun365
PRO
32
28k
AIによるクリエイティブ生成を行う上での試行錯誤
plaidtech
PRO
0
160
データ界隈LT祭 第1回LT登壇
taromatsui_cccmkhd
2
1.5k
株式会社シーエーシー エンジニア向け会社紹介資料
cac
0
57k
GoのInterface内部構造から学ぶ!最高パフォーマンスを出すコード設計
yappli_developers
0
190
HHKBエバンジェリストになる方法
941
0
110
What the customer really needed
kawaguti
PRO
3
210
品質と信頼性を地続きにする
grimoh
2
810
Von-Neumann Machines, Dreams & The Futures of IT
ufried
0
110
Slack上でインフラをトラブルシュートする! Agentic Platform Engineeringの第一歩
teru0x1
5
1.8k
Featured
See All Featured
Believing is Seeing
oripsolob
1
220
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
3
3.8k
How to Ace a Technical Interview
jacobian
281
24k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
35
2.8k
State of Search Keynote: SEO is Dead Long Live SEO
ryanjones
0
280
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
510
Evolving SEO for Evolving Search Engines
ryanjones
0
300
We Are The Robots
honzajavorek
0
380
The Art of Programming - Codeland 2020
erikaheidi
57
14k
Public Speaking Without Barfing On Your Shoes - THAT 2023
reverentgeek
1
570
Getting science done with accelerated Python computing platforms
jacobtomlinson
2
480
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
12k
Transcript
Open Beer Server theory and the implementation @moznion
@moznion
None
օ͞ΜϏʔϧ ͖Ͱ͔͢ʂʂ
օ͞ΜੜϏʔϧ ͖Ͱ͔͢ʂʂ
ͦ͏Ͱͳ͍ਓ ͜ͷൃදඍົͰ͢
ΤϯδχΞ Ͱ͔͢ʂʂ
ͦ͏Ͱͳ͍ਓ ྑ͍ػձͰ͢
αʔόΤϯδχΞ ʹͳΕΔʂʂ
Ϗʔϧαʔόʔ ͷͳ͠
Ϗʔϧαʔόʔ ͱ……ੈքͱ……
https://www.flickr.com/photos/50507715@N00/2892136399
Έɼ ཧʹ͍ͭͯ……
Έ is easy
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ PDS (Presentation
Domain Separation) Έ͍ͨͳΜʂʂ
Θ͔Γ·͔ͨ͠ʁ
͍
Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ ѹྗ
Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ ѹྗ
Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ ѹྗ ։์
Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ ѹྗ ։์ ѹʹΑͬͯӷ͕ग़Δ
Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ ѹྗ Happy!!
Θ͔Γ·ͨ͠Ͷʁ
؆୯Ͱʁ
ͱ͍͏Θ͚Ͱ ͭ͘Γ·͢ (ͭ͘Γ͓͖Ͱ͢)
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
ੜḺ
None
ੜḺ -ञʹཔΉͱങ͑·͢ -ඇίϛϡͷਓΧΫϠε ͱ͔ͰཔΈ·͠ΐ͏
ੜḺϚδَ (ͦ͏Ͱͳ͍)
None
None
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
ϔου
None
ϔου -ੜḺͱͷΠϯλʔϑΣʔε -ΨεͱͷΠϯλʔϑΣʔε Ͱ͋Δ -ѹΛ༩͑ͭͭӷΛग़͢ਓ
ϔουϚδَ (ͦ͏Ͱͳ͍)
ΩϦϯḺͱ ΞαώḺ͕͋Δ
ϔουͷҧ͍ -ΩϦϯḺ༻ͷϔουͱ ΞαώḺ༻ͷϔου͕͋Δ -ޱۚͷܗঢ়͕ҧ͏ -ޓੑ͕ *ແ͍*
ΩϦϯ ΩϦϯϔου Ξαώ Ξαώϔου αϯτϦʔ Ξαώϔου αοϙϩ Ξαώϔου
ΩϦϯ ΩϦϯϔου Ξαώ Ξαώϔου αϯτϦʔ Ξαώϔου αοϙϩ Ξαώϔου
ΩϦϯ ΩϦϯϔου Ξαώ Ξαώϔου αϯτϦʔ Ξαώϔου αοϙϩ Ξαώϔου ͳͥͳͷͩ……
߹ͬͨϔουΛ ༻ҙ͠·͠ΐ͏
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
Ψε
None
Ψε -ϔουͱଓͯ͠ΨεΛ ૹΔਓ -ΨεͱͷΠϯλϑΣʔε ٴͼѹྗௐث
ΨεϚδَ (ͦ͏Ͱͳ͍)
ͷϘϯϕ ࣮ෆཁ
None
ίϯύΫτΨε ͕͑Δ
None
STOP!!!!!!
ίϯύΫτΨεΛ ͏ͨΊʹ ઐ༻ͷΞλονϝϯτ ͕ඞཁ
None
͜Ε͕ແ͍ͱ࿙Ε·͢
STOP!!!!!!!!!!!!!!!!!!!!!!
खͰదʹΞλονϝ ϯτకΊΔͱ࿙Ε·͢
ϞϯΩʔϨϯνͰ కΊ·͠ΐ͏ (Ψε1ຊϩετ͠·ͨ͠)
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
ྫྷ͢෦
None
ྫྷ͢෦ -ಔͷύΠϓΛྫྷ͢ -ϏʔϧΛྫྷ͑ͨಔͷύΠϓ ʹ௨͢ -ྫྷ͑Δʂʂʂʂ -ͱ͍͏Έ
None
ྫྷ͢෦ -ද໘ੵ͕ଟ͚Εଟ͍΄ Ͳྑ͍ͷͰίΠϧঢ়ʹۂ ͛Δ
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
λοϓ
None
λοϓ -Ϗʔϧग़͢ޱͷ෦Ͱ͢ -Ҏ্
ίϯϙʔωϯτ֓؍ Ḻ ϔου Ψε ྫྷ͢ ֓೦ λοϓ ΤϯυϢʔβ
νϡʔϒ
νϡʔϒ -֤ίϯϙʔωϯτΛଓ ͢Δ܅ -Micro servicesʹ͓͚ΔHTTP Έ͍ͨͳΜͰ͢
νϡʔϒ -ͳΔ͘ݻ͍ͷΛ͍ ·͠ΐ͏ -ݻ͘ͳ͍ͱϫϯλονܧ खͰ͑ͳ͍
νϡʔϒ -ࠔͬͨΒϗʔϜηϯλʔͰ ങ͍·͠ΐ͏
None
ܨ͗߹Θͤͯ ͍͖·͠ΐ͏
None
None
None
None
None
MEMO: ͜͜Ͱݱ͕ ग़·͢
Ͱ͖ͨͰ͖ͨ
͔͜͠͠ΕͰ ͨͩͷϏ ʔϧαʔόʔ
ͬͱศརʹ ͠·͠ΐ͏
ͱ͍͏Θ͚Ͱ HTTPͷ෦
લఏ
Perl 5Ͱॻ͍ͯ·͢
Why?
None
That's all
Թཧ
Թཧ Ϛδॏཁ
ొਓ -Raspberry Pi -DS18B20 (Թηϯα) -Mackerel
None
ొਓ -Raspberry Pi -DS18B20 (Թηϯα) -Mackerel
ొਓ -Raspberry Pi -DS18B20 (Թηϯα) -Mackerel ͜ΕΛαʔόʔʹೖΕ͓ͯ͘
֓؍ Beer Server DS18B20 3.3V Temperature Custom Metrics (Temperature)
None
None
-άϥϑग़͢
None
None
MackerelͰ ͋ΒΏΔαʔόʔͷ ࢹ͕Ͱ͖Δʂ
None
࣏҆ҡ࣋ػೳ
ະऀ͕ञΛ ҿΉͱേͤΒΕ·͢
ະऀ͕ ञΛҿΊΔঢ়گΛ ࡞Βͳ͚Εྑ͍
ະऀ͕ ञΛҿΊΔঢ়گΛ ࡞Βͳ͚Εྑ͍ ઃఆΑΓن (Convention over Configuration)
ྸ͕20ࡀʹຬͪ ͍ͯͳ͍ਓ 403͠·͠ΐ͏
۩ମతʹ => ະऀͱࢥ͖͠ ਓؒʹ ϏʔϧΛग़͞ͳ͍
ొਓ -Raspberry Pi -C270 (Web camera) -Microsoft Azure -ιϨϊΠυόϧϒ
ྸਪఆ
Azure Face API
None
Azure Face API -إը૾Λ͛Δͱͦͷը ૾ͷϝλใΈ͍ͨͳ ͷ͕औΕΔ -ࠓճྸΛ͏ -ΣϒΧϜͰࡱͬͨը૾ Λ༻
None
͜ΕͰإʹΑͬͯ ྸใ͕Θ͔Δ
࣮ࡍʹαʔόࢭΊΔ ͷͲ͏͢Δʁ
ιϨϊΠυόϧϒ
ιϨϊΠυόϧϒ - ి࣓ੴʢιϨϊΠυʣͷ࣓ྗΛ༻͍ͯϓ ϥϯδϟͱݺΕΔమยΛಈ͔͢͜ͱͰ หʢόϧϒʣΛ։ด͢ΔΈΛ࣋ͭ ͷͰɺྲྀମʢ༉ѹɺۭѹɺਫѹͳͲʣΛ ௨͢ͰͷྲྀΕͷ։ด੍ޚʹ༻͍ΒΕΔ (https://ja.wikipedia.org/wiki/ %E9%9B%BB%E7%A3%81%E5%BC%81)
ιϨϊΠυόϧϒ https://upload.wikimedia.org/wikipedia/commons/thumb/6/6f/Solenoid_Valve.svg/300px-Solenoid_Valve.svg.png
֓؍ Beer Server out Ḻ ϔου λοϓ ιϨϊΠυ όϧϒ Control
C270 Photo Face API
֓؍ Beer Server out Ḻ ϔου λοϓ ιϨϊΠυ όϧϒ Control
C270 Photo Face API
֓؍ Beer Server out Ḻ ϔου λοϓ ιϨϊΠυ όϧϒ Control
C270 Photo Face API ͜ͷ෦ σϑΥͩͱಈ͖·ͤΜ
ιϨϊΠυόϧϒͱϥζύΠ - ιϨϊΠυόϧϒ͍͍ͩͨ12Vۦಈ - ϥζύΠͷग़ྗ5V/3.3V - Γͳ͍ʂʂ
ঢѹ
None
ͦΕͰແཧ
ιϨϊΠυόϧϒͱϥζύΠ ͱঢѹث - ঢѹث5Vۦಈ - ҙͰON/OFFͰ͖ΔϥζύΠͷGPIO 3.3V - Γͳ͍ʂʂʂ
ιϨϊΠυόϧϒͱϥζύΠ ͱঢѹث - ৗʹONͷ5VͷPINΛ͍͚͑Δ - ͔ͦ͠͠ΕͰεΠονग़དྷͳ͍ - ͏ͩΊͳͷ͔
NPNτϥϯδελ
None
!!!!!!!
- Base͕HighʹͳΔͱ - Collectorͷిྲྀ͕ - ૿෯͞Εͯ - EmitterʹྲྀΕΔ
- BaseʹGPIOܨ͍Ͱ - CollectorΛGNDʹܨ͙ͱ - GPIO͕Highͷ࣌Emitter͕ GNDʹམͪΔ
֓؍ Beer Server out Ḻ ϔου λοϓ ιϨϊΠυ όϧϒ Control
C270 Photo Face API
ৄࡉ ιϨϊΠυ όϧϒ 2SC1815 GND GPIO ঢѹث 5V Emitter GND
12V
ৄࡉ ιϨϊΠυ όϧϒ 2SC1815 GND GPIO ঢѹث 5V Emitter GND
12V High
ৄࡉ ιϨϊΠυ όϧϒ 2SC1815 GND GPIO ঢѹث 5V Emitter GND
12V High
ৄࡉ ιϨϊΠυ όϧϒ 2SC1815 GND GPIO ঢѹث 5V Emitter GND
12V High
ৄࡉ ιϨϊΠυ όϧϒ 2SC1815 GND GPIO ঢѹث 5V Emitter GND
12V High
ղܾʂ
ૢ࡞͜Ε͚ͩͰՄೳ
σϞ
ࠓޙ
ࠓޙ - ྔࢹ͕Ͱ͖ͳ͔ͬͨͷͰ ͳΜΒ͔ͷํ๏ͰΓ͍ͨ - ϒϨουϘʔυΊ͍ͨ - ιϨϊΠυόϧϒ͑ HTTPӽ͠ʹϦϞʔτͰϏʔϧͷ ڙڅ͕ग़དྷͦ͏ͳͷͰΔ
·ͱΊ
·ͱΊ - Ϗʔϧαʔό࡞ΕΔ
·ͱΊ - ࠓճͷ૯ίετ: 89,343JPY
͚ͨͯ͘͢Ε
Q?