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
Go と Wantedly の関係 / How Wantedly uses Go
Search
Shimpei Otsubo
October 10, 2020
1
780
Go と Wantedly の関係 / How Wantedly uses Go
Shimpei Otsubo
October 10, 2020
Tweet
Share
More Decks by Shimpei Otsubo
See All by Shimpei Otsubo
Copy Kubernetes Clusters Really Fast
potsbo
3
4k
Deploy Flow at Wantedly
potsbo
2
810
Wrap every method with just one line
potsbo
1
4.3k
Zero yen Keyboard
potsbo
6
3k
Kube - The core tool at Wantedly
potsbo
1
7.2k
k8s - Kubernetes 8 Factors
potsbo
12
10k
コンテンツ作成に集中するためのプレゼンテーション Tips / Presentation with Confidence
potsbo
7
38k
ConfigMap vs Secret #k8sjp
potsbo
1
1.3k
Microservices on Kubernetes
potsbo
5
11k
Featured
See All Featured
No one is an island. Learnings from fostering a developers community.
thoeni
19
3k
Building Better People: How to give real-time feedback that sticks.
wjessup
364
19k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
16
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
325
24k
Designing the Hi-DPI Web
ddemaree
280
34k
Making Projects Easy
brettharned
115
5.9k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Large-scale JavaScript Application Architecture
addyosmani
510
110k
Rebuilding a faster, lazier Slack
samanthasiow
79
8.7k
Art, The Web, and Tiny UX
lynnandtonic
297
20k
The Pragmatic Product Professional
lauravandoore
31
6.3k
Happy Clients
brianwarren
98
6.7k
Transcript
©2020 Wantedly, Inc. Go ͱ Wantedly ͷؔ Go ʹ·ͭΘΔΑ͋͘Δ࣭ͱճ Go
Conference’20 in Autumn SENDAI Oct 10, 2020 - Shimpei Otsubo
©2020 Wantedly, Inc. Go Wantedly ͰϚδϣϦςΟͰ͔͢ʁ
©2020 Wantedly, Inc. Go Wantedly ͰϚδϣϦςΟͰ͔͢ʁ ࣮ͦ͏Ͱͳ͍ Ruby, Python,
Go ͕΄΅ಉ ͨͩ͠ߦͱͯ͠ଟΑΓগͳׂ͍߹ ຊ൪Ͱఏڙ͞Ε͍ͯΔओཁαʔϏε ͜ͷଞ nginx es ͳͲͷγϯϓϧͳίϯϙʔωϯτ͕͋ͬͨΓͯ͜͠ͷഒఔ͋Δ Wantedly Go ٕज़എܠ ݕࡧ
©2020 Wantedly, Inc. ͯ͢Λ Go Ͱஔ͖͍͑ͯ͘ʁ
©2020 Wantedly, Inc. ͯ͢Λ Go Ͱஔ͖͍͑ͯ͘ʁ ͦΜͳ͜ͱͳ͍ ʮͪΐͬͱػೳՃͯ͠ΈΑ͏ʯΛ go ͰΔͷগ͠େม
ෆ֬ఆཁૉ͕͋Δ࣮ Rails ͕࠷ దࡐదॴ ༷͕มΘΓʹ͘͘յ͍͚ͯ͠ͳ͍ͱ͜ΖGo͕͍͍ ύϑΥʔϚϯεΛٻΊͯ Go ͷϚΠΫϩαʔϏεʹΓग़͢͜ͱ Wantedly Ͱͯ͢Λ Go ͰΔੈքࠓͷॴఆ͍ͯ͠ͳ͍ ᐆດͳΛҰڍʹҾ͖ड͚Δͷ Rails ָ͕ ActiveRecord ͱ rails c ͷੜ࢈ੑ།Ұແೋ Wantedly Go ٕज़എܠ ݕࡧ
©2020 Wantedly, Inc. ͡Ό͋Ͳ͜Ͱ Go ͬͯΔͷʁ
©2020 Wantedly, Inc. ͡Ό͋Ͳ͜Ͱ Go ͬͯΔͷʁ ύϑΥʔϚϯε༏ઌ ΠϯϑϥϨΠϠ ج൫ܥ CLIπʔϧ
api-gateway ݕࡧਪનαʔόʔ υϝΠϯͷநԽ͕ྃ͢Δͱج൫ʹঢ֨͢Δ͜ͱ͕͋Δ ௨ཧ ༑ୡཧ ઃఆཧ ϝʔϧૹ৴ ը૾߹ Ҏલ ruby Ͱॻ͍͍͕ͯͨࠓ go 1 Kubernetes ͱͷ૬ੑ go ͕࠷ڧ
©2020 Wantedly, Inc. Ͳ͏͍ͬͯΖΜͳݴޠͰ։ൃͯ͠Δʁ
©2020 Wantedly, Inc. Ͳ͏͍ͬͯΖΜͳݴޠͰ։ൃͯ͠Δʁ લఏ গͳ͑ͯ͘ΤϯδχΞͷ2ഒͷͷϚΠΫϩαʔϏε͕͋Δ 1ਓͰෳݴޠΛ·͙ͨ͜ͱৗత ଟ͑͘Δͱ4ഒ ج൫ͰͳΜͱ͔͢Δ servicex
֤ݴޠͰڞ௨ͰೖΕ͍ͨػೳ܈ϥΠϒϥϦ ೖΕͨΒࣾنΛউखʹकΕΔ apis protobuf Λதԝूݖతʹཧ εΩʔϚۦಈʹͰ͖ΔͷͰݴޠ·ָ͕ͨ͗
©2020 Wantedly, Inc. ࠓͬͯ΄͍͜͠ͱ Wantedly Go ʹશৼΓ͍ͯ͠ΔձࣾͰͳ͍ Polyglot ͳγεςϜશମΛεέʔϧͤ͞ΔΤϯδχΞ
WANTED ੜ࢈ੑͷRails ύϑΥʔϚϯεͷ Go ػցֶशͷ Python Frontend ͷ Node ٕज़खஈ Techbook ແྉެ։ ݕࡧ GopherୡͱޠΓ·ͤΜ͔ʁ ݕࡧ ʮGo Λ͍͍͔ͨΒʯ Ͱͳ͘ʮGo ͷॴͰγεςϜΛྑ͍ͨ͘͠ʯ ଞͷݴޠͱڧௐ͢Δج൫Λඋͭͭ͠ඞཁͳͱ͜ΖʹͲΜͲΜೖΕ͍ͯ͘