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
800
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.1k
Deploy Flow at Wantedly
potsbo
2
860
Wrap every method with just one line
potsbo
1
4.5k
Zero yen Keyboard
potsbo
6
3.1k
Kube - The core tool at Wantedly
potsbo
1
7.4k
k8s - Kubernetes 8 Factors
potsbo
12
10k
コンテンツ作成に集中するためのプレゼンテーション Tips / Presentation with Confidence
potsbo
7
39k
ConfigMap vs Secret #k8sjp
potsbo
1
1.3k
Microservices on Kubernetes
potsbo
5
11k
Featured
See All Featured
Put a Button on it: Removing Barriers to Going Fast.
kastner
60
3.7k
It's Worth the Effort
3n
184
28k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
4 Signs Your Business is Dying
shpigford
182
22k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
330
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Principles of Awesome APIs and How to Build Them.
keavy
126
17k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
193
16k
Facilitating Awesome Meetings
lara
52
6.2k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
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 ͷॴͰγεςϜΛྑ͍ͨ͘͠ʯ ଞͷݴޠͱڧௐ͢Δج൫Λඋͭͭ͠ඞཁͳͱ͜ΖʹͲΜͲΜೖΕ͍ͯ͘