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
870
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
93k
一休での開発における改善の取組み /devops-at-ikyu
kensuketanaka
13
10k
一休.com における改善事例のご紹介 /ikyu-storage-improvement
kensuketanaka
6
11k
開発合宿@京都 /hack-camp-kyoto
kensuketanaka
0
3.7k
一休.comにおけるデプロイフローと自動化 /ikyu-deploy-flow
kensuketanaka
9
8.7k
ikyu-frontend
kensuketanaka
21
7.2k
sushi_route_2015
kensuketanaka
0
200
qiita meetup#12
kensuketanaka
4
71k
Other Decks in Technology
See All in Technology
クラウド食堂とは?
hiyanger
0
110
Perlの生きのこり - エンジニアがこの先生きのこるためのカンファレンス2025
kfly8
2
270
AIエージェント元年
shukob
0
160
アジャイルな開発チームでテスト戦略の話は誰がする? / Who Talks About Test Strategy?
ak1210
1
550
データエンジニアリング領域におけるDuckDBのユースケース
chanyou0311
9
2.2k
Iceberg Meetup Japan #1 : Iceberg and Databricks
databricksjapan
0
350
わたしがEMとして入社した「最初の100日」の過ごし方 / EMConfJp2025
daiksy
14
4.9k
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
110
1行のコードから社会課題の解決へ: EMの探究、事業・技術・組織を紡ぐ実践知 / EM Conf 2025
9ma3r
10
3.7k
LINE NEWSにおけるバックエンド開発
lycorptech_jp
PRO
0
230
AIエージェント元年@日本生成AIユーザ会
shukob
1
200
Oracle Database Technology Night #87-1 : Exadata Database Service on Exascale Infrastructure(ExaDB-XS)サービス詳細
oracle4engineer
PRO
1
170
Featured
See All Featured
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
21
2.5k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
10
510
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Raft: Consensus for Rubyists
vanstee
137
6.8k
Fireside Chat
paigeccino
34
3.2k
Docker and Python
trallard
44
3.3k
Understanding Cognitive Biases in Performance Measurement
bluesmoon
27
1.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
7
640
The Language of Interfaces
destraynor
156
24k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
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!