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
840
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
940
Wrap every method with just one line
potsbo
1
4.7k
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
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
[RailsConf 2023] Rails as a piece of cake
palkan
57
5.8k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
18
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.9k
Building Applications with DynamoDB
mza
96
6.6k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.1k
Intergalactic Javascript Robots from Outer Space
tanoku
272
27k
Producing Creativity
orderedlist
PRO
347
40k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
656
61k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
48
9.7k
The Pragmatic Product Professional
lauravandoore
36
6.9k
Why Our Code Smells
bkeepers
PRO
339
57k
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 ͷॴͰγεςϜΛྑ͍ͨ͘͠ʯ ଞͷݴޠͱڧௐ͢Δج൫Λඋͭͭ͠ඞཁͳͱ͜ΖʹͲΜͲΜೖΕ͍ͯ͘