Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
カジュアルにリアクティブウェブを実現している話
Search
nashibao
August 26, 2014
Programming
1
5.4k
カジュアルにリアクティブウェブを実現している話
"月刊ライトニングトーク2014年8月号: MEAN 祭り"で発表しました。
@nashibao
株式会社プレイド
http://plaid.co.jp
nashibao
August 26, 2014
Tweet
Share
More Decks by nashibao
See All by nashibao
ちゃんと使えるBotについて考える
nashibao
0
2.2k
PySparkを使った レコメンドアルゴリズムの改良
nashibao
1
5.8k
fishシェルからのエトセトラ - nanapi勉強会 vol2
nashibao
1
480
Amazon Kinesisでストリーム解析 - Node学園12時限目
nashibao
4
3.9k
Other Decks in Programming
See All in Programming
どうして手を動かすよりもチーム内のコードレビューを優先するべきなのか
okashoi
3
870
Внедряем бюджетирование, или Как сделать хорошо?
lamodatech
0
940
Fibonacci Function Gallery - Part 2
philipschwarz
PRO
0
210
[JAWS-UG横浜 #80] うわっ…今年のServerless アップデート、少なすぎ…?
maroon1st
0
100
PHPカンファレンス 2024|共創を加速するための若手の技術挑戦
weddingpark
0
140
DevFest - Serverless 101 with Google Cloud Functions
tunmise
0
140
Swiftコンパイラ超入門+async関数の仕組み
shiz
0
170
2025.01.17_Sansan × DMM.swift
riofujimon
2
560
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
200
Beyond ORM
77web
11
1.6k
情報漏洩させないための設計
kubotak
5
1.3k
良いユニットテストを書こう
mototakatsu
11
3.6k
Featured
See All Featured
We Have a Design System, Now What?
morganepeng
51
7.3k
Speed Design
sergeychernyshev
25
740
XXLCSS - How to scale CSS and keep your sanity
sugarenia
248
1.3M
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
3
180
Testing 201, or: Great Expectations
jmmastey
41
7.2k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
38
1.9k
Side Projects
sachag
452
42k
Designing for Performance
lara
604
68k
Site-Speed That Sticks
csswizardry
3
270
Gamification - CAS2011
davidbonilla
80
5.1k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.1k
Code Reviewing Like a Champion
maltzj
521
39k
Transcript
ΧδϡΞϧʹϦΞΫςΟϒΣ ϒΛ࣮ݱ͍ͯ͠Δ (ג)ϓϨΠυ @nashibao 2014/05/29 http://plaid.co.jp ݄ץϥΠτχϯάτʔΫ20148݄߸: MEAN ࡇΓ
@nashibaoͱ͍͍·͢ ࣲࢁथ తࢄܕػցֶशతΤϯδχΞ(31) ! ~201208: େֶͱ͔Ͱʑͱ͢ΔɽMapReduceͱߦྻղ͕ɽ 201209: Node.jsʹ֮ΊΔ 201304: ݩָఱ(31)ͱىۀ
σʔλղੳ&CRMαʔϏε 201309: ത࢜υϩοϓΞτ
ΧδϡΞϧ + ϦΞΫςΟϒ “؆୯ʹΣϒΞϓϦΛϦΞΫςΟϒʹ͢Δํ๏"
ϦΞΫςΟϒʁ
ϦΞΫςΟϏςΟʢϦΞΫςΟ ϒΣϒʣ ৭ʑͳҙຯ߹͍ͰΘΕΔɻ ΣϒͩͱσʔλόΠϯσΟϯάͷҙຯ߹͍ ͕ڧ͍ FRPͷݶఆతͳΘΕํʢͨͿΜʣ
ࢀߟจݙ “Trigger ͱ Stream ϕʔεͷ Reactive ελΠϧʹ͍ͭͯߟ͑Δ” Block Rockin’ Codes
http://jxck.hatenablog.com/entry/20120509/1336566474 ! “Meteor.js” naoyaͷͯͳμΠΞϦʔ http://d.hatena.ne.jp/naoya/20120422/1335109615 ! “oplog tailingΛͬͨϦΞΫςΟϒΣϒ” qiita@nashibao http://qiita.com/nashibao@github/items/26397f8f7a4e65973169
ϦΞΫςΟϒΣϒ = “ಛผͳॻ͖ํΛ͠ͳͯ͘ɺςϯϓϨʔτ ͔ΒϑϩϯτɺαʔόαΠυͷσʔλ·Ͱ ͕όΠϯσΟϯά͞ΕΔ͜ͱ” ! ࠓ͜ͷΑ͏ʹݶఆ͠·͢ɻ ੜ࢈ੑͷҙຯͰ࣮༻ੑ͕ʢͨͿΜʣҰ൪ߴ͍෦ͩͱࢥ͍·͢ɻ ! !
&$ YGDUGTXGT (TQPV/QFGN 6GORNCVG ٚڋْ⯪㧕ר 哋▶⚮㤁 ⫛㨍؋ KUQOQTRJKECRK ٦ٸڋ؞
哋▶㧕㢑
ͳͥΔͷ͔ ੜ࢈ੑ ͱ͔͘ίʔυ͕ݮΔ ! ػೳ ϦΞϧλΠϜੑ ίϥϘϨʔγϣϯ ελʔτΞοϓʹ ༏͍͠ʂ ཧը໘ʹ
͏Ε͍͠ʂ
ϓϨΠυͷ߹(ͳͥΔͷ͔) “ϦΞϧλΠϜ”ΛӖͬͨB2BղੳαʔϏε ։ൃऀ̎ਓ ίʔυۃྗݮΒͯ͠։ൃ͠ͳ͍ͱແཧʂʂ ୭͔ॿ͚ͯʂʂ
(ג)ϓϨΠυͱ͍͍·͢ http://plaid.co.jp EC͚ͷղੳ&CRMαʔϏεΛεςϧε։ൃதɽ ! ݱࡏ։ൃͨͬͨ2ਓͳͷͰɺ ԠืΛຊʹ͓͓ͪͯ͠Γ·͢ʂ ෲյ͢·Ͱ͕৯͑ΔձࣾʂͦΕ͕ϓϨΠυʂ ܴձγϡϥείͰ͢ʂ
ΧδϡΞϧʁ
Γ͍͚ͨͲΘΓͱϝϯυΫ αΠ ੜ࢈ੑ͍͋͛ͨɺɺͰɺ ! αʔόʔαΠυϑϩϯτΤϯυ͖উख ʹϑϨʔϜϫʔΫબͼ͍ͨɻͦΕʹσʔλϕʔ ε͖ʹબͼ͍ͨɻ੍ݶ͞Εͨ͘ͳ͍ɻͱ ͍͏͔ΧελϚΠζࣗ༝ʹΓ͍ͨ͠ɺύ ϑΥʔϚϯενϡʔχϯάࣗ༝ʹΓ͍ͨ
Γ͍͚ͨͲΘΓͱϝϯυΫ αΠ socket.ioͱknockout.jsͬͯബ͘ ࡞ΕׂͱΓ͍ͨ͜ͱ؆୯ʹग़དྷΔ͠ɺ ͖উखͰ͖ΔΑɺͱ͍͏͓
&$ YGDUGTXGT (TQPV/QFGN 6GORNCVG TREQXGTUQEMGVKQ MPQEMQWVLU XWGLU
Knockout.js ϑϩϯτΤϯυͰͷσʔλόΠϯσΟϯ༻ά ϥΠϒϥϦ ബ͍ɻόΠϯσΟϯά͔͠ͳ͍ “NOT FRAMEWORK!” ୯७ͳؔݺͼग़͠ʹΑΔґଘੑղܾͰͱ͔ ͘ύϑΥʔϚϯε͕͍͍
rpc over socket.io “Ezelia/eureca.io”ͳͲRPCϥΠϒϥϦ͍͘ ͭ͋Δ ͨͩɺ͜͜ബ͍··Ͱ͍͍ͷͰࣗ࡞ ! * ࢀߟ: RPCͷύϑΥʔϚϯεൺֱ
nashibao/ node-rpc-test
σϞ
nashibao/test-casual— reactive-web * ࣮ӡ༻͍ͯ͠ΔϥΠϒϥϦ͔Β ίΞ͚ͩൈ͖ग़ͨ͠ͷΛͬͯ·͢
ؾΛ͚ͭΔ͖ͱ͜Ζ (αϯϓϧʹͳ͍෦) 1. ೝূ middleware stackΛ࡞͓ͬͯ͘ඞཁ͋Γ 2. σʔλܕ JSONͰѻ͑ͳ͍ͷಠࣗͰ 3.
tailing or manual mongoͷtailingΛ͏͔खಈͰupdateΛΒͤΔ͔
http://plaid.co.jp ࠷ۙܙൺणʹҾͬӽͨ͠Αʂ