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
790
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
840
Wrap every method with just one line
potsbo
1
4.4k
Zero yen Keyboard
potsbo
6
3.1k
Kube - The core tool at Wantedly
potsbo
1
7.3k
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
4 Signs Your Business is Dying
shpigford
182
21k
A better future with KSS
kneath
238
17k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Building Applications with DynamoDB
mza
92
6.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.2k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
44
9.4k
Put a Button on it: Removing Barriers to Going Fast.
kastner
59
3.6k
Scaling GitHub
holman
459
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
365
25k
The Pragmatic Product Professional
lauravandoore
32
6.4k
How to Think Like a Performance Engineer
csswizardry
22
1.3k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.2k
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 ͷॴͰγεςϜΛྑ͍ͨ͘͠ʯ ଞͷݴޠͱڧௐ͢Δج൫Λඋͭͭ͠ඞཁͳͱ͜ΖʹͲΜͲΜೖΕ͍ͯ͘