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
ピクシブのサービスと技術
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Atsushi Takayama
March 06, 2017
Technology
1
560
ピクシブのサービスと技術
ピクシブ福岡オフィス - オープン記念LT祭 で話した内容です
Atsushi Takayama
March 06, 2017
Tweet
Share
More Decks by Atsushi Takayama
See All by Atsushi Takayama
最高の開発者体験の追求が開発生産性を改善し続ける文化を生み出した話
edvakf
3
1.5k
NeurIPS 2021 論文読み会: How Modular should Neural Module Networks Be for Systematic Generalization?
edvakf
0
210
8年物のJavaのシステムをKotlinに変えていく選択に至るまで
edvakf
2
1.1k
ピクシブ社内のImageFlux利用事例紹介
edvakf
2
3k
学びの文化を育む社内読書会のススメ
edvakf
0
300
フルCDNアーキテクチャでサービス設計した話
edvakf
5
4k
Goでバイナリを読む+α
edvakf
1
990
お前はこれまでに作ったAPIの数を覚えているのか?
edvakf
0
2.7k
「ふつうのRailsアプリケーション」についての考え方
edvakf
2
920
Other Decks in Technology
See All in Technology
VLAモデル構築のための AIロボット向け模倣学習キット
kmatsuiugo
0
150
「Blue Team Labs Online」入門 - みんなで挑むログ解析バトル
v_avenger
0
180
Scrumは歪む — 組織設計の原理原則
dashi
0
180
Oracle Cloud Infrastructure IaaS 新機能アップデート 2025/12 - 2026/2
oracle4engineer
PRO
0
140
チームのモメンタムに投資せよ! 不確実性と共存しながら勢いを生み出す3つの実践
kakehashi
PRO
1
100
内製AIチャットボットで学んだDatadog LLM Observability活用術
mkdev10
0
110
OSC仙台プレ勉強会 AlmaLinuxとは
koedoyoshida
0
170
Sansanでの認証基盤内製化と移行
sansantech
PRO
0
470
Abuse report だけじゃない。AWS から緊急連絡が来る状況とは?昨今の攻撃や被害の事例の紹介と備えておきたい考え方について
kazzpapa3
1
710
It’s “Time” to use Temporal
sajikix
1
150
AIエージェント時代に備える AWS Organizations とアカウント設計
kossykinto
3
1k
JAWS FESTA 2025でリリースしたほぼリアルタイム文字起こし/翻訳機能の構成について
naoki8408
1
530
Featured
See All Featured
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
220
Designing Powerful Visuals for Engaging Learning
tmiket
0
270
For a Future-Friendly Web
brad_frost
183
10k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
860
Heart Work Chapter 1 - Part 1
lfama
PRO
5
35k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
280
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
71
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Navigating the moral maze — ethical principles for Al-driven product design
skipperchong
2
290
How to Think Like a Performance Engineer
csswizardry
28
2.5k
Leo the Paperboy
mayatellez
4
1.5k
Evolving SEO for Evolving Search Engines
ryanjones
0
150
Transcript
ϐΫγϒͷαʔϏεͱٕज़ @ϐΫγϒԬΦϑΟε - Φʔϓϯه೦LTࡇ
ࣗݾհ ߴࢁԹ @edvakf ϐΫγϒגࣜձࣾ ࣥߦһ CTO ֶੜ࣌ʹJavaScriptͱΣϒඪ४ʹϋϚͬͯɺ 2012ʹେֶӃΛதୀͯ͠ϐΫγϒʹೖࣾ ೖ͔ࣾͯ͠ΒαʔόʔαΠυ։ൃશൠΛ୲
pixiv ΠϥετΛ࣠ͱͨ͠ ίϛϡχέʔγϣϯ ϓϥοτϑΥʔϜ
pixiv.git www.pixiv.net touch.pixiv.net app-api.pixiv.net www.pixivision.net sensei.pixiv.net ͳͲ
pixivΞϓϦ
pixivision pixivͷΫϦΤΠλʔ ࡞ʹؔΘΔਓΛ հ͢ΔϝσΟΞ
pixiv FANBOX ΫϦΤΠλʔͷ ༗ྉίϯςϯπΛఆֹ ߪಡͰ͖ΔαʔϏε
sensei ಈըͰֶͿ Πϥετߨ࠲
ϨΨγʔ or not?
2007͔ΒՔಇ͍ͯ͠Δ80ສߦͷPHPΞϓϦέʔγϣϯ PHP5.2→5.3→5.5→7ʢҠߦ్தʣ ίʔυϕʔεશମʹؔΘΔϦϑΝΫλϦϯάΛৗʹ࣮ࢪ ਓ͕ೖΕସΘͬͯಡΊ͔Δ͜ͱɺҰׅϦϑΝΫ λϦϯά͍͢͜͠ͱΛࢦ͖ͯͨ͠ ϑϩϯτΤϯυͰWebpackͱBabelͷಋೖ ES7, Reactͷ࠾༻͕ਐΉ
େྔΞΫηε
ੈքத͔Βຖ30ສͷϦΫΤετΛड͚ΔPHPΞϓϦέʔγϣϯ ྺ࢙తܦҢͰαʔόʔ͔ͳΓগͳ͑͘ΒΕ͍ͯΔ 2014ࠒ·ͰʹύϑΥʔϚϯε্ͷ΄΅௵͖ͯͨ͠ 1Ϗϡʔʹදࣔ͞ΕΔίϯςϯπ ࠂ͕1ʙ3Օॴ ը૾͕10ʙ20Օॴ →͞ΒʹେྔͷϦΫΤετΛࡹ͘
pixivͷը૾Πϯϑϥ
େྔͷϦΫΤετͱτϥϑΟοΫ ϩϯάςʔϧͷΞΫηε 1ͭͷը૾ʹରͯ͠10ύλʔϯҎ্ͷαϜωΠϧ →ΦʔϓϯιʔειϑτΛΈ߹ΘͤͨΩϟογϡػ ߏͱɺࣗલͷը૾มϛυϧΣΞΛGoͰ։ൃ
ImageFlux Powered by pixiv
pixivΛࢧ͑Δը૾มɾ৴ٕज़Λ ͘͞ΒΠϯλʔωοτ͞ΜͱڞಉͰαʔϏεԽ CݴޠɾΞηϯϒϥϨϕϧͷը૾มٕज़ GoʹΑΔωοτϫʔΫϛυϧΣΞ։ൃʹڵຯͷ͋ ΔΤϯδχΞืूதʂ
ࠂ৴ γεςϜ
ࠂ͝ͱʹෳͷࠂ৴ωοτϫʔΫͷൺΛ Γସ͑ͨΓɺࣗࣾࠂΛ৴͢Δ ཧը໘Ruby on Rails ৴αʔόʔGo ॳظ͔Βٕज़ࢿྉΛެ։͍ͯͨͨ͠Ίɺࠂ৴ ۀքͰࢀߟʹ͠·ͨ͠ͱ͍͏ҙݟ͕ଟ
pixivͱRuby on Rails
BOOTH pixivͱੑͷߴ͍ γϣοϓ࡞αʔϏε
pixivFACTORY ΠϥετΛ1ຕΞοϓ ϩʔυ͢Δ͚ͩͰ ΦϦδφϧΞΠςϜΛ ࡞ΕΔαʔϏε
pixivίϛοΫ pixiv͔ΒσϏϡʔͨ͠ ࿈ࡌອըΛϝΠϯʹѻ ͏ిࢠॻ੶ΞϓϦ
pixivSketch pixivΑΓؾܰʹ ֆΛඳ͍ͯߘ Ͱ͖ΔΞϓϦ&SNS
Rails Wayʹैͬͯʮී௨ʯʹ࡞Δ ͏gemͳͲΛڞ௨Խͯ͠ɺ ࣾͰϊϋΛڞ༗Ͱ͖ΔΑ͏ʹ Railsదٓ࠷৽ʹΞοϓσʔτ͍ͯ͘͠ ͪ͜Βϊϋͷڞ༗͕త ॴଐνʔϜΛ·͍ͨͩRailsΞοϓσʔτ࡞ઓͰ pixivίϛοΫΛ3ϲ݄ͰRails3.2→4.0→4.1→4.2→5.0Խ
ʮී௨ʯ͡Όͳ͍෦
֎෦ίϚϯυΛۦͨ͠ϓϨϏϡʔ
αʔόʔαΠυ ϨϯμϦϯά Node.jsͱReactʹΑΔ ϨϯμϦϯάαʔόʔ
ී௨ʹΔ͖ͱ͜Ζී௨ʹΓɺී௨͡Όͳ͍ ͱ͜Ζ಄ΛͻͶΔ
ܾࣾࡁج൫γεςϜ
pixivPay ScalaʹΑΔࣾͷܾࡁج ൫ ࣾͰ՝ۚΛѻ͏αʔϏ ε͕૿͖͑ͯͨͨΊʹ࡞ ෳࡶͳϏδωεϩδοΫ Λܕͱͯ҆͠શʹهड़͢Δ ͨΊʹ࡞
ٕज़ͱαʔϏε࡞Γ
ΫϦΤΠλʔʹࢧ࣋͞ΕΔαʔϏεΛ࡞ΓɺҭͯΔ͜ ͱ͕ୈҰٛ 2ʙ5ਓఔͷখ͞ͳνʔϜͰΦʔφʔγοϓΛ࣋ͬͯ ҰͭͷαʔϏεΛ୲ ೖࣾ1ͰαʔϏεʹΨϯΨϯҙݟΛݴ͑Δڥ αʔϏε࡞Γʹඞཁͳٕज़ɺઐ֎Ͱֶ͋ͬͯΜ ͰऔΓೖΕΔ ٕज़తબ֤νʔϜʹͤɺϊϋࣾͰڞ༗
ϐΫγϒͰҰॹʹαʔϏεΛ࡞Γ͍ͨΤϯδχΞ Λืू͍ͯ͠·͢ʂ ԬͰ౦ژͰಇ͚·͢ʂ