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
0
880
ikyu_hack_camp_#1
開発合宿#1 @ 日光はじめのいっぽ
Node.js でスクレイピングバッチ+Webアプリを作った
kentana20
August 10, 2014
Tweet
Share
More Decks by kentana20
See All by kentana20
一休.comでの開発組織改善の取り組みとこれから /improve-ikyu-devlove-x
kensuketanaka
24
37k
株式会社一休 会社紹介資料 / introduce-ikyu
kensuketanaka
15
120k
一休での開発における改善の取組み /devops-at-ikyu
kensuketanaka
13
10k
一休.com における改善事例のご紹介 /ikyu-storage-improvement
kensuketanaka
6
11k
開発合宿@京都 /hack-camp-kyoto
kensuketanaka
0
3.9k
一休.comにおけるデプロイフローと自動化 /ikyu-deploy-flow
kensuketanaka
9
9k
ikyu-frontend
kensuketanaka
21
7.3k
sushi_route_2015
kensuketanaka
0
230
qiita meetup#12
kensuketanaka
4
71k
Other Decks in Technology
See All in Technology
us-east-1 の障害が 起きると なぜ ソワソワするのか
miu_crescent
PRO
3
910
ZOZOTOWNカート決済リプレイス ── モジュラモノリスという過渡期戦略
zozotech
PRO
0
370
AIと共に開発する時代の組織、プロセス設計 freeeでの実践から見えてきたこと
freee
4
710
「もっと正確に、もっと効率的に」ANDPADの写真書き込み機能における、 現場の声を形にしたエンハンス
andpad
0
110
技術広報のOKRで生み出す 開発組織への価値 〜 カンファレンス協賛を通して育む学びの文化 〜 / Creating Value for Development Organisations Through Technical Communications OKRs — Nurturing a Culture of Learning Through Conference Sponsorship —
pauli
5
240
大規模プロダクトで実践するAI活用の仕組みづくり
k1tikurisu
4
1.2k
ソフトウェア開発現代史: 55%が変化に備えていない現実 ─ AI支援型開発時代のReboot Japan #agilejapan
takabow
7
4.2k
Rubyist入門: The Way to The Timeless Way of Programming
snoozer05
PRO
6
480
ある編集者のこれまでとこれから —— 開発者コミュニティと歩んだ四半世紀
inao
5
3.2k
"おまじない"はもう卒業! デバッガで探るSpring Bootの裏側と「学び方」の学び方
takeuchi_132917
0
160
LINEギフト・LINEコマース領域の開発
lycorptech_jp
PRO
0
110
Dart and Flutter MCP serverで実現する AI駆動E2Eテスト整備と自動操作
yukisakai1225
0
530
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.2k
Navigating Team Friction
lara
190
15k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Become a Pro
speakerdeck
PRO
29
5.6k
Java REST API Framework Comparison - PWX 2021
mraible
34
9k
How to Think Like a Performance Engineer
csswizardry
28
2.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Six Lessons from altMBA
skipperchong
29
4.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
2.9k
Practical Orchestrator
shlominoach
190
11k
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!