Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
Go初心者がgoroutineで挑んだFTPプロキシ
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
ryu
July 13, 2019
Programming
2.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Go初心者がgoroutineで挑んだFTPプロキシ
Slide for 2019 Go Conference in Fukuoka
ryu
July 13, 2019
Other Decks in Programming
See All in Programming
Unity6 URPによる海底をテーマにしたVJシステムの解説 | Unity Shader 完全に理解した 勉強会
gam0022
0
370
UnityでSystem.Net.WebSocketsなWebSocketサーバが動かないのでUnity Monoのコードを覗いてみた / about implementing websocket server with unity mono
drumath2237
1
610
Next.js: The final boss of Web Performance
guaca
0
280
dotNET_vulnclicker_intro.pdf
deka_morita
0
140
IBM Bob Dojo #1 仕様駆動開発入門
oniak3ibm
PRO
0
400
Agentic Software Factoryに、すごく賢いIF文を。 / super smart IF statement into the Agentic Software Factory.
rkaga
8
2.3k
個人開発者よ、Honoを使え(おじさんver)
tanahiro2010
2
260
最近”作らせてる” ローカルAIアプリの話
akit37
0
480
機械に任せるテスト、人が見るテスト ⽣成AIで引き直した、運⽤保守フェーズの線引き
dske104
0
190
残高管理から台帳サービスへの進化
artoy
1
200
設計次第でAIコードの読む量は減らせる / designing-for-code-reading
minodriven
35
17k
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
Featured
See All Featured
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
300
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.8k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.5k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
2.2k
Building Applications with DynamoDB
mza
96
7.2k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.7k
Site-Speed That Sticks
csswizardry
13
1.6k
Navigating Weather and Climate Data
rabernat
0
560
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
360
WCS-LA-2024
lcolladotor
0
890
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.4k
Building Flexible Design Systems
yeseniaperezcruz
330
41k
Transcript
(Pॳ৺ऀ͕ ༄ɹ২(.01FQBCP *OD (PSPVUJOFͰΜͩ '51QSPYZ։ൃ
༄ɹ২!IFBU (.0ϖύϘΠϯϑϥΤϯδχΞ ϦϡɹδϯγΫ
झຯंͱ༡Ϳࣄ
None
ೖࣾલ࡞ͬͨͷ
ϩϦϙοϓʁ ʮࠃ࠷େڃͷϨϯλϧαʔόʔαʔϏεʯ
ϩϦϙοϓʂ ݄։࢝ ϨϯλϧαʔόαʔϏε ສਓҎ্ͷ͓٬͞Μ ສҎ্ͷαΠτެ։
ϩϦϙοϓʂͰ͏'51 '51ͷଓ࣌8FCαʔόͷ1VCMJD*1ଓ )PTUVTFSTMPMJQPQKQ *1 )PTUVTFSTMPMJQPQKQ *1 )PTUVTFSTMPMJQPQKQ *1 VTFSTMPMJQPQKQ
$PNNVOJDBUJPO %BUBUSBOTGFS $MJFOU
ϩϦϙοϓʂͰ͏'51 8FCαʔόͷσʔλΛҠઃ͢Δͱ σʔλҠઃ $MJFOU
ϩϦϙοϓʂͰ͏'51 8FCαʔόͷσʔλΛҠઃ͢Δͱ 8FCαʔόΛҠઃͨ͠ΒଓઌมΘΔ $PNNVOJDBUJPO %BUBUSBOTGFS VTFSTMPMJQPQKQ $MJFOU
ͳͥ'51ΛQSPYZ͢Δʁ Ϣʔβͷརศੑ αʔό൪߸ΛѲ͢Δඞཁͳ͍ Ϧιʔεཧ ଞͷ8FCαʔόʹҠઃͯ͠ɺϢʔβʹଓઌมߋͷ௨͕ෆཁ ηΩϡϦςΟʔ 8FCαʔόͷ1VCMJD*1ग़དྷΔ͚ͩด͍ͨ͡ υϝΠϯʹߏΘͣ'514͕༻Մೳ
Q'51հ 6TFS*%Λ,FZͱͯ͠ଓઌΛ୳͢ ΫϥΠΞϯτ͔ΒɺQ'51ࣗମ͕'51αʔόͷΑ͏ʹݟ͑Δ $MJFOU Q'51 $PNNBOE
Q'51հ ̍ηογϣϯ͋ͨΓ̏ͭͷ(PSPVUJOF͕ੜ 64&3\*%^ $NESFBEFS 3FTQPOTFSFBEFS $MJFOUIBOEMFS $POOFDU 3FTQPOTF 3FTQPOTF $PNNBOE
$PNNBOE 3FTQPOTF 3FTQPOTF CVpP $PNNVOJDBUJPO
,FZGFBUVSF $MJFOUͱ'514FSWFSͷύέοτΛಡΉ(PSPVUJOF࣮ߦ
ॳΧφϦΞϦϦʔε
ॳΧφϦΞϦϦʔεࣦഊ
Կ͕ͩͬͨͷ͔ Q'51'51αʔό͔Βͷ3FTQPOTFΛͦͷ··ฦ͢ $NESFBEFS 3FTQPOTFSFBEFS $PNNBOE $PNNBOE 3FTQPOTF 3FTQPOTF CVpP $PNNVOJDBUJPO
σʔλసૹ͕ σʔλଓΫϥΠΞϯτͱ'51αʔό͕ʹଓ͢ΔΈͩͬͨ %BUB$POOFDUUP 1"47SFTQPOTF 1"47SFTQPOTF $MJFOU Q'51
'51αʔό͕ 1SJWBUF*1Λฦͯ͠ଓ͢ΔͨΊ
ਅ໘͗͢Δύλʔϯ ݩଓ*1ͱσʔλଓ*1͕ҧ͏߹ΤϥʔʹͳΔΫϥΠΞϯτ $MJFOU Q'51 &SSPS
͗͢Δύλʔϯ উखʹଓઌͷ*1ΛΓସ͑ΔΫϥΠΞϯτ $MJFOU Q'51 AAߦ͜͏??
ղܾࡦʁ σʔλసૹ1SPYZ͢Δ సૹϞʔυʹΑͬͯ-JTUFOFS%JBMFSΛઃఆͯ͠σʔλΛதܧ %BUB$POOFDUUP 1"47SFTQPOTF 1"47SFTQPOTF $MJFOU
Q'51 %BUB$POOFDUUP
(PSPVUJOF͕૿͑ͨ σʔλసૹΛॲཧ͢ΔͨΊɺ(PSPVUJOFΛՃ 1"47 $NESFBEFS 3FTQPOTFSFBEFS $MJFOUIBOEMFS $POOFDU $MJFOUˠ0SJHJO 0SJHJOˡ$MJFOU %BUBIBOEMFS
1"47 $POOFDU 4FUMJTUFOFS
͓͔͛ͰֶΜٕͩज़ 8SJUFDPOOFDUJPOʹ&P'ΛૹΔํ๏ "DUJWFసૹϞʔυͷͨΊɺTPDLFUSFVTFઃఆํ๏
Ͳ͔͜-FBLͯ͠Δʁ "MMPDBUFETPDLFU͕૿Ճͬ͠ͺͳ͠
1"47 $POOFDU 1"47 $POOFDU 4FUMJTUFOFS -FBLΛ୳ͦ͏ -FBLͲ͜Ͱ͠ΐ͏
$NESFBEFS 3FTQPOTFSFBEFS $MJFOUIBOEMFS $MJFOUˠ0SJHJO 0SJHJOˡ$MJFOU %BUBIBOEMFS
1"47 $POOFDU 1"47 $POOFDU 4FUMJTUFOFS -FBLΛ୳ͦ͏ $MJFOUIBOEMFS
$MJFOUˠ0SJHJO 0SJHJOˡ$MJFOU $NESFBEFS %BUBIBOEMFS 3FTQPOTFSFBEFS
-FBLΛ୳ͦ͏ ෛՙςετ͢Ε-FBLൃੜ͕Θ͔Γ͍͢
-FBLΛ୳ͦ͏ -FBLͨ࣌͠ͷϩά͔ΒॴΛಛఆ $PNNBOESFBE͕-FBL͢Δ߹ͷϩά ਖ਼ৗʹऴྃ͢Δ߹ͷϩά
-FBLΛࢭΊΖʂ
-FBLΛࢭΊΖʂ -JNJUDMJFOUDPNNBOEVOUJMHFUSFTQPOTF ϨεϙϯεΛฦ͢લʹ࣍ͷίϚϯυΛ'51αʔόʹඈ͢ࣄ͕Ͱ͖ͨ ͜ΕʹΑͬͯ'51αʔόͷॲཧ͕ϋϯάʹͳΓɺ)BOEMFS͕σουϩοΫঢ়ଶʹͳΔ
-FBLΛࢭΊΖʂ 'PSMPPQˠ$IBOOFMXBJU 4MFFQͳͲͳ͠ͰGPSMPPQ͠ͳ͕Βঢ়ଶΛͭίʔυɺ ϦιʔεΛٵ͍ࠐΜͰ͠·͏ͷͰϋϯάͷݪҼʹͳΔ
-FBLΛࢭΊΖʂ $PNNBOEMJOFDIFDL ΫϥΠΞϯτ͕ਖ਼͘͠ͳ͍ίϚϯυΛૹΔ͕࣌͋ͬͨ ͜͏͍͏ίϚϯυΛ'51αʔόʹૹͬͯ͠·͏ͱɺॲཧͰ͖ͣϋϯάʹͳΔ
#FGPSF /PX ൺֱ
̎ඖͷΧφϦΞ
̍ϲ݄Ҏ্ͳ͘८ߤத ରΞΧϯτ ΞΧϯτ ಉ࣌ଓ ࠷େDPOOFDUJPOT ̍ଓ DPOOFDUJPOT
·ͩ·ͩमਖ਼த ࠓ#VH-FBLͳͲ͕ݟ͚ͭΒΕΔͷͰɺ13ఏग़͠ͳ͕ΒରԠத
సૹϞʔυผ࣮ Q'51UP'51αʔόͷసૹϞʔυݸผઃఆՄೳ ͜ΕʹΑͬͯɺҎԼͷ̐ͭͷଓέʔε͕ग़དྷΔ "DUJWF5P"DUJWF4FUEJBMFSGPSDMJFOU MJTUFOFSGPSPSJHJO "DUJWF5P1BTTJWF4FUEJBMFSGPSDMJFOUBOEPSJHJO 1BTTJWF5P"DUJWF4FUMJTUFOFSGPSDMJFOUBOEPSJHJO 1BTTJWF501BTTJWF4FUMJTUFOFSGPSDMJFOU EJBMFSGPSPSJHJO
·ͱΊ
։ൃॳ৺ऀͰɺ ӡ༻Ͱ͑Δ'511SPYZ։ൃʹࢀՃͰ͖·ͨ͠ʂ
ܰͯ͘ɺ؆୯ͳ ฒྻॲཧͷ։ൃํ๏͕͔͋ͬͨΒ
(PSPVUJOFศརͰͨ͠ʂ
͔͠͠ɺ Ͳ͔͜-FBL͕ൃੜ͍ͯ͠Δͷ͔͠Ε·ͤΜ
͍ɺ-FBLඞͣ͋Γ·͢ʂ
ࠓݟ͑ͳ͍͕ രʹͳͬͯདྷΔ͔͠Ε·ͤΜ
ͪΌΜͱ%FCVHͯ͠ɺ (PSPVUJOFɺόϯόϯ͍·͠ΐʂ
͋Γ͕ͱ͏͍͟͝·ͨ͠