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
iQONを支えるクローラー/iQON Crawler
Search
Masayuki Imamura
June 17, 2015
Programming
12
4.2k
iQONを支えるクローラー/iQON Crawler
IVS CTO Night & Day Spring 2015 のLTで発表した内容です /VASILY @kyuns
Masayuki Imamura
June 17, 2015
Tweet
Share
More Decks by Masayuki Imamura
See All by Masayuki Imamura
バイセルにおけるAI活用の取り組みについて紹介します/Generative AI at BuySell Technologies
kyuns
2
760
経営視点から捉えた開発生産性 / Development productivity from a management perspective
kyuns
12
9.5k
Qiita:Teamをハックして成果をあげるための情報共有方法/Qiita:Team
kyuns
6
3.5k
3年連続ベストアプリ受賞のプロダクトを支える裏側/The way to Achieve The Best App 3 years in a row
kyuns
1
1.7k
機械学習とデータ分析を支えるマルチクラウドなアーキテクチャの紹介/Multi Cloud Architecture Supporting Machine Learning and Data Analysis
kyuns
4
9.8k
日本最大級のファッションDBを支える裏側/how to manage the complex web service
kyuns
4
870
iQONを支えるデータ分析基盤/iqon-bigquery
kyuns
3
10k
iQON Tools
kyuns
1
3.9k
プッシュ通知大戦争/effective push notification by iQON
kyuns
28
8.4k
Other Decks in Programming
See All in Programming
Rethinking Data Access: The New httpResource in Angular
manfredsteyer
PRO
0
220
TSConfig Solution Style & subpath imports to switch types on a per-file basis
maminami373
1
180
マテリアルって何者?RealityKitで扱うマテリアル入門
nao_randd
0
140
コンポーネントライブラリで実現する、アクセシビリティの正しい実装パターン
schktjm
1
660
REST API設計の実践 – ベストプラクティスとその落とし穴
kentaroutakeda
2
310
がんばりすぎないコーディングルール運用術
tsukakei
1
180
型付け力を強化するための Hoogle のすゝめ / Boosting Your Type Mastery with Hoogle
guvalif
1
230
primeNumberでのRBS導入の現在 && RBS::Traceでinline RBSを拡充してみた
mnmandahalf
0
250
Interface vs Types ~型推論が過多推論~
hirokiomote
1
230
TSConfigからTypeScriptの世界を覗く
planck16
2
1.3k
インターフェース設計のコツとツボ
togishima
2
480
【TSkaigi 2025】これは型破り?型安全? 真実はいつもひとつ!(じゃないかもしれない)TypeScript クイズ〜〜〜〜!!!!!
kimitashoichi
1
300
Featured
See All Featured
Thoughts on Productivity
jonyablonski
69
4.7k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
12k
Git: the NoSQL Database
bkeepers
PRO
430
65k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
123
52k
The Cost Of JavaScript in 2023
addyosmani
49
8.1k
Faster Mobile Websites
deanohume
307
31k
Statistics for Hackers
jakevdp
799
220k
Unsuck your backbone
ammeep
671
58k
Into the Great Unknown - MozCon
thekraken
39
1.8k
Six Lessons from altMBA
skipperchong
28
3.8k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
14
1.5k
Transcript
BEHIND the iQON CRAWLER iQONΛࢧ͑ΔΫϩʔϥʔ VASILY,Inc. @kyuns IVS CTO Night
& Day 2015 Spring powered by AWS
ࠓଜխ @kyuns / Ωϡϯ VASILY,Inc औకCTO / Co-Founder 2006ʹYahoo!JAPANʹ৽ଔೖࣾ Yahoo!FASHIONɺXBRANDͳͲͷϝσΟΞͷ্ཱͪ͛
2009ʹಠཱɺVASILYΛۀɺऔకCTOʹब ͖ͳ"84αʔϏε4͖ͳ༏ਫथಸʑ
ઃཱ :200811݄ ैۀһ :53ਓ / (ΤϯδχΞ17໊) ࢿຊۚ :8ԯ2,458ສ גओɹ :KDDI
ITV GCP GMOVP
None
ຊதͷECαΠτͷ σʔλΛܝࡌ ຊ࠷େڃͷ ϑΝογϣϯΞϓϦʮΞΠίϯʯ ձһ 230ສਓ
J20/ͷ ΫϩʔϥʔͬͯԿʁ
Λ͑ΔຊதͷϑΝογϣϯ&$αΠτͷσʔλΛ શͯΫϩʔϧɺஈɺࣸਅɺઆ໌ɺࡏݿΛॲཧ
ͱ͋ΔனԼ͕Γʜ
ਓؾ501ϒϥϯυ ͍͍ײ͡ʹશ෦Ϋϩʔϧͯ͠Α
ཱ͔ͪͩΔ՝ w ϒϥϯυҎ্ΛຖΫϩʔϧ͢Δʹ εέδϡʔϥʔΛޮԽ͠ͳ͍ͱ͍͚ͳ͍ w ΧςΰϦఆϞϊɺϞσϧɺτϧιʔͷఆͳ Ͳɺਓ͕͍ؒͯͨ͜͠ͱΛແ͘͞ͳ͍ͱ͍͚ͳ͍ w ͦͦ91"5)Λਓ͕ؒௐΔͷΛͳΜͱ͔͠ͳ ͍ͱ͍͚ͳ͍
iQON Crawler 4.0 = શࣗಈԽ
ΧςΰϦఆͷࣗಈԽ w ͋ΒΏΔϑΝογϣϯ༻ޠΛཏͨ͠ ϑΝογϣϯʹಛԽͨࣙ͠ॻΛੜ w &$αΠτͷλΠτϧɺઆ໌จɺͺΜͣ͘Ϧετ͔ΒεςοϓΛܦͯఆ จ຺ͷఆͳͲߦ͍ͬͯΔ ྫʮΊͪΌͪ͘Ό͔Θ͍͍όοάʂεΧʔτʹ͋͏ʂʯͷઆ໌จͷ߹εΧʔ
τʹޡఆ͠ͳ͍Α͏ͳจ຺Λҙࣝͨ͠ॲཧʣ w ͷ্هεςοϓ͔ΒఆͰ͖Δ w ϓϧΦʔόʔͱ͔5γϟπʹϒϥεʹྨͰ͖ͯ͠·͏ αΠτ͝ͱʹఆ͕ٛҧͬͨΓ͢Δ w Γͷෳࡶͳͷػցֶशʹ͔͚ͯఆ
ը૾ఆͷࣗಈԽ ϞϊɺϞσϧɺτϧιʔΛը૾ղੳΛۦͯ͠ɺࣗಈతʹఆɻ ྨਫ਼ˋ ͞ΒʹɺϞϊը૾ΤσΟλͰ͏ͨΊʹനൈ͖ॲཧΛશࣗಈͰߦ͏
91"5)நग़ͷࣗಈԽ &$αΠτͷߏΛӡӦ ϕϯμʔաڈͷใΛ ݩʹಛԽ %0.ͷߏ͔Β֤ཁૉ Β͖͠ͷΛஅ ஈɺ λΠτϧ πʔϧͰ91"5)ཧ
ޮͷ͍͍Ϋϩʔϧͱ w ΫϩʔϧͷXPSLFSΛHPͰॻ͖ͳ͓ͯ͠ EPDLFS &MBTUJD#FBOTUBMLͰBVUPTDBMFͰΫϩʔϧ͠·͘Γʂ ઌํͷαΠτ͕͙͢ࢮ͵ w ͷน αΠτඵΞΫηε·Ͱͱ͍͏ਈ࢜ڠఆ
w ෳXPSLFSΛ·͍ͨͩࢄϩοΫػߏ͕ඞཁ
w %JTUSJCVUFE-PDLXJUI3FEJT %-. IUUQSFEJTJPUPQJDTEJTUMPDL w ಠࣗʹ࣌ݶ͖ࢄϩοΫSFEJTEJTUNVUFYΛ։ൃ WBTJMZKQSFEJTEJTUNVUFY w ٕज़ϒϩάIUUQUFDIWBTJMZKQDSBXMTJUFTXJUISFEJTEJTUNVUFY
w αΠτͷϨεϙϯεੑೳʹؔͳ͘ҰఆִؒͰޮతʹΫϩʔϧͰ͖Δ Resque (fetch) Fetch worker &$4JUF Dist Mutex Resque (process) Fetch worker Fetch worker Sender 1.enqueue 2.dequeue 3.try_lock 4.get DB 5.save 6.enqueue
·ͱΊ w $&0ͷແͿΓʹٕज़ͰԠ͑Α͏ w Ϋϩʔϥʔʹ͍ͭͯฉ͖͍ͨਓ͓ͪͯ͠·͢