[แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜] Envoy threading แƒ›แƒแƒ“แƒ”แƒšแƒ˜

แƒกแƒขแƒแƒขแƒ˜แƒ˜แƒก แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜: Envoy threading แƒ›แƒแƒ“แƒ”แƒšแƒ˜ - https://blog.envoyproxy.io/envoy-threading-model-a8d44b922310

แƒ›แƒ” แƒ”แƒก แƒกแƒขแƒแƒขแƒ˜แƒ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒกแƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒ แƒ›แƒ”แƒฉแƒ•แƒ”แƒœแƒ แƒ“แƒ แƒ แƒแƒ“แƒ’แƒแƒœ Envoy แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒฎแƒจแƒ˜แƒ แƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ แƒแƒ’แƒแƒ แƒช "istio"-แƒก แƒœแƒแƒฌแƒ˜แƒšแƒ˜ แƒแƒœ แƒฃแƒ‘แƒ แƒแƒšแƒแƒ“, แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒฃแƒ‘แƒ”แƒ แƒœแƒ”แƒขแƒ”แƒ‘แƒ˜แƒก "แƒจแƒ”แƒกแƒ•แƒšแƒ˜แƒก แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ แƒ˜", แƒแƒ“แƒแƒ›แƒ˜แƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒแƒก แƒแƒ  แƒแƒฅแƒ•แƒก แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒžแƒ˜แƒ แƒ“แƒแƒžแƒ˜แƒ แƒ˜ แƒฃแƒ แƒ—แƒ˜แƒ”แƒ แƒ—แƒฅแƒ›แƒ”แƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒกแƒ—แƒแƒœ, แƒ แƒแƒ’แƒแƒ แƒช, แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒแƒ“, แƒขแƒ˜แƒžแƒฃแƒ แƒ—แƒแƒœ. Nginx แƒแƒœ Haproxy แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ”แƒ‘แƒ˜. แƒ—แƒฃแƒ›แƒชแƒ, แƒ—แƒฃ แƒ แƒแƒ›แƒ” แƒ’แƒแƒขแƒงแƒ“แƒ”แƒ‘แƒ, แƒ™แƒแƒ แƒ’แƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ’แƒ”แƒ‘แƒ, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒจแƒ˜แƒ’แƒœแƒ˜แƒ“แƒแƒœ. แƒ•แƒชแƒ“แƒ˜แƒšแƒแƒ‘แƒ“แƒ˜ แƒ แƒแƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ›แƒ”แƒขแƒ˜ แƒขแƒ”แƒฅแƒกแƒขแƒ˜ แƒ›แƒ”แƒ—แƒแƒ แƒ’แƒ›แƒœแƒ แƒ แƒฃแƒกแƒฃแƒšแƒแƒ“, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒกแƒžแƒ”แƒชแƒ˜แƒแƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒขแƒงแƒ•แƒ”แƒ‘แƒ˜แƒช; แƒ›แƒแƒ—แƒ—แƒ•แƒ˜แƒก, แƒ•แƒ˜แƒกแƒแƒช แƒแƒ›แƒ˜แƒก แƒงแƒฃแƒ แƒ”แƒ‘แƒ แƒ›แƒขแƒ™แƒ˜แƒ•แƒœแƒ”แƒฃแƒšแƒ˜แƒ, แƒแƒ แƒ˜แƒ’แƒ˜แƒœแƒแƒšแƒ”แƒ‘แƒ˜ แƒคแƒ แƒฉแƒฎแƒ˜แƒšแƒ”แƒ‘แƒจแƒ˜ แƒ“แƒแƒ•แƒขแƒแƒ•แƒ”. แƒ™แƒ”แƒ—แƒ˜แƒšแƒ˜ แƒ˜แƒงแƒแƒก แƒ—แƒฅแƒ•แƒ”แƒœแƒ˜ แƒ›แƒแƒ‘แƒ แƒซแƒแƒœแƒ”แƒ‘แƒ แƒ™แƒแƒขแƒแƒจแƒ˜.

แƒ“แƒแƒ‘แƒแƒšแƒ˜ แƒ“แƒแƒœแƒ˜แƒก แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ“แƒแƒ™แƒฃแƒ›แƒ”แƒœแƒขแƒแƒชแƒ˜แƒ Envoy แƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒ‘แƒแƒ–แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ›แƒฌแƒ˜แƒ แƒ˜แƒ. แƒแƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒแƒกแƒแƒกแƒฌแƒแƒ แƒ”แƒ‘แƒšแƒแƒ“ แƒ•แƒ’แƒ”แƒ’แƒ›แƒแƒ• แƒ‘แƒšแƒแƒ’ แƒžแƒแƒกแƒขแƒ”แƒ‘แƒ˜แƒก แƒกแƒ”แƒ แƒ˜แƒ˜แƒก แƒ’แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒแƒก Envoy-แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒฅแƒ•แƒ”แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘. แƒ แƒแƒ“แƒ’แƒแƒœ แƒ”แƒก แƒžแƒ˜แƒ แƒ•แƒ”แƒšแƒ˜ แƒกแƒขแƒแƒขแƒ˜แƒแƒ, แƒ’แƒ—แƒฎแƒแƒ•แƒ—, แƒ’แƒแƒ›แƒแƒ’แƒ”แƒ‘แƒ˜แƒœแƒแƒ— แƒ แƒแƒก แƒคแƒ˜แƒฅแƒ แƒแƒ‘แƒ— แƒ“แƒ แƒ แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ’แƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒแƒ— แƒ›แƒแƒ›แƒแƒ•แƒแƒš แƒกแƒขแƒแƒขแƒ˜แƒ”แƒ‘แƒจแƒ˜.

แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒงแƒ•แƒ”แƒšแƒแƒ–แƒ” แƒ’แƒแƒ•แƒ แƒชแƒ”แƒšแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒ˜ แƒ™แƒ˜แƒ—แƒฎแƒ•แƒ, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ›แƒ” แƒ•แƒ˜แƒฆแƒ”แƒ‘ Envoy-แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘, แƒแƒ แƒ˜แƒก แƒ˜แƒก, แƒ แƒแƒ› แƒ•แƒ˜แƒ—แƒฎแƒแƒ•แƒ แƒ“แƒแƒ‘แƒแƒšแƒ˜ แƒ“แƒแƒœแƒ˜แƒก แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒแƒ‘แƒแƒก แƒ›แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ“แƒ”แƒšแƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘. แƒแƒ› แƒžแƒแƒกแƒขแƒจแƒ˜ แƒ›แƒ” แƒแƒฆแƒ•แƒฌแƒ”แƒ , แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒแƒกแƒแƒฎแƒแƒ•แƒก Envoy แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒก แƒซแƒแƒคแƒ”แƒ‘แƒ—แƒแƒœ, แƒ˜แƒกแƒ”แƒ•แƒ” แƒ แƒแƒ’แƒแƒ แƒช Thread Local Storage แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช แƒ˜แƒ’แƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒจแƒ˜แƒ“แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒฃแƒคแƒ แƒ แƒžแƒแƒ แƒแƒšแƒ”แƒšแƒฃแƒ แƒ˜ แƒ“แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒฎแƒแƒ แƒ˜แƒกแƒฎแƒ˜แƒก แƒ’แƒแƒกแƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒšแƒแƒ“.

Threading แƒ›แƒ˜แƒ›แƒแƒฎแƒ˜แƒšแƒ•แƒ

[แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜] Envoy threading แƒ›แƒแƒ“แƒ”แƒšแƒ˜

Envoy แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒกแƒแƒ› แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒขแƒ˜แƒžแƒ˜แƒก แƒœแƒแƒ™แƒแƒ“แƒก:

  • แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜: แƒ”แƒก แƒ—แƒ”แƒ›แƒ แƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ”แƒ‘แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒ“แƒแƒฌแƒงแƒ”แƒ‘แƒแƒก แƒ“แƒ แƒจแƒ”แƒฌแƒงแƒ•แƒ”แƒขแƒแƒก, XDS (xDiscovery Service) API-แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒก, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก DNS-แƒก, แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒแƒก, แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ›แƒ”แƒœแƒขแƒก, แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒแƒก, แƒแƒ“แƒ›แƒ˜แƒœแƒ˜แƒกแƒขแƒ แƒ˜แƒ แƒ”แƒ‘แƒแƒก แƒ“แƒ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒ–แƒแƒ’แƒแƒ“ แƒ›แƒแƒ แƒ—แƒ•แƒแƒก - Linux แƒกแƒ˜แƒ’แƒœแƒแƒšแƒ”แƒ‘แƒก. แƒชแƒฎแƒ”แƒšแƒ˜ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ แƒ“แƒ แƒ.แƒจ. แƒฎแƒ“แƒ”แƒ‘แƒ แƒแƒ› แƒ—แƒ”แƒ›แƒแƒจแƒ˜ แƒแƒ แƒ˜แƒก แƒแƒกแƒ˜แƒœแƒฅแƒ แƒแƒœแƒฃแƒšแƒ˜ แƒ“แƒ "แƒแƒ แƒแƒ‘แƒšแƒแƒ™แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜". แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒ—แƒ”แƒ›แƒ แƒ™แƒแƒแƒ แƒ“แƒ˜แƒœแƒแƒชแƒ˜แƒแƒก แƒฃแƒฌแƒ”แƒ•แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒ แƒ˜แƒขแƒ˜แƒ™แƒฃแƒš แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒแƒšแƒฃแƒ  แƒžแƒ แƒแƒชแƒ”แƒกแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒก แƒ“แƒ˜แƒ“แƒ˜ แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒ— CPU-แƒก แƒ’แƒแƒกแƒแƒจแƒ•แƒ”แƒ‘แƒแƒ“. แƒ”แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒกแƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒ™แƒแƒ“แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒแƒก แƒ“แƒแƒ˜แƒฌแƒ”แƒ แƒแƒก แƒ˜แƒกแƒ”, แƒ—แƒ˜แƒ—แƒฅแƒแƒก แƒ”แƒก แƒ˜แƒงแƒแƒก แƒ”แƒ แƒ—แƒ˜ แƒฎแƒ แƒแƒฎแƒœแƒ˜แƒแƒœแƒ˜.
  • แƒ—แƒแƒœแƒแƒ›แƒจแƒ แƒแƒ›แƒ”แƒšแƒ˜: แƒœแƒแƒ’แƒฃแƒšแƒ˜แƒกแƒฎแƒ›แƒ”แƒ•แƒแƒ“, Envoy แƒฅแƒ›แƒœแƒ˜แƒก แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒ˜แƒก แƒซแƒแƒคแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ”แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ“แƒ”แƒ‘แƒแƒ“แƒ”แƒก แƒแƒคแƒชแƒ˜แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ— --concurrency. แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒ แƒแƒฌแƒแƒ แƒ›แƒแƒ”แƒ‘แƒก โ€žแƒแƒ แƒแƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒ˜แƒกโ€œ แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ˜แƒก แƒชแƒ˜แƒ™แƒšแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒžแƒแƒกแƒฃแƒฎแƒ˜แƒกแƒ›แƒ’แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒกแƒ›แƒ”แƒœแƒ”แƒšแƒ˜แƒก แƒ›แƒแƒกแƒ›แƒ”แƒœแƒแƒ–แƒ”; แƒฌแƒ”แƒ แƒ˜แƒก แƒ“แƒ แƒแƒก (29 แƒฌแƒšแƒ˜แƒก 2017 แƒ˜แƒ•แƒšแƒ˜แƒกแƒ˜) แƒแƒ  แƒฎแƒ“แƒ”แƒ‘แƒ แƒ›แƒกแƒ›แƒ”แƒœแƒ”แƒšแƒ˜แƒก แƒ’แƒแƒœแƒแƒฌแƒ˜แƒšแƒ”แƒ‘แƒ, แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒ, แƒคแƒ˜แƒšแƒขแƒ แƒ˜แƒก แƒ“แƒแƒกแƒขแƒแƒก แƒ˜แƒœแƒกแƒขแƒแƒšแƒแƒชแƒ˜แƒ. แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜ แƒ“แƒ แƒงแƒ•แƒ”แƒšแƒ แƒจแƒ”แƒ›แƒแƒ•แƒแƒšแƒ˜/แƒ’แƒแƒ›แƒแƒ›แƒแƒ•แƒแƒšแƒ˜ (IO) แƒแƒžแƒ”แƒ แƒแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒกแƒ˜แƒชแƒแƒชแƒฎแƒšแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜. แƒ™แƒ˜แƒ“แƒ”แƒ• แƒ”แƒ แƒ—แƒฎแƒ”แƒš, แƒ”แƒก แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒก แƒ™แƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒแƒก แƒ“แƒแƒ˜แƒฌแƒ”แƒ แƒแƒก แƒ˜แƒกแƒ”, แƒ—แƒ˜แƒ—แƒฅแƒแƒก แƒ”แƒก แƒ˜แƒงแƒแƒก แƒ”แƒ แƒ—แƒ˜ แƒฎแƒ แƒแƒฎแƒœแƒ˜แƒแƒœแƒ˜.
  • แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒฌแƒ›แƒ”แƒœแƒ“แƒ˜: แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒคแƒแƒ˜แƒšแƒก, แƒ แƒแƒ›แƒ”แƒšแƒกแƒแƒช Envoy แƒฌแƒ”แƒ แƒก, แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒแƒ“ แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒ”แƒ‘แƒก, แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒแƒฅแƒ•แƒก แƒ“แƒแƒ›แƒแƒฃแƒ™แƒ˜แƒ“แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒ‘แƒšแƒแƒ™แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ—แƒ”แƒ›แƒ. แƒ”แƒก แƒ’แƒแƒ›แƒแƒฌแƒ•แƒ”แƒฃแƒšแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒ—, แƒ แƒแƒ› แƒคแƒแƒ˜แƒšแƒฃแƒ แƒ˜ แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒ›แƒ˜แƒ”แƒ  แƒฅแƒ”แƒจแƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒฉแƒแƒฌแƒ”แƒ แƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒกแƒแƒช แƒ™แƒ˜ O_NONBLOCK แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒ“แƒแƒ‘แƒšแƒแƒ™แƒแƒก (แƒ™แƒ•แƒœแƒ”แƒกแƒ). แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒคแƒแƒ˜แƒšแƒจแƒ˜ แƒฉแƒแƒฌแƒ”แƒ แƒ, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒ’แƒแƒ“แƒแƒ˜แƒœแƒแƒชแƒ•แƒšแƒ”แƒ‘แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ‘แƒฃแƒคแƒ”แƒ แƒจแƒ˜, แƒกแƒแƒ“แƒแƒช แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒ˜แƒจแƒšแƒ”แƒ‘แƒ แƒซแƒแƒคแƒจแƒ˜. แƒฉแƒแƒ›แƒแƒ˜แƒ‘แƒแƒœแƒ”แƒ—. แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ™แƒแƒ“แƒ˜แƒก แƒ”แƒ แƒ—แƒ˜ แƒกแƒคแƒ”แƒ แƒ, แƒกแƒแƒ“แƒแƒช แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒแƒ“ แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒ“แƒแƒ‘แƒšแƒแƒ™แƒแƒก แƒ”แƒ แƒ—แƒ˜ แƒ“แƒ แƒ˜แƒ’แƒ˜แƒ•แƒ” แƒกแƒแƒ™แƒ”แƒขแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ‘แƒฃแƒคแƒ”แƒ แƒ˜แƒก แƒจแƒ”แƒ•แƒกแƒ”แƒ‘แƒ˜แƒก แƒ›แƒชแƒ“แƒ”แƒšแƒแƒ‘แƒ˜แƒกแƒแƒก.

แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ

แƒ แƒแƒ’แƒแƒ แƒช แƒ–แƒ”แƒ›แƒแƒ— แƒ’แƒแƒœแƒ•แƒ˜แƒฎแƒ˜แƒšแƒ”แƒ— แƒ›แƒแƒ™แƒšแƒ”แƒ“, แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒ แƒฃแƒกแƒ›แƒ”แƒœแƒก แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒกแƒ›แƒ”แƒœแƒ”แƒšแƒก แƒงแƒแƒ•แƒ”แƒšแƒ’แƒ•แƒแƒ แƒ˜ แƒ“แƒแƒจแƒšแƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”. แƒแƒ›แƒ แƒ˜แƒ’แƒแƒ“, แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ˜ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ–แƒ” แƒ›แƒ˜แƒฆแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒกแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜แƒก แƒ’แƒ แƒแƒชแƒ˜แƒแƒ–แƒฃแƒšแƒแƒ“ แƒ’แƒแƒกแƒแƒ’แƒ–แƒแƒ•แƒœแƒแƒ“. แƒ—แƒแƒœแƒแƒ›แƒ”แƒ“แƒ แƒแƒ•แƒ” แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ”แƒ‘แƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒฌแƒ”แƒกแƒ˜, แƒซแƒแƒšแƒ˜แƒแƒœ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒแƒ แƒ˜แƒแƒœ แƒแƒ›แƒแƒจแƒ˜, แƒ˜แƒกแƒ˜แƒœแƒ˜ แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒก, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ แƒจแƒ”แƒงแƒ•แƒแƒœแƒ˜แƒก/แƒ’แƒแƒ›แƒแƒกแƒ•แƒšแƒ˜แƒก (IO) แƒžแƒ แƒ˜แƒแƒ แƒ˜แƒขแƒ”แƒขแƒ˜แƒก แƒ’แƒแƒซแƒšแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ, แƒ แƒแƒ—แƒ แƒจแƒ”แƒแƒ•แƒกแƒแƒœ แƒ—แƒ”แƒ›แƒ แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒ—แƒ˜, แƒกแƒแƒœแƒแƒ› แƒ“แƒแƒ˜แƒฌแƒงแƒ”แƒ‘แƒ”แƒœ แƒกแƒฎแƒ•แƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒแƒกแƒ”แƒ•แƒ” แƒฃแƒกแƒ›แƒ”แƒœแƒ”แƒœ แƒ˜แƒ›แƒแƒ•แƒ” แƒกแƒแƒ™แƒ”แƒขแƒก, แƒ“แƒ แƒแƒกแƒ”แƒ•แƒ” แƒแƒ  แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ แƒ›แƒ แƒ’แƒ•แƒแƒš แƒ แƒแƒ‘แƒ˜แƒœแƒก. แƒฉแƒแƒ™แƒ”แƒขแƒ•แƒ (Spinlock) แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒก แƒ“แƒแƒกแƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒšแƒแƒ“.
แƒ แƒแƒ’แƒแƒ แƒช แƒ™แƒ˜ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜ แƒ›แƒ˜แƒ˜แƒฆแƒ”แƒ‘แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ–แƒ”, แƒ˜แƒก แƒแƒ แƒแƒกแƒแƒ“แƒ”แƒก แƒขแƒแƒ•แƒ”แƒ‘แƒก แƒแƒ› แƒ—แƒ”แƒ›แƒแƒก. แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒจแƒ”แƒ›แƒ“แƒ’แƒแƒ›แƒ˜ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒแƒ“ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒ‘แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒจแƒ˜, แƒ›แƒแƒ— แƒจแƒแƒ แƒ˜แƒก แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒ˜แƒก แƒฅแƒชแƒ”แƒ•แƒ.

แƒแƒ›แƒแƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜ แƒแƒฅแƒ•แƒก:

  • แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒแƒฃแƒ–แƒ˜ Envoy-แƒจแƒ˜ แƒ›แƒ˜แƒœแƒ˜แƒญแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ–แƒ”. แƒแƒกแƒ” แƒ แƒแƒ›, แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› HTTP/2 แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒแƒฃแƒ–แƒ”แƒ‘แƒ˜ แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ”แƒœ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ”แƒ แƒ— แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ–แƒ”แƒ›แƒแƒ แƒ”แƒฃแƒš แƒฐแƒแƒกแƒขแƒ—แƒแƒœ แƒ”แƒ แƒ—แƒ“แƒ แƒแƒฃแƒšแƒแƒ“, แƒ—แƒฃ แƒแƒ แƒ˜แƒก แƒแƒ—แƒฎแƒ˜ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜, แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒ—แƒฎแƒ˜ HTTP/2 แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜ แƒ—แƒ˜แƒ—แƒ แƒ–แƒ”แƒ›แƒแƒ แƒ” แƒฐแƒแƒกแƒขแƒ–แƒ” แƒกแƒขแƒแƒ‘แƒ˜แƒšแƒฃแƒ  แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒแƒจแƒ˜.
  • แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜, แƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒช Envoy แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒแƒ› แƒ’แƒ–แƒ˜แƒ—, แƒแƒ แƒ˜แƒก แƒ˜แƒก, แƒ แƒแƒ› แƒงแƒ•แƒ”แƒšแƒแƒคแƒ แƒ˜แƒก แƒ”แƒ แƒ— แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒแƒจแƒ˜ แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ˜แƒ—, แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒแƒ“แƒ˜ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ˜แƒฌแƒ”แƒ แƒแƒก แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” แƒ“แƒ แƒ—แƒ˜แƒ—แƒฅแƒแƒก แƒ”แƒ แƒ—แƒ˜ แƒœแƒแƒ™แƒแƒ“แƒ˜ แƒ˜แƒงแƒแƒก. แƒ”แƒก แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜ แƒแƒแƒ“แƒ•แƒ˜แƒšแƒ”แƒ‘แƒก แƒ‘แƒ”แƒ•แƒ แƒ˜ แƒ™แƒแƒ“แƒ˜แƒก แƒ“แƒแƒฌแƒ”แƒ แƒแƒก แƒ“แƒ แƒฌแƒแƒ แƒ›แƒแƒฃแƒ“แƒ’แƒ”แƒœแƒšแƒแƒ“ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒ›แƒแƒกแƒจแƒขแƒแƒ‘แƒ”แƒ‘แƒก แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒ—แƒ˜แƒ—แƒฅแƒ›แƒ˜แƒก แƒจแƒ”แƒฃแƒ–แƒฆแƒฃแƒ“แƒแƒ•แƒ˜ แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ˜แƒ—.
  • แƒ—แƒฃแƒ›แƒชแƒ, แƒ”แƒ แƒ—-แƒ”แƒ แƒ—แƒ˜ แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒœแƒแƒ‘แƒ˜แƒฏแƒ˜ แƒแƒ แƒ˜แƒก แƒ˜แƒก, แƒ แƒแƒ› แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒแƒฃแƒ–แƒ˜แƒกแƒ แƒ“แƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒแƒ‘แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ—, แƒ แƒ”แƒแƒšแƒฃแƒ แƒแƒ“ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜แƒ แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒแƒชแƒ˜แƒ. --concurrency. แƒกแƒแƒญแƒ˜แƒ แƒแƒ–แƒ” แƒ›แƒ”แƒขแƒ˜ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒฅแƒแƒœแƒ แƒ“แƒแƒ™แƒแƒ แƒ’แƒแƒ•แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒแƒก, แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒก แƒ›แƒ”แƒข แƒฃแƒ›แƒแƒฅแƒ›แƒ”แƒ“แƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒก แƒ“แƒ แƒจแƒ”แƒแƒ›แƒชแƒ˜แƒ แƒ”แƒ‘แƒก แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ’แƒแƒ”แƒ แƒ—แƒ˜แƒแƒœแƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒฉแƒฅแƒแƒ แƒ”แƒก. Lyft-แƒจแƒ˜ แƒฉแƒ•แƒ”แƒœแƒ˜ แƒ“แƒ”แƒกแƒžแƒแƒœแƒ˜แƒก แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜แƒ—แƒ˜ แƒ™แƒแƒ แƒ˜แƒก แƒ™แƒแƒœแƒขแƒ”แƒ˜แƒœแƒ”แƒ แƒ”แƒ‘แƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ“แƒแƒ‘แƒแƒšแƒ˜ แƒ™แƒแƒœแƒ™แƒฃแƒ แƒ”แƒœแƒขแƒฃแƒšแƒแƒ‘แƒ˜แƒ— แƒ˜แƒกแƒ”, แƒ แƒแƒ› แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ แƒฃแƒฎแƒ”แƒจแƒแƒ“ แƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ แƒ˜แƒ› แƒกแƒ”แƒ แƒ•แƒ˜แƒกแƒ”แƒ‘แƒก, แƒ แƒแƒ›แƒ”แƒšแƒ—แƒ แƒ’แƒ•แƒ”แƒ แƒ“แƒ˜แƒ— แƒ˜แƒฏแƒ“แƒ”แƒก. แƒฉแƒ•แƒ”แƒœ แƒ•แƒ›แƒแƒ แƒ—แƒแƒ•แƒ— Envoy-แƒก, แƒ แƒแƒ’แƒแƒ แƒช edge proxy, แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ›แƒแƒฅแƒกแƒ˜แƒ›แƒแƒšแƒฃแƒ แƒ˜ แƒ™แƒแƒœแƒ™แƒฃแƒ แƒ”แƒœแƒขแƒฃแƒšแƒแƒ‘แƒ˜แƒกแƒแƒก.

แƒ แƒแƒก แƒœแƒ˜แƒจแƒœแƒแƒ•แƒก แƒ“แƒแƒฃแƒ‘แƒšแƒแƒ™แƒแƒ•แƒ˜?

แƒขแƒ”แƒ แƒ›แƒ˜แƒœแƒ˜ โ€žแƒแƒ แƒแƒ‘แƒšแƒแƒ™แƒ˜แƒ แƒ”แƒ‘แƒแƒ“แƒ˜โ€œ แƒแƒฅแƒแƒ›แƒ“แƒ” แƒแƒ แƒแƒ”แƒ แƒ—แƒฎแƒ”แƒš แƒ˜แƒฅแƒœแƒ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ’แƒแƒœแƒ˜แƒฎแƒ˜แƒšแƒแƒ•แƒ“แƒœแƒ”แƒœ แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒ“แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜. แƒงแƒ•แƒ”แƒšแƒ แƒ™แƒแƒ“แƒ˜ แƒ˜แƒฌแƒ”แƒ แƒ”แƒ‘แƒ แƒ˜แƒ› แƒ•แƒแƒ แƒแƒฃแƒ“แƒ˜แƒ—, แƒ แƒแƒ› แƒแƒ แƒแƒคแƒ”แƒ แƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ˜แƒšแƒ˜. แƒ—แƒฃแƒ›แƒชแƒ, แƒ”แƒก แƒแƒ  แƒแƒ แƒ˜แƒก แƒ›แƒ—แƒšแƒแƒ“ แƒกแƒ˜แƒ›แƒแƒ แƒ—แƒšแƒ” (แƒ แƒแƒช แƒแƒ  แƒแƒ แƒ˜แƒก แƒ›แƒ—แƒšแƒแƒ“ แƒกแƒ˜แƒ›แƒแƒ แƒ—แƒšแƒ”?).

Envoy แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒฎแƒแƒœแƒ’แƒ แƒซแƒšแƒ˜แƒ•แƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒก แƒกแƒแƒ™แƒ”แƒขแƒก:

  • แƒ แƒแƒ’แƒแƒ แƒช แƒ’แƒแƒœแƒ•แƒ˜แƒฎแƒ˜แƒšแƒ”แƒ—, แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒ˜แƒก แƒฉแƒแƒฌแƒ”แƒ แƒ˜แƒกแƒแƒก, แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒ แƒ˜แƒซแƒ”แƒœแƒก แƒ”แƒ แƒ—แƒกแƒ แƒ“แƒ แƒ˜แƒ›แƒแƒ•แƒ” แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒแƒก, แƒกแƒแƒœแƒแƒ› แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒ˜แƒก แƒ‘แƒฃแƒคแƒ”แƒ แƒ˜ แƒจแƒ”แƒ˜แƒ•แƒกแƒ”แƒ‘แƒ. แƒกแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ“แƒแƒญแƒ”แƒ แƒ˜แƒก แƒ“แƒ แƒ แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ“แƒแƒ‘แƒแƒšแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒกแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒฌแƒ˜แƒœแƒแƒแƒฆแƒ›แƒ“แƒ”แƒ’แƒแƒ‘แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ™แƒแƒœแƒ™แƒฃแƒ แƒ”แƒœแƒขแƒฃแƒšแƒแƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ’แƒแƒ›แƒขแƒแƒ แƒฃแƒœแƒแƒ แƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก.
  • Envoy แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ แƒ—แƒฃแƒš แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒแƒก แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒ˜แƒก แƒ“แƒแƒกแƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒšแƒแƒ“, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ—แƒ”แƒ›แƒแƒ. แƒ”แƒก แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒชแƒแƒšแƒ™แƒ” แƒžแƒแƒกแƒขแƒ˜แƒก แƒ—แƒ”แƒ›แƒ. แƒ—แƒฃแƒ›แƒชแƒ, แƒ›แƒแƒ™แƒšแƒ”แƒ“ แƒแƒฆแƒ•แƒœแƒ˜แƒจแƒœแƒแƒ•, แƒ แƒแƒ› แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒ˜แƒก แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒแƒ“ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒคแƒแƒ แƒ’แƒšแƒ”แƒ‘แƒจแƒ˜, แƒฎแƒแƒœแƒ“แƒแƒฎแƒแƒœ แƒกแƒแƒญแƒ˜แƒ แƒแƒ แƒชแƒ”แƒœแƒขแƒ แƒแƒšแƒฃแƒ แƒ˜ "stats store"-แƒ˜แƒก แƒกแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒจแƒ”แƒซแƒ”แƒœแƒ. แƒ”แƒก แƒฉแƒแƒ™แƒ”แƒขแƒ•แƒ แƒแƒ แƒแƒกแƒ“แƒ แƒแƒก แƒแƒ  แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒกแƒแƒญแƒ˜แƒ แƒ.
  • แƒ›แƒ—แƒแƒ•แƒแƒ  แƒซแƒแƒคแƒก แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒฃแƒšแƒแƒ“ แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ™แƒแƒแƒ แƒ“แƒ˜แƒœแƒแƒชแƒ˜แƒ แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ—แƒแƒœ. แƒ”แƒก แƒ™แƒ”แƒ—แƒ“แƒ”แƒ‘แƒ "แƒ’แƒแƒ›แƒแƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒ˜แƒ—" แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒซแƒแƒคแƒ˜แƒ“แƒแƒœ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒแƒ›แƒ“แƒ” แƒ“แƒ แƒ–แƒแƒ’แƒฏแƒ”แƒ  แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒ“แƒแƒœ แƒ›แƒ—แƒแƒ•แƒแƒ  แƒซแƒแƒคแƒแƒ›แƒ“แƒ”. แƒ’แƒแƒ’แƒ–แƒแƒ•แƒœแƒ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒแƒก, แƒ แƒแƒ—แƒ แƒ’แƒแƒ›แƒแƒฅแƒ•แƒ”แƒงแƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒจแƒ”แƒขแƒงแƒแƒ‘แƒ˜แƒœแƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ“แƒ’แƒ”แƒก แƒ แƒ˜แƒ’แƒจแƒ˜ แƒ›แƒแƒ’แƒ•แƒ˜แƒแƒœแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒ˜แƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ”แƒก แƒกแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒ˜ แƒแƒ แƒแƒกแƒแƒ“แƒ”แƒก แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒกแƒ”แƒ แƒ˜แƒแƒ–แƒฃแƒšแƒแƒ“ แƒกแƒแƒ“แƒแƒ•แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ›แƒแƒ—แƒ˜ แƒขแƒ”แƒฅแƒœแƒ˜แƒ™แƒฃแƒ แƒแƒ“ แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒ แƒ›แƒแƒ˜แƒœแƒช แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ.
  • แƒ แƒแƒ“แƒ”แƒกแƒแƒช Envoy แƒฌแƒ”แƒ แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒก แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ˜แƒก แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ”แƒ‘แƒ˜แƒก แƒœแƒแƒ™แƒแƒ“แƒจแƒ˜ (แƒกแƒขแƒแƒœแƒ“แƒแƒ แƒขแƒฃแƒšแƒ˜ แƒจแƒ”แƒชแƒ“แƒแƒ›แƒ), แƒ˜แƒก แƒ˜แƒซแƒ”แƒœแƒก แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒแƒก แƒ›แƒ—แƒ”แƒš แƒžแƒ แƒแƒชแƒ”แƒกแƒ–แƒ”. แƒ–แƒแƒ’แƒแƒ“แƒแƒ“, Envoy-แƒ˜แƒก แƒšแƒแƒ™แƒแƒšแƒฃแƒ แƒ˜ แƒฎแƒ”แƒ”แƒ‘แƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ—แƒ•แƒแƒšแƒกแƒแƒ–แƒ แƒ˜แƒกแƒ˜แƒ— แƒกแƒแƒจแƒ˜แƒœแƒšแƒแƒ“ แƒ˜แƒ—แƒ•แƒšแƒ”แƒ‘แƒ, แƒแƒ›แƒ˜แƒขแƒแƒ› แƒ›แƒ˜แƒก แƒ’แƒแƒฃแƒ›แƒฏแƒแƒ‘แƒ”แƒกแƒ”แƒ‘แƒแƒก แƒ“แƒ˜แƒ“แƒ˜ แƒงแƒฃแƒ แƒแƒ“แƒฆแƒ”แƒ‘แƒ แƒแƒ  แƒ”แƒฅแƒชแƒ”แƒแƒ“แƒ.
  • แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒกแƒฎแƒ•แƒ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ˜แƒ—แƒ˜ แƒฉแƒแƒ›แƒ™แƒ”แƒขแƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒแƒ แƒชแƒ”แƒ แƒ—แƒ˜ แƒ›แƒแƒ—แƒ’แƒแƒœแƒ˜ แƒแƒ  แƒแƒ แƒ˜แƒก แƒ™แƒ แƒ˜แƒขแƒ˜แƒ™แƒฃแƒšแƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒแƒ–แƒ” แƒ“แƒ แƒแƒ แƒแƒกแƒแƒ“แƒ”แƒก แƒฃแƒœแƒ“แƒ แƒ˜แƒงแƒแƒก แƒ’แƒแƒ›แƒแƒฌแƒ•แƒ”แƒฃแƒšแƒ˜.

แƒ—แƒ”แƒ›แƒ˜แƒก แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒกแƒแƒชแƒแƒ•แƒ˜

แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ›แƒ, แƒ แƒแƒ› แƒ”แƒœแƒ•แƒแƒ˜ แƒ’แƒแƒœแƒแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒก แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒซแƒแƒคแƒ˜แƒก แƒžแƒแƒกแƒฃแƒฎแƒ˜แƒกแƒ›แƒ’แƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒก แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ˜แƒก แƒžแƒแƒกแƒฃแƒฎแƒ˜แƒกแƒ›แƒ’แƒ”แƒ‘แƒšแƒแƒ‘แƒ”แƒ‘แƒ˜แƒกแƒ’แƒแƒœ, แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ, แƒ แƒแƒ› แƒ แƒ—แƒฃแƒšแƒ˜ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ“แƒ”แƒก แƒ›แƒ—แƒแƒ•แƒแƒ  แƒซแƒแƒคแƒ–แƒ” แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ›แƒ˜แƒ”แƒฌแƒแƒ“แƒแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒก แƒฃแƒแƒฆแƒ แƒ”แƒกแƒแƒ“ แƒ”แƒ แƒ—แƒ“แƒ แƒแƒฃแƒšแƒแƒ“. แƒ”แƒก แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒ แƒแƒฆแƒฌแƒ”แƒ แƒก Envoy Thread Local Storage (TLS) แƒ›แƒแƒฆแƒแƒš แƒ“แƒแƒœแƒ”แƒ–แƒ”. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒœแƒแƒฌแƒ˜แƒšแƒจแƒ˜ แƒ›แƒ” แƒแƒฆแƒ•แƒฌแƒ”แƒ , แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ˜แƒก แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.
[แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜] Envoy threading แƒ›แƒแƒ“แƒ”แƒšแƒ˜

แƒ แƒแƒ’แƒแƒ แƒช แƒฃแƒ™แƒ•แƒ” แƒแƒฆแƒ•แƒœแƒ˜แƒจแƒœแƒ”แƒ—, แƒ›แƒ—แƒแƒ•แƒแƒ แƒ˜ แƒ—แƒ”แƒ›แƒ แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก แƒคแƒแƒฅแƒขแƒแƒ‘แƒ แƒ˜แƒ•แƒแƒ“ แƒ›แƒแƒ แƒ—แƒ•แƒ˜แƒกแƒ แƒ“แƒ แƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ˜แƒก แƒกแƒ˜แƒ‘แƒ แƒขแƒงแƒ˜แƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒแƒก Envoy-แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒจแƒ˜. แƒกแƒแƒ™แƒแƒœแƒขแƒ แƒแƒšแƒ แƒกแƒ˜แƒ‘แƒ แƒขแƒงแƒ” แƒแƒฅ แƒชแƒแƒขแƒ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒฃแƒšแƒ˜แƒ, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ แƒแƒชแƒ แƒ›แƒแƒก แƒ—แƒแƒ•แƒแƒ“ Envoy-แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒจแƒ˜ แƒฃแƒงแƒฃแƒ แƒ”แƒ‘ แƒ“แƒ แƒแƒ“แƒแƒ แƒ”แƒ‘ แƒ’แƒแƒ“แƒแƒ›แƒ˜แƒกแƒแƒ›แƒแƒ แƒ—แƒ”แƒ‘แƒแƒก, แƒ แƒแƒกแƒแƒช แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜ แƒแƒ™แƒ”แƒ—แƒ”แƒ‘แƒ”แƒœ, แƒแƒ–แƒ แƒ˜ แƒแƒฅแƒ•แƒก. แƒ–แƒแƒ’แƒแƒ“แƒ˜ แƒฌแƒ”แƒกแƒ˜แƒ, แƒ แƒแƒ› แƒซแƒ˜แƒ แƒ˜แƒ—แƒแƒ“แƒ˜ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜ แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒš แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒก แƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒก แƒ“แƒ แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ›แƒแƒก แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ˜แƒก แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ แƒแƒ› แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒก แƒจแƒ”แƒ“แƒ”แƒ’แƒ˜แƒก แƒ›แƒ˜แƒฎแƒ”แƒ“แƒ•แƒ˜แƒ—. แƒแƒ› แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒแƒจแƒ˜, แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒก แƒแƒ  แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒกแƒแƒ™แƒ”แƒขแƒ˜แƒก แƒ›แƒแƒžแƒแƒ•แƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒฌแƒ•แƒ“แƒแƒ›แƒแƒ–แƒ”.

Envoy-แƒ˜แƒก TLS (Thread local storage) แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’แƒœแƒแƒ˜แƒ แƒแƒ“:

  • แƒ›แƒ—แƒแƒ•แƒแƒ  แƒซแƒแƒคแƒ–แƒ” แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒฃแƒš แƒ™แƒแƒ“แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒ’แƒแƒ›แƒแƒงแƒแƒก TLS แƒกแƒšแƒแƒขแƒ˜ แƒ›แƒ—แƒ”แƒšแƒ˜ แƒžแƒ แƒแƒชแƒ”แƒกแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก. แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒ”แƒก แƒแƒ แƒ˜แƒก แƒแƒ‘แƒกแƒขแƒ แƒแƒฅแƒขแƒฃแƒšแƒ˜, แƒžแƒ แƒแƒฅแƒขแƒ˜แƒ™แƒแƒจแƒ˜ แƒ”แƒก แƒแƒ แƒ˜แƒก แƒ˜แƒœแƒ“แƒ”แƒฅแƒกแƒ˜ แƒ•แƒ”แƒฅแƒขแƒแƒ แƒจแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒคแƒก O(1) แƒฌแƒ•แƒ“แƒแƒ›แƒแƒก.
  • แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ—แƒ”แƒ›แƒแƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒ—แƒ•แƒ˜แƒ—แƒœแƒ”แƒ‘แƒฃแƒ แƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒ“แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ—แƒแƒ•แƒ˜แƒก แƒกแƒšแƒแƒขแƒจแƒ˜. แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ”แƒก แƒ™แƒ”แƒ—แƒ“แƒ”แƒ‘แƒ, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒฅแƒ•แƒ”แƒงแƒœแƒ“แƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒแƒจแƒ˜, แƒ แƒแƒ’แƒแƒ แƒช แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ˜แƒก แƒ›แƒแƒ แƒงแƒฃแƒŸแƒ˜แƒก แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ.
  • แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒแƒ— แƒฌแƒแƒ˜แƒ™แƒ˜แƒ—แƒฎแƒแƒœ แƒ—แƒแƒ•แƒ˜แƒแƒœแƒ—แƒ˜ TLS แƒกแƒšแƒแƒขแƒ˜แƒ“แƒแƒœ แƒ“แƒ แƒ›แƒแƒ˜แƒซแƒ˜แƒแƒœ แƒ˜แƒฅ แƒแƒ แƒกแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒœแƒ”แƒ‘แƒ˜แƒกแƒ›แƒ˜แƒ”แƒ แƒ˜ แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒแƒ“แƒ’แƒ˜แƒšแƒแƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜.

แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒ”แƒก แƒแƒ แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ˜ แƒ“แƒ แƒฌแƒแƒ แƒ›แƒแƒฃแƒ“แƒ’แƒ”แƒœแƒšแƒแƒ“ แƒซแƒšแƒ˜แƒ”แƒ แƒ˜ แƒžแƒแƒ แƒแƒ“แƒ˜แƒ’แƒ›แƒ, แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒฐแƒ’แƒแƒ•แƒก RCU (Read-Copy-Update) แƒ‘แƒšแƒแƒ™แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ™แƒแƒœแƒชแƒ”แƒคแƒชแƒ˜แƒแƒก. แƒแƒ แƒกแƒ”แƒ‘แƒ˜แƒ—แƒแƒ“, แƒ›แƒฃแƒจแƒแƒ—แƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜ แƒแƒ แƒแƒกแƒแƒ“แƒ”แƒก แƒฎแƒ”แƒ“แƒแƒ•แƒ”แƒœ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ แƒแƒ˜แƒ›แƒ” แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒแƒก TLS แƒกแƒšแƒแƒขแƒ”แƒ‘แƒจแƒ˜ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก. แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ แƒฎแƒ“แƒ”แƒ‘แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒกแƒแƒ›แƒฃแƒจแƒแƒ แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก แƒ“แƒแƒกแƒ•แƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒจแƒ˜.

Envoy แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒก แƒแƒ›แƒแƒก แƒแƒ แƒ˜ แƒ’แƒแƒœแƒกแƒฎแƒ•แƒแƒ•แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ’แƒ–แƒ˜แƒ—:

  • แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ–แƒ” แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒœแƒแƒฎแƒ•แƒ˜แƒ—, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ–แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ แƒจแƒ”แƒกแƒแƒซแƒšแƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒงแƒแƒ•แƒ”แƒšแƒ’แƒ•แƒแƒ แƒ˜ แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ”.
  • แƒ’แƒšแƒแƒ‘แƒแƒšแƒฃแƒ  แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ–แƒ” แƒกแƒแƒ”แƒ แƒ—แƒ แƒ›แƒแƒฉแƒ•แƒ”แƒœแƒ”แƒ‘แƒšแƒ˜แƒก แƒจแƒ”แƒœแƒแƒ แƒฉแƒฃแƒœแƒ”แƒ‘แƒ˜แƒ— แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒ แƒ”แƒŸแƒ˜แƒ›แƒจแƒ˜ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ–แƒ”. แƒแƒ›แƒ แƒ˜แƒ’แƒแƒ“, แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒแƒก แƒแƒฅแƒ•แƒก แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒ›แƒ˜แƒ—แƒ˜แƒ—แƒ”แƒ‘แƒ˜แƒก แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒแƒ  แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒจแƒ”แƒ›แƒชแƒ˜แƒ แƒ“แƒ”แƒก แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒก แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒกแƒแƒก. แƒ›แƒฎแƒแƒšแƒแƒ“ แƒ›แƒแƒจแƒ˜แƒœ, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒงแƒ•แƒ”แƒšแƒ แƒ—แƒแƒœแƒแƒ›แƒจแƒ แƒแƒ›แƒ”แƒšแƒ˜ แƒ“แƒแƒ›แƒจแƒ•แƒ˜แƒ“แƒ“แƒ”แƒ‘แƒ แƒ“แƒ แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ•แƒก แƒแƒฎแƒแƒš แƒ’แƒแƒ–แƒ˜แƒแƒ แƒ”แƒ‘แƒฃแƒš แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒก, แƒซแƒ•แƒ”แƒšแƒ˜ แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ”แƒ‘แƒ˜ แƒ’แƒแƒœแƒแƒ“แƒ’แƒฃแƒ แƒ“แƒ”แƒ‘แƒ. แƒ”แƒก แƒแƒ แƒ˜แƒก RCU-แƒก แƒ˜แƒ“แƒ”แƒœแƒขแƒฃแƒ แƒ˜.

แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒšแƒ˜ แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ˜แƒก แƒ—แƒ”แƒ›แƒแƒขแƒ˜แƒ™แƒ

แƒแƒ› แƒ’แƒแƒœแƒงแƒแƒคแƒ˜แƒšแƒ”แƒ‘แƒแƒจแƒ˜ แƒ›แƒ” แƒแƒฆแƒ•แƒฌแƒ”แƒ , แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ TLS (Thread local storage) แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒกแƒแƒ›แƒแƒ แƒ—แƒแƒ•แƒแƒ“. แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก xDS API แƒ“แƒ/แƒแƒœ DNS แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒแƒก, แƒแƒกแƒ”แƒ•แƒ” แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒแƒก.
[แƒ—แƒแƒ แƒ’แƒ›แƒแƒœแƒ˜] Envoy threading แƒ›แƒแƒ“แƒ”แƒšแƒ˜

แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒšแƒ˜ แƒœแƒแƒ™แƒแƒ“แƒ˜แƒก แƒ›แƒแƒ แƒ—แƒ•แƒ แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒก แƒ“แƒ แƒกแƒแƒคแƒ”แƒฎแƒฃแƒ แƒ”แƒ‘แƒก:

  1. Cluster Manager แƒแƒ แƒ˜แƒก แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ˜ Envoy-แƒจแƒ˜, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒ แƒ—แƒแƒ•แƒก แƒงแƒ•แƒ”แƒšแƒ แƒชแƒœแƒแƒ‘แƒ˜แƒš แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒฃแƒš แƒ–แƒ”แƒ“แƒ แƒœแƒแƒ™แƒแƒ“แƒก, Cluster Discovery Service (CDS) API, Secret Discovery Service (SDS) แƒ“แƒ Endpoint Discovery Service (EDS) API-แƒ”แƒ‘แƒก, DNS-แƒก แƒ“แƒ แƒแƒฅแƒขแƒ˜แƒฃแƒ  แƒ’แƒแƒ แƒ” แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒแƒก. แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ. แƒ˜แƒก แƒžแƒแƒกแƒฃแƒฎแƒ˜แƒกแƒ›แƒ’แƒ”แƒ‘แƒ”แƒšแƒ˜แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ–แƒ”แƒ›แƒแƒ แƒ”แƒฃแƒšแƒ˜ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก โ€žแƒกแƒแƒ‘แƒแƒšแƒแƒแƒ“ แƒ—แƒแƒœแƒ›แƒ˜แƒ›แƒ“แƒ”แƒ•แƒ แƒฃแƒšแƒ˜โ€œ แƒฎแƒ”แƒ“แƒ˜แƒก แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ–แƒ”, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒ˜แƒชแƒแƒ•แƒก แƒแƒฆแƒ›แƒแƒฉแƒ”แƒœแƒ˜แƒš แƒ›แƒแƒกแƒžแƒ˜แƒœแƒซแƒšแƒ”แƒ‘แƒก แƒ“แƒ แƒแƒกแƒ”แƒ•แƒ” แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒแƒก.
  2. แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒ”แƒšแƒ˜ แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒก แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒแƒฅแƒขแƒ˜แƒฃแƒ  แƒจแƒ”แƒ›แƒแƒฌแƒ›แƒ”แƒ‘แƒแƒก แƒ“แƒ แƒแƒชแƒœแƒแƒ‘แƒ”แƒ‘แƒก แƒฏแƒแƒœแƒ›แƒ แƒ—แƒ”แƒšแƒแƒ‘แƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ”แƒ‘แƒก แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒก.
  3. CDS (Cluster Discovery Service) / SDS (Secret Discovery Service) / EDS (Endpoint Discovery Service) / DNS แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒฃแƒšแƒ˜แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒฌแƒ”แƒ•แƒ แƒแƒ‘แƒ˜แƒก แƒ“แƒแƒกแƒแƒ“แƒ’แƒ”แƒœแƒแƒ“. แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒชแƒ•แƒšแƒ˜แƒšแƒ”แƒ‘แƒ แƒฃแƒ‘แƒ แƒฃแƒœแƒ“แƒ”แƒ‘แƒ แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒก.
  4. แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ˜ แƒ’แƒแƒœแƒฃแƒฌแƒงแƒ•แƒ”แƒขแƒšแƒ˜แƒ• แƒแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒก แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ˜แƒก แƒชแƒ˜แƒ™แƒšแƒก.
  5. แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒ”แƒœแƒ”แƒฏแƒ”แƒ แƒ˜ แƒแƒ“แƒ’แƒ”แƒœแƒก, แƒ แƒแƒ› แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ แƒจแƒ”แƒ˜แƒชแƒ•แƒแƒšแƒ, แƒ˜แƒก แƒฅแƒ›แƒœแƒ˜แƒก แƒ™แƒšแƒแƒกแƒขแƒ”แƒ แƒ˜แƒก แƒ›แƒ“แƒ’แƒแƒ›แƒแƒ แƒ”แƒแƒ‘แƒ˜แƒก แƒแƒฎแƒแƒš แƒกแƒฃแƒ แƒแƒ—แƒก แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฌแƒแƒกแƒแƒ™แƒ˜แƒ—แƒฎแƒแƒ“ แƒ“แƒ แƒแƒ’แƒ–แƒแƒ•แƒœแƒ˜แƒก แƒ›แƒแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒแƒจแƒ˜.
  6. แƒ›แƒแƒ›แƒ“แƒ”แƒ•แƒœแƒ แƒ›แƒจแƒ•แƒ˜แƒ“แƒ˜ แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜, แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒ แƒ’แƒแƒœแƒแƒแƒฎแƒšแƒ”แƒ‘แƒก แƒกแƒœแƒ”แƒžแƒจแƒแƒขแƒก แƒ’แƒแƒ›แƒแƒงแƒแƒคแƒ˜แƒš TLS แƒกแƒšแƒแƒขแƒจแƒ˜.
  7. I/O แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ˜แƒก แƒ“แƒ แƒแƒก, แƒ แƒแƒ›แƒ”แƒšแƒ›แƒแƒช แƒฃแƒœแƒ“แƒ แƒ’แƒแƒœแƒกแƒแƒ–แƒฆแƒ•แƒ แƒแƒก แƒฐแƒแƒกแƒขแƒ˜ แƒ‘แƒแƒšแƒแƒœแƒกแƒ˜แƒก แƒฉแƒแƒกแƒแƒขแƒ•แƒ˜แƒ แƒ—แƒแƒ“, แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ‘แƒแƒšแƒแƒœแƒกแƒ”แƒ แƒ˜ แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก TLS (Thread local storage) แƒกแƒšแƒแƒขแƒก แƒฐแƒแƒกแƒขแƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒ˜แƒœแƒคแƒแƒ แƒ›แƒแƒชแƒ˜แƒ˜แƒก แƒ›แƒ˜แƒกแƒแƒฆแƒ”แƒ‘แƒแƒ“. แƒ”แƒก แƒแƒ  แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒก แƒกแƒแƒ™แƒ”แƒขแƒ”แƒ‘แƒก. แƒแƒกแƒ”แƒ•แƒ” แƒ’แƒแƒ˜แƒ—แƒ•แƒแƒšแƒ˜แƒกแƒฌแƒ˜แƒœแƒ”แƒ—, แƒ แƒแƒ› TLS-แƒก แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒ’แƒแƒœแƒแƒฎแƒšแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ•แƒšแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒแƒฅแƒขแƒ˜แƒฃแƒ แƒ”แƒ‘แƒ, แƒ แƒแƒ—แƒ แƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒก แƒ‘แƒแƒšแƒแƒœแƒกแƒ”แƒ แƒ”แƒ‘แƒ›แƒ แƒ“แƒ แƒกแƒฎแƒ•แƒ แƒ™แƒแƒ›แƒžแƒแƒœแƒ”แƒœแƒขแƒ”แƒ‘แƒ›แƒ แƒจแƒ”แƒซแƒšแƒแƒœ แƒฅแƒ”แƒจแƒ˜แƒก, แƒ›แƒแƒœแƒแƒชแƒ”แƒ›แƒ—แƒ แƒกแƒขแƒ แƒฃแƒฅแƒขแƒฃแƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ.แƒจ. แƒ”แƒก แƒกแƒชแƒ˜แƒšแƒ“แƒ”แƒ‘แƒ แƒแƒ› แƒžแƒแƒกแƒขแƒ˜แƒก แƒคแƒแƒ แƒ’แƒšแƒ”แƒ‘แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒ™แƒแƒ“แƒ˜แƒก แƒกแƒฎแƒ•แƒแƒ“แƒแƒกแƒฎแƒ•แƒ แƒแƒ“แƒ’แƒ˜แƒšแƒแƒก.

แƒ–แƒ”แƒ›แƒแƒแƒฆแƒœแƒ˜แƒจแƒœแƒฃแƒšแƒ˜ แƒžแƒ แƒแƒชแƒ”แƒ“แƒฃแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—, Envoy-แƒก แƒจแƒ”แƒฃแƒซแƒšแƒ˜แƒ แƒ“แƒแƒแƒ›แƒฃแƒจแƒแƒ•แƒแƒก แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ แƒงแƒแƒ•แƒ”แƒšแƒ’แƒ•แƒแƒ แƒ˜ แƒ“แƒแƒ‘แƒšแƒแƒ™แƒ•แƒ˜แƒก แƒ’แƒแƒ แƒ”แƒจแƒ” (แƒ’แƒแƒ แƒ“แƒ แƒ–แƒ”แƒ›แƒแƒ— แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒกแƒ). แƒ’แƒแƒ แƒ“แƒ แƒ—แƒแƒ•แƒแƒ“ TLS แƒ™แƒแƒ“แƒ˜แƒก แƒกแƒ˜แƒ แƒ—แƒฃแƒšแƒ˜แƒกแƒ, แƒ™แƒแƒ“แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒแƒก แƒแƒ  แƒกแƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒ แƒ˜แƒ›แƒ˜แƒก แƒ’แƒแƒ’แƒ”แƒ‘แƒ, แƒ—แƒฃ แƒ แƒแƒ’แƒแƒ  แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ›แƒ แƒแƒ•แƒแƒšแƒœแƒแƒ™แƒแƒ“แƒฃแƒ แƒ˜ แƒ“แƒ แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ“แƒแƒ˜แƒฌแƒ”แƒ แƒแƒก แƒ”แƒ แƒ—แƒœแƒแƒ™แƒแƒ“แƒแƒ“. แƒ”แƒก แƒแƒแƒ“แƒ•แƒ˜แƒšแƒ”แƒ‘แƒก แƒ™แƒแƒ“แƒ˜แƒก แƒฃแƒ›แƒ”แƒขแƒ”แƒกแƒแƒ‘แƒ˜แƒก แƒ“แƒแƒฌแƒ”แƒ แƒแƒก แƒฃแƒ›แƒแƒฆแƒšแƒ”แƒกแƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒ แƒ“แƒ.

แƒกแƒฎแƒ•แƒ แƒฅแƒ•แƒ”แƒกแƒ˜แƒกแƒขแƒ”แƒ›แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ”แƒœ TLS-แƒก

TLS (Thread local storage) แƒ“แƒ RCU (Read Copy Update) แƒคแƒแƒ แƒ—แƒแƒ“ แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ Envoy-แƒจแƒ˜.

แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜:

  • แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒแƒœแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ˜แƒก แƒ›แƒ”แƒฅแƒแƒœแƒ˜แƒ–แƒ›แƒ˜: แƒฉแƒแƒ แƒ—แƒฃแƒšแƒ˜ แƒคแƒฃแƒœแƒฅแƒชแƒ˜แƒ”แƒ‘แƒ˜แƒก แƒ›แƒ˜แƒ›แƒ“แƒ˜แƒœแƒแƒ แƒ” แƒกแƒ˜แƒ แƒ’แƒแƒ›แƒแƒ˜แƒ—แƒ•แƒšแƒ”แƒ‘แƒ แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ—แƒ”แƒ›แƒแƒจแƒ˜. แƒจแƒ”แƒ›แƒ“แƒ”แƒ’ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒก แƒ”แƒซแƒšแƒ”แƒ•แƒ แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒ˜แƒก แƒกแƒฃแƒ แƒแƒ—แƒ˜ RCU แƒกแƒ”แƒ›แƒแƒœแƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—.
  • แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ”แƒ‘แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒ: RDS-แƒ˜แƒก (Route Discovery Service) แƒ›แƒ˜แƒ”แƒ  แƒ›แƒแƒฌแƒแƒ“แƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ”แƒ‘แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ”แƒ‘แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜ แƒ˜แƒฅแƒ›แƒœแƒ”แƒ‘แƒ แƒ›แƒ—แƒแƒ•แƒแƒ  แƒ—แƒ”แƒ›แƒแƒจแƒ˜. แƒ›แƒฎแƒแƒšแƒแƒ“ แƒฌแƒแƒ™แƒ˜แƒ—แƒฎแƒ•แƒแƒ“แƒ˜ แƒกแƒœแƒ”แƒžแƒจแƒแƒขแƒ˜ แƒจแƒ”แƒ›แƒ“แƒ’แƒแƒ›แƒจแƒ˜ แƒ›แƒ˜แƒ”แƒฌแƒแƒ“แƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒ แƒ—แƒ”แƒ›แƒแƒก RCU (Read Copy Update) แƒกแƒ”แƒ›แƒแƒœแƒขแƒ˜แƒ™แƒ˜แƒก แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒ—. แƒ”แƒก แƒฎแƒ“แƒ˜แƒก แƒ›แƒแƒ แƒจแƒ แƒฃแƒขแƒ”แƒ‘แƒ˜แƒก แƒชแƒฎแƒ แƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒชแƒ•แƒšแƒแƒก แƒแƒขแƒแƒ›แƒฃแƒ แƒแƒ“ แƒ”แƒคแƒ”แƒฅแƒขแƒฃแƒ แƒ˜.
  • HTTP แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒก แƒฅแƒ”แƒจแƒ˜แƒ แƒ”แƒ‘แƒ: แƒ แƒแƒ’แƒแƒ แƒช แƒ˜แƒ แƒ™แƒ•แƒ”แƒ•แƒ, HTTP แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ—แƒ•แƒšแƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก (แƒ—แƒ˜แƒ—แƒ แƒ‘แƒ˜แƒ แƒ—แƒ•แƒ–แƒ” ~25K+ RPS-แƒ˜แƒก แƒ’แƒแƒจแƒ•แƒ”แƒ‘แƒ˜แƒกแƒแƒก) แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒซแƒ•แƒ˜แƒ แƒ˜แƒ. Envoy แƒชแƒ”แƒœแƒขแƒ แƒแƒšแƒ˜แƒ–แƒ”แƒ‘แƒฃแƒšแƒแƒ“ แƒ˜แƒ—แƒ•แƒšแƒ˜แƒก แƒกแƒแƒ—แƒแƒฃแƒ แƒก แƒ“แƒแƒแƒฎแƒšแƒแƒ”แƒ‘แƒ˜แƒ— แƒงแƒแƒ•แƒ”แƒš แƒœแƒแƒฎแƒ”แƒ•แƒแƒ  แƒฌแƒแƒ›แƒจแƒ˜ แƒ“แƒ แƒแƒฌแƒ•แƒ“แƒ˜แƒก แƒ›แƒแƒก แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒš แƒ›แƒฃแƒจแƒแƒ™แƒก TLS แƒ“แƒ RCU แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒ˜แƒ—.

แƒแƒ แƒ˜แƒก แƒกแƒฎแƒ•แƒ แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ”แƒ‘แƒ˜, แƒ›แƒแƒ’แƒ แƒแƒ› แƒฌแƒ˜แƒœแƒ แƒ›แƒแƒ’แƒแƒšแƒ˜แƒ—แƒ”แƒ‘แƒ˜ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒฃแƒœแƒ“แƒ แƒ’แƒ•แƒ”แƒกแƒ›แƒแƒ“แƒ”แƒก, แƒ—แƒฃ แƒ แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ TLS.

แƒชแƒœแƒแƒ‘แƒ˜แƒšแƒ˜ แƒจแƒ”แƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒ˜แƒก แƒฎแƒแƒ แƒ•แƒ”แƒ–แƒ”แƒ‘แƒ˜

แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› Envoy แƒกแƒแƒ™แƒ›แƒแƒแƒ“ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒ›แƒฃแƒจแƒแƒแƒ‘แƒก แƒ›แƒ—แƒšแƒ˜แƒแƒœแƒแƒ‘แƒแƒจแƒ˜, แƒแƒ แƒ˜แƒก แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœแƒ˜ แƒกแƒคแƒ”แƒ แƒ, แƒ แƒแƒ›แƒ”แƒšแƒ˜แƒช แƒ›แƒแƒ˜แƒ—แƒฎแƒแƒ•แƒก แƒงแƒฃแƒ แƒแƒ“แƒฆแƒ”แƒ‘แƒแƒก, แƒ แƒแƒ“แƒ”แƒกแƒแƒช แƒ˜แƒก แƒ’แƒแƒ›แƒแƒ˜แƒงแƒ”แƒœแƒ”แƒ‘แƒ แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ™แƒแƒœแƒ™แƒฃแƒ แƒ”แƒœแƒขแƒฃแƒšแƒแƒ‘แƒ˜แƒ—แƒ แƒ“แƒ แƒ’แƒแƒ›แƒขแƒแƒ แƒฃแƒœแƒแƒ แƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒ—:

  • แƒ แƒแƒ’แƒแƒ แƒช แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜แƒ แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒแƒจแƒ˜, แƒแƒ›แƒŸแƒแƒ›แƒแƒ“ แƒงแƒ•แƒ”แƒšแƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒ˜ แƒ˜แƒ‘แƒšแƒแƒ™แƒ”แƒ‘แƒ แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒ˜แƒก แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ‘แƒฃแƒคแƒ”แƒ แƒจแƒ˜ แƒฉแƒแƒฌแƒ”แƒ แƒ˜แƒกแƒแƒก. แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ™แƒแƒœแƒ™แƒฃแƒ แƒ”แƒœแƒขแƒฃแƒšแƒแƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ’แƒแƒ›แƒขแƒแƒ แƒฃแƒœแƒแƒ แƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก, แƒ—แƒฅแƒ•แƒ”แƒœ แƒ“แƒแƒ’แƒญแƒ˜แƒ แƒ“แƒ”แƒ‘แƒแƒ— แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒ”แƒ‘แƒ˜แƒก แƒฏแƒ’แƒฃแƒคแƒฃแƒ แƒ˜ แƒจแƒ”แƒ™แƒ แƒ”แƒ‘แƒ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒกแƒแƒ‘แƒแƒšแƒแƒ แƒคแƒแƒ˜แƒšแƒ–แƒ” แƒฉแƒแƒฌแƒ”แƒ แƒ˜แƒกแƒแƒก แƒ›แƒฌแƒงแƒแƒ‘แƒ แƒ˜แƒ“แƒแƒœ แƒ’แƒแƒ›แƒแƒกแƒฃแƒšแƒ˜ แƒ›แƒ˜แƒฌแƒแƒ“แƒ”แƒ‘แƒ˜แƒก แƒฎแƒแƒ แƒฏแƒ–แƒ”. แƒแƒšแƒขแƒ”แƒ แƒœแƒแƒขแƒ˜แƒฃแƒšแƒแƒ“, แƒจแƒ”แƒ’แƒ˜แƒซแƒšแƒ˜แƒแƒ— แƒจแƒ”แƒฅแƒ›แƒœแƒแƒ— แƒชแƒแƒšแƒ™แƒ” แƒฌแƒ•แƒ“แƒแƒ›แƒ˜แƒก แƒŸแƒฃแƒ แƒœแƒแƒšแƒ˜ แƒ—แƒ˜แƒ—แƒแƒ”แƒฃแƒšแƒ˜ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก.
  • แƒ›แƒ˜แƒฃแƒฎแƒ”แƒ“แƒแƒ•แƒแƒ“ แƒ˜แƒ›แƒ˜แƒกแƒ, แƒ แƒแƒ› แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒ แƒฃแƒแƒฆแƒ แƒ”แƒกแƒแƒ“ แƒแƒžแƒขแƒ˜แƒ›แƒ˜แƒ–แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜แƒ, แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ™แƒแƒœแƒ™แƒฃแƒ แƒ”แƒœแƒขแƒฃแƒšแƒแƒ‘แƒ˜แƒกแƒ แƒ“แƒ แƒ’แƒแƒ›แƒขแƒแƒ แƒฃแƒœแƒแƒ แƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒก แƒ“แƒ แƒแƒก, แƒกแƒแƒ•แƒแƒ แƒแƒฃแƒ“แƒแƒ“, แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒแƒขแƒแƒ›แƒฃแƒ แƒ˜ แƒ™แƒแƒ›แƒแƒ—แƒ˜ แƒชแƒแƒšแƒ™แƒ”แƒฃแƒš แƒกแƒขแƒแƒขแƒ˜แƒกแƒขแƒ˜แƒ™แƒแƒ–แƒ”. แƒแƒ› แƒžแƒ แƒแƒ‘แƒšแƒ”แƒ›แƒ˜แƒก แƒ’แƒแƒ“แƒแƒฌแƒงแƒ•แƒ”แƒขแƒ แƒแƒ แƒ˜แƒก แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜ แƒ—แƒ˜แƒ—แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ–แƒ” แƒชแƒ”แƒœแƒขแƒ แƒแƒšแƒฃแƒ แƒ˜ แƒ›แƒ แƒ˜แƒชแƒฎแƒ•แƒ”แƒšแƒ”แƒ‘แƒ˜แƒก แƒžแƒ”แƒ แƒ˜แƒแƒ“แƒฃแƒšแƒ˜ แƒ’แƒแƒ“แƒแƒขแƒ•แƒ˜แƒ แƒ—แƒ•แƒ˜แƒ—. แƒแƒ›แƒ˜แƒก แƒจแƒ”แƒกแƒแƒฎแƒ”แƒ‘ แƒ›แƒแƒ›แƒ“แƒ”แƒ•แƒœแƒ แƒžแƒแƒกแƒขแƒจแƒ˜ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ’แƒแƒœแƒฎแƒ˜แƒšแƒฃแƒšแƒ˜.
  • แƒแƒ›แƒŸแƒแƒ›แƒ˜แƒœแƒ“แƒ”แƒšแƒ˜ แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒ แƒแƒ  แƒ˜แƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒก แƒ™แƒแƒ แƒ’แƒแƒ“, แƒ—แƒฃ Envoy แƒ’แƒแƒœแƒšแƒแƒ’แƒ“แƒ”แƒ‘แƒ แƒกแƒชแƒ”แƒœแƒแƒ แƒจแƒ˜, แƒกแƒแƒ“แƒแƒช แƒซแƒแƒšแƒ˜แƒแƒœ แƒชแƒแƒขแƒแƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜, แƒ แƒแƒ›แƒšแƒ”แƒ‘แƒ˜แƒช แƒกแƒแƒญแƒ˜แƒ แƒแƒ”แƒ‘แƒ”แƒœ แƒ›แƒœแƒ˜แƒจแƒ•แƒœแƒ”แƒšแƒแƒ•แƒแƒœ แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒก แƒ แƒ”แƒกแƒฃแƒ แƒกแƒ”แƒ‘แƒก. แƒแƒ  แƒแƒ แƒกแƒ”แƒ‘แƒแƒ‘แƒก แƒ’แƒแƒ แƒแƒœแƒขแƒ˜แƒ, แƒ แƒแƒ› แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜ แƒ—แƒแƒœแƒแƒ‘แƒ แƒแƒ“ แƒ’แƒแƒ“แƒแƒœแƒแƒฌแƒ˜แƒšแƒ“แƒ”แƒ‘แƒ แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก. แƒ”แƒก แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ›แƒแƒ’แƒ•แƒแƒ แƒ“แƒ”แƒก แƒ›แƒฃแƒจแƒแƒ—แƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ˜แƒก แƒ“แƒแƒ‘แƒแƒšแƒแƒœแƒกแƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ˜แƒ—, แƒ แƒแƒช แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒ›แƒ˜แƒกแƒชแƒ”แƒ›แƒก แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒ’แƒแƒชแƒ•แƒšแƒแƒก แƒ›แƒฃแƒจแƒ แƒซแƒแƒคแƒ”แƒ‘แƒก แƒจแƒแƒ แƒ˜แƒก.

แƒ“แƒแƒกแƒ™แƒ•แƒœแƒ

Envoy-แƒ˜แƒก threading แƒ›แƒแƒ“แƒ”แƒšแƒ˜ แƒจแƒ”แƒฅแƒ›แƒœแƒ˜แƒšแƒ˜แƒ แƒ˜แƒ›แƒ˜แƒกแƒแƒ—แƒ•แƒ˜แƒก, แƒ แƒแƒ› แƒฃแƒ–แƒ แƒฃแƒœแƒ•แƒ”แƒšแƒงแƒแƒก แƒžแƒ แƒแƒ’แƒ แƒแƒ›แƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒกแƒ˜แƒ›แƒแƒ แƒขแƒ˜แƒ•แƒ” แƒ“แƒ แƒ›แƒแƒกแƒ˜แƒฃแƒ แƒ˜ แƒžแƒแƒ แƒแƒšแƒ”แƒšแƒ˜แƒ–แƒ›แƒ˜ แƒžแƒแƒขแƒ”แƒœแƒชแƒ˜แƒฃแƒ แƒแƒ“ แƒคแƒฃแƒญแƒแƒ•แƒแƒœแƒ˜ แƒ›แƒ”แƒฎแƒกแƒ˜แƒ”แƒ แƒ”แƒ‘แƒ˜แƒก แƒ“แƒ แƒ™แƒแƒ•แƒจแƒ˜แƒ แƒ”แƒ‘แƒ˜แƒก แƒฎแƒแƒ แƒฏแƒ–แƒ”, แƒ—แƒฃ แƒแƒ แƒแƒกแƒฌแƒแƒ แƒแƒ“ แƒแƒ แƒ˜แƒก แƒ™แƒแƒœแƒคแƒ˜แƒ’แƒฃแƒ แƒ˜แƒ แƒ”แƒ‘แƒฃแƒšแƒ˜. แƒ”แƒก แƒ›แƒแƒ“แƒ”แƒšแƒ˜ แƒกแƒแƒจแƒฃแƒแƒšแƒ”แƒ‘แƒแƒก แƒแƒซแƒšแƒ”แƒ•แƒก แƒ›แƒแƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ™แƒแƒ แƒ’แƒแƒ“ แƒจแƒ”แƒแƒกแƒ แƒฃแƒšแƒแƒก แƒซแƒแƒคแƒ”แƒ‘แƒ˜แƒก แƒซแƒแƒšแƒ˜แƒแƒœ แƒ›แƒแƒฆแƒแƒšแƒ˜ แƒ แƒแƒแƒ“แƒ”แƒœแƒแƒ‘แƒ แƒ“แƒ แƒ’แƒแƒ›แƒขแƒแƒ แƒฃแƒœแƒแƒ แƒ˜แƒแƒœแƒแƒ‘แƒ.
แƒ แƒแƒ’แƒแƒ แƒช แƒ›แƒแƒ™แƒšแƒ”แƒ“ แƒแƒฆแƒ•แƒœแƒ˜แƒจแƒœแƒ” Twitter-แƒ–แƒ”, แƒ“แƒ˜แƒ–แƒแƒ˜แƒœแƒ˜ แƒแƒกแƒ”แƒ•แƒ” แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ˜แƒ›แƒฃแƒจแƒแƒแƒก แƒ›แƒแƒ›แƒฎแƒ›แƒแƒ แƒ”แƒ‘แƒšแƒ˜แƒก แƒ แƒ”แƒŸแƒ˜แƒ›แƒ˜แƒก แƒกแƒ แƒฃแƒšแƒ˜ แƒฅแƒกแƒ”แƒšแƒ˜แƒก แƒ“แƒแƒกแƒขแƒแƒ–แƒ”, แƒ แƒแƒ’แƒแƒ แƒ˜แƒชแƒแƒ DPDK (Data Plane Development Kit), แƒ แƒแƒ›แƒแƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒ’แƒแƒ›แƒแƒ˜แƒฌแƒ•แƒ˜แƒแƒก แƒฉแƒ•แƒ”แƒฃแƒšแƒ”แƒ‘แƒ แƒ˜แƒ•แƒ˜ แƒกแƒ”แƒ แƒ•แƒ”แƒ แƒ”แƒ‘แƒ˜ แƒ›แƒ˜แƒšแƒ˜แƒแƒœแƒแƒ‘แƒ˜แƒ— แƒ›แƒแƒ—แƒฎแƒแƒ•แƒœแƒแƒก แƒฌแƒแƒ›แƒจแƒ˜ แƒกแƒ แƒฃแƒšแƒ˜ L7 แƒ“แƒแƒ›แƒฃแƒจแƒแƒ•แƒ”แƒ‘แƒ˜แƒ—. แƒซแƒแƒšแƒ˜แƒแƒœ แƒกแƒแƒ˜แƒœแƒขแƒ”แƒ แƒ”แƒกแƒ แƒ˜แƒฅแƒœแƒ”แƒ‘แƒ แƒ˜แƒ›แƒ˜แƒก แƒฎแƒ˜แƒšแƒ•แƒ, แƒ—แƒฃ แƒ แƒ แƒแƒจแƒ”แƒœแƒ“แƒ”แƒ‘แƒ แƒ›แƒแƒ›แƒ“แƒ”แƒ•แƒœแƒ แƒ แƒแƒ›แƒ“แƒ”แƒœแƒ˜แƒ›แƒ” แƒฌแƒšแƒ˜แƒก แƒ’แƒแƒœแƒ›แƒแƒ•แƒšแƒแƒ‘แƒแƒจแƒ˜.
แƒ”แƒ แƒ—แƒ˜ แƒ‘แƒแƒšแƒ แƒกแƒฌแƒ แƒแƒคแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜: แƒ›แƒ” แƒ‘แƒ”แƒ•แƒ แƒฏแƒ”แƒ  แƒ›แƒ™แƒ˜แƒ—แƒฎแƒ”แƒก, แƒ แƒแƒขแƒแƒ› แƒแƒ•แƒ˜แƒ แƒฉแƒ˜แƒ”แƒ— C++ Envoy-แƒกแƒ—แƒ•แƒ˜แƒก. แƒ›แƒ˜แƒ–แƒ”แƒ–แƒ˜ แƒ แƒฉแƒ”แƒ‘แƒ แƒ˜แƒก, แƒ แƒแƒ› แƒ˜แƒก แƒฏแƒ”แƒ  แƒ™แƒ˜แƒ“แƒ”แƒ• แƒแƒ แƒ˜แƒก แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒคแƒแƒ แƒ—แƒแƒ“ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒฃแƒšแƒ˜ แƒ˜แƒœแƒ“แƒฃแƒกแƒขแƒ แƒ˜แƒฃแƒšแƒ˜ แƒ™แƒšแƒแƒกแƒ˜แƒก แƒ”แƒœแƒ, แƒ แƒแƒ›แƒ”แƒšแƒจแƒ˜แƒช แƒจแƒ”แƒ˜แƒซแƒšแƒ”แƒ‘แƒ แƒแƒจแƒ”แƒœแƒ“แƒ”แƒก แƒแƒ› แƒžแƒแƒกแƒขแƒจแƒ˜ แƒแƒฆแƒฌแƒ”แƒ แƒ˜แƒšแƒ˜ แƒแƒ แƒฅแƒ˜แƒขแƒ”แƒฅแƒขแƒฃแƒ แƒ. C++ แƒœแƒแƒ›แƒ“แƒ•แƒ˜แƒšแƒแƒ“ แƒแƒ  แƒแƒ แƒ˜แƒก แƒจแƒ”แƒกแƒแƒคแƒ”แƒ แƒ˜แƒกแƒ˜ แƒงแƒ•แƒ”แƒšแƒ แƒแƒœ แƒ—แƒฃแƒœแƒ“แƒแƒช แƒ›แƒ แƒแƒ•แƒแƒšแƒ˜ แƒžแƒ แƒแƒ”แƒฅแƒขแƒ˜แƒกแƒ—แƒ•แƒ˜แƒก, แƒ›แƒแƒ’แƒ แƒแƒ› แƒ’แƒแƒ แƒ™แƒ•แƒ”แƒฃแƒšแƒ˜ แƒ’แƒแƒ›แƒแƒงแƒ”แƒœแƒ”แƒ‘แƒ˜แƒก แƒจแƒ”แƒ›แƒ—แƒฎแƒ•แƒ”แƒ•แƒ”แƒ‘แƒ˜แƒกแƒ—แƒ•แƒ˜แƒก แƒ˜แƒก แƒ›แƒแƒ˜แƒœแƒช แƒ”แƒ แƒ—แƒแƒ“แƒ”แƒ แƒ—แƒ˜ แƒ˜แƒœแƒกแƒขแƒ แƒฃแƒ›แƒ”แƒœแƒขแƒ˜แƒ แƒกแƒแƒ›แƒฃแƒจแƒแƒแƒก แƒจแƒ”แƒกแƒแƒกแƒ แƒฃแƒšแƒ”แƒ‘แƒšแƒแƒ“.

แƒ™แƒแƒ“แƒ˜แƒก แƒ‘แƒ›แƒฃแƒšแƒ”แƒ‘แƒ˜

แƒแƒ› แƒžแƒแƒกแƒขแƒจแƒ˜ แƒ’แƒแƒœแƒฎแƒ˜แƒšแƒฃแƒšแƒ˜ แƒคแƒแƒ˜แƒšแƒ”แƒ‘แƒ˜แƒก แƒ‘แƒ›แƒฃแƒšแƒ”แƒ‘แƒ˜ แƒ˜แƒœแƒขแƒ”แƒ แƒคแƒ”แƒ˜แƒกแƒ”แƒ‘แƒ˜แƒ— แƒ“แƒ แƒกแƒแƒ—แƒแƒฃแƒ แƒ˜แƒก แƒ’แƒแƒœแƒฎแƒแƒ แƒชแƒ˜แƒ”แƒšแƒ”แƒ‘แƒ˜แƒ—:

แƒฌแƒงแƒแƒ แƒ: www.habr.com

แƒแƒฎแƒแƒšแƒ˜ แƒ™แƒแƒ›แƒ”แƒœแƒขแƒแƒ แƒ˜แƒก แƒ“แƒแƒ›แƒแƒขแƒ”แƒ‘แƒ