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
850
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
36k
株式会社一休 会社紹介資料 / introduce-ikyu
kensuketanaka
11
72k
一休での開発における改善の取組み /devops-at-ikyu
kensuketanaka
13
9.8k
一休.com における改善事例のご紹介 /ikyu-storage-improvement
kensuketanaka
6
11k
開発合宿@京都 /hack-camp-kyoto
kensuketanaka
0
3.4k
一休.comにおけるデプロイフローと自動化 /ikyu-deploy-flow
kensuketanaka
9
8.3k
ikyu-frontend
kensuketanaka
21
7k
sushi_route_2015
kensuketanaka
0
170
qiita meetup#12
kensuketanaka
4
71k
Other Decks in Technology
See All in Technology
SIEMを用いて、セキュリティログ分析の可視化と分析を実現し、PDCAサイクルを回してみた
coconala_engineer
0
320
DevOpsメトリクスとアウトカムの接続にトライ!開発プロセスを通して計測できるメトリクスの活用方法
ham0215
2
240
Além do else! Categorizando Pokemóns com Pattern Matching no JavaScript
wmsbill
0
620
JAWS-UG Bedrock Claude Night
yamahiro
3
610
ExaDB-D dbaascli で出来ること
oracle4engineer
PRO
0
2.1k
TechFeed Experts Night#27 〜 フロントエンドフレームワーク最前線 (Svelte)
baseballyama
1
520
KubeCon EU 2024 Recap “Kubernetes Policy Time Machine: Where to Next?”
ryysud
0
220
アクセス制御にまつわる改善 / Improving access control
itkq
0
540
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
220
Databricks における 『MLOps』
databricksjapan
2
170
プロトタイピングによる不確実性の低減 / Reducing Uncertainty through Prototyping
ohbarye
5
390
生産性向上チームの紹介
cybozuinsideout
PRO
1
870
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
187
16k
Clear Off the Table
cherdarchuk
84
310k
Designing for Performance
lara
601
67k
Raft: Consensus for Rubyists
vanstee
132
6.3k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Into the Great Unknown - MozCon
thekraken
10
990
How to name files
jennybc
65
93k
Designing the Hi-DPI Web
ddemaree
276
33k
4 Signs Your Business is Dying
shpigford
175
21k
What's in a price? How to price your products and services
michaelherold
237
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!