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
850
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
4.4k
Deploy Flow at Wantedly
potsbo
2
960
Wrap every method with just one line
potsbo
1
4.8k
Zero yen Keyboard
potsbo
6
3.2k
Kube - The core tool at Wantedly
potsbo
1
7.8k
k8s - Kubernetes 8 Factors
potsbo
12
11k
コンテンツ作成に集中するためのプレゼンテーション Tips / Presentation with Confidence
potsbo
7
41k
ConfigMap vs Secret #k8sjp
potsbo
1
1.4k
Microservices on Kubernetes
potsbo
5
12k
Featured
See All Featured
Agile that works and the tools we love
rasmusluckow
331
21k
How GitHub (no longer) Works
holman
315
140k
VelocityConf: Rendering Performance Case Studies
addyosmani
332
24k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.7k
Faster Mobile Websites
deanohume
310
31k
Build your cross-platform service in a week with App Engine
jlugia
232
18k
Product Roadmaps are Hard
iamctodd
PRO
54
11k
How STYLIGHT went responsive
nonsquared
100
5.8k
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.7k
Visualization
eitanlees
149
16k
Thoughts on Productivity
jonyablonski
70
4.9k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
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 ͷॴͰγεςϜΛྑ͍ͨ͘͠ʯ ଞͷݴޠͱڧௐ͢Δج൫Λඋͭͭ͠ඞཁͳͱ͜ΖʹͲΜͲΜೖΕ͍ͯ͘