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
Atsushi Takayama
March 06, 2017
Technology
1
530
ピクシブのサービスと技術
ピクシブ福岡オフィス - オープン記念LT祭 で話した内容です
Atsushi Takayama
March 06, 2017
Tweet
Share
More Decks by Atsushi Takayama
See All by Atsushi Takayama
最高の開発者体験の追求が開発生産性を改善し続ける文化を生み出した話
edvakf
3
1.2k
NeurIPS 2021 論文読み会: How Modular should Neural Module Networks Be for Systematic Generalization?
edvakf
0
160
8年物のJavaのシステムをKotlinに変えていく選択に至るまで
edvakf
2
1k
ピクシブ社内のImageFlux利用事例紹介
edvakf
1
2.8k
学びの文化を育む社内読書会のススメ
edvakf
0
250
フルCDNアーキテクチャでサービス設計した話
edvakf
5
3.9k
Goでバイナリを読む+α
edvakf
1
930
お前はこれまでに作ったAPIの数を覚えているのか?
edvakf
0
2.5k
「ふつうのRailsアプリケーション」についての考え方
edvakf
2
820
Other Decks in Technology
See All in Technology
Classmethod AI Talks(CATs) #21 司会進行スライド(2025.04.17) / classmethod-ai-talks-aka-cats_moderator-slides_vol21_2025-04-17
shinyaa31
0
600
SnowflakeとDatabricks両方でRAGを構築してみた
kameitomohiro
1
430
Рекомендации с нуля: как мы в Lamoda превратили главную страницу в ключевую точку входа для персонализированного шоппинга. Данил Комаров, Data Scientist, Lamoda Tech
lamodatech
0
760
彩の国で始めよう。おっさんエンジニアから共有したい、当たり前のことを当たり前にする技術
otsuki
0
150
4/17/25 - CIJUG - Java Meets AI: Build LLM-Powered Apps with LangChain4j (part 2)
edeandrea
PRO
0
120
Making a MIDI controller device with PicoRuby/R2P2 (RubyKaigi 2025 LT)
risgk
1
280
SDカードフォレンジック
su3158
1
630
サーバレス、コンテナ、データベース特化型機能をご紹介。CloudWatch をもっと使いこなそう!
o11yfes2023
0
180
Porting PicoRuby to Another Microcontroller: ESP32
yuuu
4
440
アジャイル脅威モデリング#1(脅威モデリングナイト#8)
masakane55
3
230
AWSの新機能検証をやる時こそ、Amazon Qでプロンプトエンジニアリングを駆使しよう
duelist2020jp
1
260
意思決定を支える検索体験を目指してやってきたこと
hinatades
PRO
0
210
Featured
See All Featured
Java REST API Framework Comparison - PWX 2021
mraible
30
8.5k
Code Reviewing Like a Champion
maltzj
522
40k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
The Pragmatic Product Professional
lauravandoore
33
6.5k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.3k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
9
760
Building Adaptive Systems
keathley
41
2.5k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.2k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
119
51k
Large-scale JavaScript Application Architecture
addyosmani
512
110k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
32
5.4k
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ͰαʔϏεʹΨϯΨϯҙݟΛݴ͑Δڥ αʔϏε࡞Γʹඞཁͳٕज़ɺઐ֎Ͱֶ͋ͬͯΜ ͰऔΓೖΕΔ ٕज़తબ֤νʔϜʹͤɺϊϋࣾͰڞ༗
ϐΫγϒͰҰॹʹαʔϏεΛ࡞Γ͍ͨΤϯδχΞ Λืू͍ͯ͠·͢ʂ ԬͰ౦ژͰಇ͚·͢ʂ