Go: cmd/go: 기본적으둜 ν”Όλ“œλ°± 없이 맀우 느리게 μ΄λ™ν•©λ‹ˆλ‹€.

에 λ§Œλ“  2016λ…„ 11μ›” 17일  Β·  3μ½”λ©˜νŠΈ  Β·  좜처: golang/go

μ–΄λ–€ λ²„μ „μ˜ Goλ₯Ό μ‚¬μš©ν•˜κ³  μžˆμŠ΅λ‹ˆκΉŒ( go version )?

$ go version
go version go1.7.3 darwin/amd64

뭐 ν–ˆμ–΄?

go get λŠ” 기본적으둜 μœ μš©ν•œ ν”Όλ“œλ°±μ΄ μ—†λŠ” 것 κ°™μŠ΅λ‹ˆλ‹€.

μž¬ν˜„ν•˜λ €λ©΄:
go get github.com/die-net/dhtproxy
그러면 μ•½ 10-15λΆ„ λ™μ•ˆ μ •μ§€λ˜λŠ” κ²ƒμœΌλ‘œ λ³΄μž…λ‹ˆλ‹€. ν”Όλ“œλ°±μ΄ μ—†μŠ΅λ‹ˆλ‹€.

κ²°κ΅­ λ‚΄κ°€ ν•  수 μžˆλ‹€λŠ” 것을 μ•Œμ•„ λƒˆμŠ΅λ‹ˆλ‹€.
go get -u -v github.com/die-net/dhtproxy
진행 상황을 보렀면 youtube/vitess κ°€ μ ˆλŒ€μ μœΌλ‘œ κ±°λŒ€ν•˜κΈ° λ•Œλ¬Έμ— 이 λͺ…령은 μ˜μ›νžˆ κ±Έλ¦½λ‹ˆλ‹€.

무엇을 λ³Ό κ²ƒμœΌλ‘œ μ˜ˆμƒν–ˆμŠ΅λ‹ˆκΉŒ?

μΌμ’…μ˜ 진행 ν‘œμ‹œμ€„κ³Ό ν•¨κ»˜ "ν”„λ‘œμ νŠΈ κ°€μ Έμ˜€κΈ°, deps κ°€μ Έμ˜€κΈ°, deps μ„€μΉ˜ λ“±" 라인을 따라 무언가λ₯Ό λ³Ό κ²ƒμœΌλ‘œ μ˜ˆμƒν–ˆμŠ΅λ‹ˆλ‹€.

λŒ€μ‹  무엇을 λ³΄μ•˜μŠ΅λ‹ˆκΉŒ?

아무것도. λ”± 10뢄정도 μ•‰μ•„μžˆμŠ΅λ‹ˆλ‹€. κ³ μž₯λ‚œ 쀄 μ•Œμ•˜μ–΄μš”.

해결책은 λΆ„λͺ…ν•©λ‹ˆλ‹€. 기본적으둜 -v λ₯Ό ν™œμ„±ν™”ν•˜μ‹­μ‹œμ˜€. 기본적으둜 좜λ ₯ 없이 10λΆ„ λ™μ•ˆ ν”„λ‘œμ„ΈμŠ€λ₯Ό μ‹€ν–‰ν•˜λŠ” 것은 λ”μ°ν•œ CLI λ””μžμΈμž…λ‹ˆλ‹€. κ·Έλƒ₯ κ³ μž₯λ‚œ 것 κ°™μŠ΅λ‹ˆλ‹€.

FrozenDueToAge

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

침묡의 κ·œμΉ™μ€ 였λ₯˜κ°€ μžˆκ±°λ‚˜ 좜λ ₯이 νŠΉλ³„νžˆ μš”μ²­λ˜μ§€ μ•ŠλŠ” ν•œ ν”„λ‘œκ·Έλž¨μ΄ μ ˆλŒ€μ μœΌλ‘œ 침묡해야 ν•œλ‹€λŠ” 것이 μ•„λ‹ˆλΌ ν”„λ‘œκ·Έλž¨μ΄ λΆˆν•„μš”ν•˜κ²Œ 좜λ ₯λ˜μ–΄μ„œλŠ” μ•ˆ λœλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. 15뢄이 μ†Œμš”λ˜λŠ” ν”„λ‘œμ„ΈμŠ€κ°€ μ€‘λ‹¨λ˜μ§€ μ•Šμ•˜λ‹€λŠ” ν”Όλ“œλ°±μ„ κ°μ•ˆν•  λ•Œ μ‹€μ œλ‘œλŠ” 쒋은 CLI λ””μžμΈμž…λ‹ˆλ‹€.

참고둜 λ‚΄κ°€ ν…ŒμŠ€νŠΈν•œ λ‹€λ₯Έ νŒ¨ν‚€μ§€ κ΄€λ¦¬μžλŠ” 기본적으둜 λ¬΄μŒμž…λ‹ˆλ‹€.

$ pip install test
Collecting test
  Downloading test-2.3.4.5.tar.gz
Building wheels for collected packages: test
  Running setup.py bdist_wheel for test ... done
  Stored in directory: /Users/rjones/Library/Caches/pip/wheels/0e/83/0d/f0f92214b5cce4bcbce4958ddacebf926e1c54c8445f0ba167
Successfully built test
Installing collected packages: test
Successfully installed test-2.3.4.5
$ npm install test
/tmp/
└─┬ [email protected] 
  └── [email protected] 

( npm μ—λŠ” 이 κΈ°λŠ₯에 λŒ€ν•œ --silent ν”Œλž˜κ·Έκ°€ μžˆμŠ΅λ‹ˆλ‹€.)

$ brew install test
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core, homebrew/versions).
==> New Formulae
homebrew/versions/postgresql95
==> Updated Formulae
ruby βœ”                                                                          tig                                                                             tile38
==> Deleted Formulae
homebrew/versions/postgresql93

Error: No available formula with the name "test" 
==> Searching for similarly named formulae...
These similarly named formulae were found:
cpptest                   cxxtest                   gjstest                   homebrew/science/swetest  memtester                 slowhttptest              testdisk                  unittest                  vttest
cpputest                  git-test                  homebrew/games/minetest   js-test-driver            phoronix-test-suite       speedtest_cli             testssl                   unittest-cpp
To install one of them, run (for example):
  brew install cpptest
==> Searching taps...
These formulae were found in taps:
homebrew/completions/ctest-completion                       Caskroom/cask/aja-system-test                               Caskroom/cask/nsregextester                                 Caskroom/versions/emacs-pretest
homebrew/emacs/test-simple                                  Caskroom/cask/colortester                                   Caskroom/cask/sqlitestudio
To install one of them, run (for example):
  brew install homebrew/completions/ctest-completion

λ“±.

"μœ λ‹‰μŠ€μ΄κΈ° λ•Œλ¬Έμ—"라고 λ§ν•˜λŠ” 것은 λ‹€μ†Œ μ •μ§ν•˜μ§€ μ•Šλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μž₯κΈ° μ‹€ν–‰ μž‘μ—…μ΄ μžˆλŠ” Unix ν”„λ‘œκ·Έλž¨μ— 진행λ₯  ν‘œμ‹œμ€„μ΄ μžˆλŠ” 것은 _맀우_ μΌλ°˜μ μž…λ‹ˆλ‹€. rsync, wget, git 등을 μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€.

여기에 진행λ₯  ν‘œμ‹œμ€„μ΄ μ—†μœΌλ©΄ μ–΄λ–€ 이점이 μžˆμŠ΅λ‹ˆκΉŒ? "μ™„μ „νžˆ 망가진 κ²ƒμ²˜λŸΌ 보이지 μ•ŠλŠ”" 이점이 "ν”Όλ“œλ°±μ„ μ‹«μ–΄ν•˜κ³  --silent μ‚¬μš©μ„ κ±°λΆ€ν•˜λŠ” μ†Œμˆ˜μ˜ μ‚¬μš©μžλ₯Ό μ„±κ°€μ‹œκ²Œ ν•˜μ§€ μ•ŠλŠ”" 이점보닀 훨씬 더 큰 것 κ°™μŠ΅λ‹ˆλ‹€.

λͺ¨λ“  3 λŒ“κΈ€

이것이 Unix λ°©μ‹μž…λ‹ˆλ‹€. μžμ„Έν•œ 정보가 μš”μ²­λ˜κ±°λ‚˜ 였λ₯˜κ°€ μ—†λŠ” ν•œ 기본적으둜 μ‘°μš©ν•©λ‹ˆλ‹€.

λ‚˜λŠ” 이것이 μš°λ¦¬κ°€ λ°”κΏ€ 것이라고 μƒκ°ν•˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. 더 λ§Žμ€ μ‚¬λžŒλ“€μ΄ 기본적으둜 슀팸(-v)으둜 κ°„μ£Όν•˜λŠ” 것에 λ°˜λŒ€ν•  κ²ƒμž…λ‹ˆλ‹€.

침묡의 κ·œμΉ™μ€ 였λ₯˜κ°€ μžˆκ±°λ‚˜ 좜λ ₯이 νŠΉλ³„νžˆ μš”μ²­λ˜μ§€ μ•ŠλŠ” ν•œ ν”„λ‘œκ·Έλž¨μ΄ μ ˆλŒ€μ μœΌλ‘œ 침묡해야 ν•œλ‹€λŠ” 것이 μ•„λ‹ˆλΌ ν”„λ‘œκ·Έλž¨μ΄ λΆˆν•„μš”ν•˜κ²Œ 좜λ ₯λ˜μ–΄μ„œλŠ” μ•ˆ λœλ‹€λŠ” κ²ƒμž…λ‹ˆλ‹€. 15뢄이 μ†Œμš”λ˜λŠ” ν”„λ‘œμ„ΈμŠ€κ°€ μ€‘λ‹¨λ˜μ§€ μ•Šμ•˜λ‹€λŠ” ν”Όλ“œλ°±μ„ κ°μ•ˆν•  λ•Œ μ‹€μ œλ‘œλŠ” 쒋은 CLI λ””μžμΈμž…λ‹ˆλ‹€.

참고둜 λ‚΄κ°€ ν…ŒμŠ€νŠΈν•œ λ‹€λ₯Έ νŒ¨ν‚€μ§€ κ΄€λ¦¬μžλŠ” 기본적으둜 λ¬΄μŒμž…λ‹ˆλ‹€.

$ pip install test
Collecting test
  Downloading test-2.3.4.5.tar.gz
Building wheels for collected packages: test
  Running setup.py bdist_wheel for test ... done
  Stored in directory: /Users/rjones/Library/Caches/pip/wheels/0e/83/0d/f0f92214b5cce4bcbce4958ddacebf926e1c54c8445f0ba167
Successfully built test
Installing collected packages: test
Successfully installed test-2.3.4.5
$ npm install test
/tmp/
└─┬ [email protected] 
  └── [email protected] 

( npm μ—λŠ” 이 κΈ°λŠ₯에 λŒ€ν•œ --silent ν”Œλž˜κ·Έκ°€ μžˆμŠ΅λ‹ˆλ‹€.)

$ brew install test
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 2 taps (homebrew/core, homebrew/versions).
==> New Formulae
homebrew/versions/postgresql95
==> Updated Formulae
ruby βœ”                                                                          tig                                                                             tile38
==> Deleted Formulae
homebrew/versions/postgresql93

Error: No available formula with the name "test" 
==> Searching for similarly named formulae...
These similarly named formulae were found:
cpptest                   cxxtest                   gjstest                   homebrew/science/swetest  memtester                 slowhttptest              testdisk                  unittest                  vttest
cpputest                  git-test                  homebrew/games/minetest   js-test-driver            phoronix-test-suite       speedtest_cli             testssl                   unittest-cpp
To install one of them, run (for example):
  brew install cpptest
==> Searching taps...
These formulae were found in taps:
homebrew/completions/ctest-completion                       Caskroom/cask/aja-system-test                               Caskroom/cask/nsregextester                                 Caskroom/versions/emacs-pretest
homebrew/emacs/test-simple                                  Caskroom/cask/colortester                                   Caskroom/cask/sqlitestudio
To install one of them, run (for example):
  brew install homebrew/completions/ctest-completion

λ“±.

"μœ λ‹‰μŠ€μ΄κΈ° λ•Œλ¬Έμ—"라고 λ§ν•˜λŠ” 것은 λ‹€μ†Œ μ •μ§ν•˜μ§€ μ•Šλ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. μž₯κΈ° μ‹€ν–‰ μž‘μ—…μ΄ μžˆλŠ” Unix ν”„λ‘œκ·Έλž¨μ— 진행λ₯  ν‘œμ‹œμ€„μ΄ μžˆλŠ” 것은 _맀우_ μΌλ°˜μ μž…λ‹ˆλ‹€. rsync, wget, git 등을 μ°Έμ‘°ν•˜μ‹­μ‹œμ˜€.

여기에 진행λ₯  ν‘œμ‹œμ€„μ΄ μ—†μœΌλ©΄ μ–΄λ–€ 이점이 μžˆμŠ΅λ‹ˆκΉŒ? "μ™„μ „νžˆ 망가진 κ²ƒμ²˜λŸΌ 보이지 μ•ŠλŠ”" 이점이 "ν”Όλ“œλ°±μ„ μ‹«μ–΄ν•˜κ³  --silent μ‚¬μš©μ„ κ±°λΆ€ν•˜λŠ” μ†Œμˆ˜μ˜ μ‚¬μš©μžλ₯Ό μ„±κ°€μ‹œκ²Œ ν•˜μ§€ μ•ŠλŠ”" 이점보닀 훨씬 더 큰 것 κ°™μŠ΅λ‹ˆλ‹€.

μ–ΈκΈ‰ν•œ νŒ¨ν‚€μ§€ κ΄€λ¦¬μžκ°€ 쒋은 예라고 μƒκ°ν•˜μ§€ μ•Šμ§€λ§Œ(항상 λ„ˆλ¬΄ μ‹œλ„λŸ½μŠ΅λ‹ˆλ‹€) go get λŒ€ν•œ 일뢀 진행λ₯  ν‘œμ‹œκ°€ λ‚˜μ  수 μ—†λ‹€λŠ” 데 λ™μ˜ν•©λ‹ˆλ‹€. . 특히 GitHubλŠ” 볡제 속도가 λ‹€μ†Œ 느리고 전체 λŸ°νƒ€μž„μ€ 쒅속성 μˆ˜μ— 따라 달라지며 μ΄λŠ” μ‚¬μš©μžμ—κ²Œ 사전에 λͺ…ν™•ν•˜μ§€ μ•Šκ±°λ‚˜ μ•Œλ €μ§€μ§€ μ•ŠμœΌλ―€λ‘œ -v λ₯Ό μ‚¬μš©ν•˜κΈ°λ‘œ 적극적으둜 κ²°μ •ν•΄μ•Ό ν•˜λŠ” 것은 μ•„λ‹™λ‹ˆλ‹€. 정말 ν›Œλ₯­ν•œ μ†”λ£¨μ…˜μž…λ‹ˆλ‹€.

이제 진행λ₯  ν‘œμ‹œμ€„μ€ μ˜΅μ…˜μ΄ μ•„λ‹™λ‹ˆλ‹€. 기본적으둜 λ„ˆλ¬΄ μ‹œλ„λŸ½κ³  λͺ¨λ“  VCSκ°€ 기본적으둜 진행λ₯  ν‘œμ‹œμ€„μ„ μ§€μ›ν•˜λŠ” 것은 μ•„λ‹™λ‹ˆλ‹€. 기본적으둜 -v λ₯Ό ν™œμ„±ν™”ν•˜λŠ” 것도 λ„ˆλ¬΄ μ‹œλ„λŸ½μŠ΅λ‹ˆλ‹€.

λΆˆν–‰νžˆλ„ λ‚˜λŠ” μ‹œλ„λŸ½μ§€ μ•Šκ³  λ™μ‹œμ— ν•„μš”ν•  λ•Œ μΆ©λΆ„ν•œ 정보λ₯Ό μ œκ³΅ν•˜λŠ” λ©”μ»€λ‹ˆμ¦˜μ„ 생각할 수 μ—†μŠ΅λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰