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
ikyu_hack_camp_#1
Search
kentana20
August 10, 2014
Technology
890
0
Share
ikyu_hack_camp_#1
開発合宿#1 @ 日光はじめのいっぽ
Node.js でスクレイピングバッチ+Webアプリを作った
kentana20
August 10, 2014
More Decks by kentana20
See All by kentana20
一休.comでの開発組織改善の取り組みとこれから /improve-ikyu-devlove-x
kensuketanaka
24
37k
株式会社一休 会社紹介資料 / introduce-ikyu
kensuketanaka
15
140k
一休での開発における改善の取組み /devops-at-ikyu
kensuketanaka
13
10k
一休.com における改善事例のご紹介 /ikyu-storage-improvement
kensuketanaka
6
11k
開発合宿@京都 /hack-camp-kyoto
kensuketanaka
0
4.1k
一休.comにおけるデプロイフローと自動化 /ikyu-deploy-flow
kensuketanaka
9
9.1k
ikyu-frontend
kensuketanaka
21
7.4k
sushi_route_2015
kensuketanaka
0
250
qiita meetup#12
kensuketanaka
4
72k
Other Decks in Technology
See All in Technology
EMから幅を広げるために最近挑戦していること / Recent challenges I'm undertaking to expand my horizons beyond EM
hiro_torii
1
120
AI時代のガードレールとしてのAPIガバナンス
nagix
0
310
Choose your own adventure in agentic design patterns
glaforge
0
150
はじめての MagicPod生成AI機能 機能紹介から活用方法まで
magicpod
0
120
20年前の「OSS革命」に学ぶ AI時代の生存戦略
samakada
0
480
データを"持てない"環境でのアノテーション基盤設計
sansantech
PRO
1
140
Do Ruby::Box dream of Modular Monolith?
joker1007
1
350
AI時代 に増える データ活用先
takahal
0
320
コミュニティ・勉強会を作るのは目的じゃない
ohmori_yusuke
0
260
Claude Code を安全に使おう勉強会 / Claude Code Security Basics
masahirokawahara
12
37k
色を視る
yuzneri
0
110
CloudTrail を見つめ直してみる
kazzpapa3
1
120
Featured
See All Featured
The Language of Interfaces
destraynor
162
26k
Unsuck your backbone
ammeep
672
58k
BBQ
matthewcrist
89
10k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.1k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
35
2.4k
Stewardship and Sustainability of Urban and Community Forests
pwiseman
0
180
Why Our Code Smells
bkeepers
PRO
340
58k
The Hidden Cost of Media on the Web [PixelPalooza 2025]
tammyeverts
2
280
Raft: Consensus for Rubyists
vanstee
141
7.4k
Chasing Engaging Ingredients in Design
codingconduct
0
170
How STYLIGHT went responsive
nonsquared
100
6.1k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.8k
Transcript
։ൃ߹॓#1 ͡Ίͷ͍ͬΆ 2014.08.08 @kentana20
Agenda ϨΪϡϨʔγϣϯʢ֬ೝʣ ࠾༻ٕͨ͠ज़ ࠓճͷ࡞ίϯηϓτ ࡞ͬͨͷ Batch Web Node.jsॴײ ·ͱΊ
ϨΪϡϨʔγϣϯ ͋·Γ৮͍ͬͯͳ͍ݴޠɾϑϨʔϜϫʔΫΛ৮Δ ࣾͷҰ෦αʔϏεΛఆͨ͠ҎԼͷॲཧϓϩ άϥϜΛ࡞Δ Batch:εΫϨΠϐϯάॲཧʴDBొ Web:Batchॲཧͯ͠औಘͨ͠σʔλͷදࣔ
࠾༻ٕͨ͠ज़ Node.js Batch/WebͱʹNode.js Node.jsnpmύοέʔδ͕๛ͰεΫϨΠϐϯάɺόον ॲཧʢcronʣɺDBΫϥΠΞϯτɺWebϑϨʔϜϫʔΫͱଟ ࠼ͳϥΠϒϥϦ܈͕ັྗ Redis ΠϯϝϞϦܕNoSQL
ࠓճͷ࡞ίϯηϓτ ʮඒঁʯΛࡐʹͨ͠ΞϓϦ 1ധ2Ͱ࣌ؒͷ࡞ۀ͕༧͞ΕͨͷͰɺπϥ ͘ͳ͍ࡐΛબ ਖ਼ৗʹऔಘɾදࣔ͞Εͨͱ͖ʹ༊͞ΕΔ ʮඒঁྐྵʯ͔Βඒঁը૾ͱϓϩϑΟʔϧΛεΫϨ ΠϐϯάͰऔಘ
࡞ͬͨͷ Batch `cheerio-httpcli` ͱ͍͏npmΛ࠾༻ʢΤϯδχΞblog࠷ ߴʣ σʔλͷอଘRedisΛ࠾༻ʢطʹOS Xʹೖ͔ͬͯͨΒʣ jQueryϥΠΫʹεΫϨΠϐϯάॲཧ͕ॻ͚Δ͙͢Εͷ CasperJSΛ͍͔͕ͨͬͨɺNode.jsͰಈ࡞ͤ͞Δͷʹ SpookyJS͕ඞཁͱ͍͏͜ͱΛࣦ೦͍ͯͯ͠λΠϜϩε
࡞ͬͨͷ Web `Express` ͱ͍͏WebϑϨʔϜϫʔΫΛ࠾༻ ΠϚυΩͷWebϑϨʔϜϫʔΫͰɺejsͱ͍͏Rails Ͱ͍͏ͱ͜ΖͷerbతͳwebςϯϓϨʔτ͕͑ ͯεοͱೖΕͨ ͕࣌ؒͳͯ͘ϓϨʔϯա͗ΔUIʹͳͬͨ
Γ͔ͨͬͨ͜ͱɾ৺Γ Q (ඇಉظΓ͜ͳͤͳ͔ͬͨʣ ඒঁͷϓϩϑΟʔϧΛͬͱऔಘ͔ͨͬͨ͠ʢliཁૉ͕ՄมͰid/ class྆ํͳͯ͘”൴ࢯͷ༗ແ”͕औΕͳ͔ͬͨ͜ͱ͕৺Γʣ WebϖʔδΛඒঁʹ;͞Θ͘͠ɺͬͱ՚͔ͳUIʹ͔ͨͬͨ͠ ʢBatchͷ࣮ʹֻ͚࣌ؒ͗ͯ͢ɺWebͷ࣮ʹ2࣌ؒ͘Β͍͔͠ͱ Εͳ͔ͬͨɻ࣌ؒॏཁʣ SpookyJSͰσʔλεΫϨΠϐϯά͢Δͷָͦ͠͏ͳͷͰɺͦͬͪ ʹτϥΠͯ͠Έ͍ͨ
Node.jsॴײ JavascriptϥΫʢ͚ͲͬͺΓه๏͖͡Όͳ͍ʣ JavascriptͰͯ݁͢Ͱ͖ΔͷͰɺڥߏஙؚΊͯಋೖίε τɾֶशίετ͍ npm͕๛ͳͷͰɺΠϚυΩͷWebΞϓϦͰ͍ͬͯΔ͜ͱ ͍͍ͩͨΧόʔͰ͖Δ γϯάϧεϨουɾඇಉظΛΓ͜ͳ͢༰ͳਫ਼ਆ͕ඞཁ झຯͷΞϓϦͳΒશવީิʹೖͬͯ͘Δ͕B2C͚ͷ͋Δఔ ͷτϥϑΟοΫ͕༧͞ΕΔαʔϏεӡ༻ະ
։ൃ߹॓ॴײ ूதͯ͠ɺීஈͷੜ׆͔ΒΕͯ։ൃʹ͖߹͏࣌ؒ ࠷ߴ ࠓճ͓ࢼ͠ʴ৽ݴޠͷτϥΠͩͬͨͷͰ1ധ2Ͱ ྑ͔͕ͬͨɺࣄͰ࣮ࡍʹ։ൃ߹॓͢ΔͳΒ2~3ധ ͘Β͍ͯ͠ɺΨοπϦ։ൃ͢Εɺ͔ͳΓॆ࣮ͨ͠ ՌΛग़ͤͦ͏ ఆظతʹ։࠵͍ͨ͠ʢ2ճͱ͔ʣ
Enjoy Coding!