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.1k
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
490
経営視点から捉えた開発生産性 / Development productivity from a management perspective
kyuns
12
8.7k
Qiita:Teamをハックして成果をあげるための情報共有方法/Qiita:Team
kyuns
6
3.4k
3年連続ベストアプリ受賞のプロダクトを支える裏側/The way to Achieve The Best App 3 years in a row
kyuns
1
1.6k
機械学習とデータ分析を支えるマルチクラウドなアーキテクチャの紹介/Multi Cloud Architecture Supporting Machine Learning and Data Analysis
kyuns
4
9.7k
日本最大級のファッションDBを支える裏側/how to manage the complex web service
kyuns
4
840
iQONを支えるデータ分析基盤/iqon-bigquery
kyuns
3
10k
iQON Tools
kyuns
1
3.8k
プッシュ通知大戦争/effective push notification by iQON
kyuns
28
8.3k
Other Decks in Programming
See All in Programming
GitHub CopilotでTypeScriptの コード生成するワザップ
starfish719
26
5.9k
KubeCon NA 2024の全DB関連セッションを紹介
nnaka2992
0
110
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
290
Fixstars高速化コンテスト2024準優勝解法
eijirou
0
180
Beyond ORM
77web
11
1.5k
週次リリースを実現するための グローバルアプリ開発
tera_ny
1
1k
カンファレンス動画鑑賞会のススメ / Osaka.swift #1
hironytic
0
140
ISUCON14感想戦で85万点まで頑張ってみた
ponyo877
1
530
rails newと同時に型を書く
aki19035vc
5
690
Jaspr Dart Web Framework 박제창 @Devfest 2024
itsmedreamwalker
0
140
Асинхронность неизбежна: как мы проектировали сервис уведомлений
lamodatech
0
1.3k
menu基盤チームによるGoogle Cloudの活用事例~Application Integration, Cloud Tasks編~
yoshifumi_ishikura
0
150
Featured
See All Featured
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Designing for humans not robots
tammielis
250
25k
Fontdeck: Realign not Redesign
paulrobertlloyd
82
5.3k
Practical Orchestrator
shlominoach
186
10k
Facilitating Awesome Meetings
lara
50
6.2k
The Invisible Side of Design
smashingmag
299
50k
Rails Girls Zürich Keynote
gr2m
94
13k
Why You Should Never Use an ORM
jnunemaker
PRO
54
9.1k
Build The Right Thing And Hit Your Dates
maggiecrowley
33
2.5k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
A Philosophy of Restraint
colly
203
16k
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 Ϋϩʔϥʔʹ͍ͭͯฉ͖͍ͨਓ͓ͪͯ͠·͢