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
Rails アプリ地図考 Flush Cut
makicamel
1
120
一休.com のログイン体験を支える技術 〜Web Components x Vue.js 活用事例と最適化について〜
atsumim
0
550
dbt Pythonモデルで実現するSnowflake活用術
trsnium
0
180
苦しいTiDBへの移行を乗り越えて快適な運用を目指す
leveragestech
0
660
Honoのおもしろいミドルウェアをみてみよう
yusukebe
1
210
動作確認やテストで漏れがちな観点3選
starfish719
6
1k
Spring gRPC について / About Spring gRPC
mackey0225
0
220
Amazon ECS とマイクロサービスから考えるシステム構成
hiyanger
2
570
CI改善もDatadogとともに
taumu
0
120
ARA Ansible for the teams
kksat
0
150
法律の脱レガシーに学ぶフロントエンド刷新
oguemon
5
740
Honoとフロントエンドの 型安全性について
yodaka
7
1.3k
Featured
See All Featured
Code Reviewing Like a Champion
maltzj
521
39k
Gamification - CAS2011
davidbonilla
80
5.1k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
51k
Visualization
eitanlees
146
15k
The Cost Of JavaScript in 2023
addyosmani
47
7.3k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
47
5.2k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
Thoughts on Productivity
jonyablonski
69
4.5k
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 ࠷ۙܙൺणʹҾͬӽͨ͠Αʂ