แแ แแแ แแแฃแแ แฃแแ แฃแแแแแงแแคแ, แ แแแแ แช แกแแ แแแกแ, แแแคแ แแกแขแ แฃแฅแขแฃแ แ, แ แแแแ แช แกแแ แแแกแ, แแแแขแคแแ แแ, แ แแแแ แช แกแแ แแแกแ, แกแแแแแฃแแแแแชแแ แแแแขแคแแ แแ, แ แแแแ แช แกแแ แแแกแ, แแแแแ แแแแคแแ แแแชแแ, แ แแแแ แช แกแแ แแแกแ, แ แแช แจแแแฎแแแ แฆแ แฃแแแแแแ แแแแแจแก, แ แแแแ แช แกแแ แแแกแก? แฃแแแ แแงแ แ แแแแแแแแ แแชแแแแแแ แจแแฅแแแแ แฆแ แฃแแแแแแแ แแแแแจแแแ (Cloud Gaming), แ แแแแ แแชแแ Stadia, แ แแแแแแช แแฎแแแฎแแ แแแแแฃแจแแ Google-แแ. แกแขแแแแ
แขแแแฐ แแแฃแแแแ แแแแแฌแงแแแขแ แแแแแแชแแแ แแก แจแแกแแซแแแแแแแ แแแแแก แฆแแ แแแแแก แแ แแแฅแขแแ CloudRetro. CloudRetro แแแคแฃแซแแแแฃแแแ Pion-แแ,
Entry
แจแแ แจแแ, แ แแแแกแแช Google-แแ Stadia แแแแแแชแฎแแแ, แแแแแแ แแแแแแ แแแแ. แแแแ แแแแแแแ แฃแแแแแแฃแ แ แแ แแแแแแชแแฃแ แแ, แ แแ แแแแฃแแแแแแ แแแแแขแแ แแกแแแแ, แ แแแแ แแงแ แแก แจแแกแแซแแแแแแ แแ แกแแแฃแแ แขแแฅแแแแแแแแ. แแ แแแแแก แฃแแแ แแแแแแแก แกแฃแ แแแแแ แแแแแซแแ แจแแแแฅแแแ แฆแแ แแแแแก แฆแ แฃแแแแแแแ แแแแแจแแก แฉแแแ แกแแแฃแแแ แ แแแ แกแแ. แจแแแแแ แฃแแ แแแแ แคแแแขแแกแขแแแฃแ แ แแงแ. แฅแแแแแ แแแแแ แแแแแแแแ แแ แฉแแแก แฌแแแแ แแฃแจแแแแแก แแ แแชแแกแ
TLDR: แแแแแ แกแแแแ แแแ แกแแ แแแฉแแแแแแแแแแ
แ แแขแแ แแ แแก แฆแ แฃแแแแแแแ แแแแแจแ แแแแแแแแ
แแ แแฏแแ แ, แ แแ Cloud Gaming แแแแ แแแฎแแแแ แแ แ แแฎแแแแ แแแแแจแแแแก, แแ แแแแ แแแแแแฃแขแแ แฃแแ แแแชแแแแ แแแแก แกแฎแแ แกแคแแ แแแแแก แจแแแแแแ แแแแแ. Cloud gaming แแ แแก แแแแแแขแแก/แกแแ แแแ แแก แแแแแแแก แแฌแแแ แแแแ. แแก แแแแแแ แแซแแแแ แแแก backend-แแก แแแแแฏแแแแขแก แแ แแแชแแ แแแก แคแ แแแขแแแแแก แแฃแจแแแแแก แแแกแขแแแชแแฃแ แกแแ แแแ แแ แแแแแจแแก แแแแแแแก แฐแแกแขแแแแแ แแ แแแแแแขแแกแแแแก แกแฃแ แแแแแแก/แแฃแแแ แแแแแแแ. แกแแ แแแ แ แแฎแแ แชแแแแแแก แแซแแแ แแแแฃแจแแแแแแก, แแกแ แ แแ แแแแแแขแ แแฆแแ แแฅแแแแ แขแแฅแแแแแก แจแแแฆแฃแแแแแแก แฌแงแแแแแแแ.
Google Stadia แแ แกแแแแแแ แแแซแแแแ แกแแจแฃแแแแแแก แแแแแแจแแ
แแ แขแแฅแแแแแแแแก แแแแแแแแ: แฌแแ แแแแแแแแแ, แแฃ Microsoft Windows 10 แแฃแจแแแแแ Chrome แแ แแฃแแแ แแ?
แฆแ แฃแแแแแแแ แแแแแจแ แขแแฅแแแแฃแ แแ แ แแฃแแแ
แแแแแจแ แแ แแก แแ แ-แแ แแ แแก แแจแแแแแ แกแคแแ แ, แกแแแแช แแแแฎแแแ แแแแแก แแฃแแแแแ, แกแฌแ แแคแ แ แแแแแ แแแแ แกแแญแแ แ. แแฃ แแแแ แแแแแ แแแฌแแแแฃแแแแแกแแก แแแแฏแแ แแแฌแงแแแแแ 2 แฌแแแแก แจแแคแแ แฎแแแแก, แแก แแแกแแฆแแแแ. แชแแชแฎแแแ แแแแแ แแแแแแแแ, แ แแแแ แช แฌแแกแ, แฉแแ แแแแ แ แแแแแแแแ แฌแแแแ, แแแแ แแ แแแแแช แแแแแแแแแแก แแแแแแ แฃแ แแแแแงแแแแแแแแแแก. แแฃแแชแ, แแฃ แแแแแจแ แฎแจแแ แแ แฉแแแแ แฉแแแ 500 ms-แแ, แแก แฃแแ แแแแ แจแแฃแซแแแแแแแ. แฉแแแแ แแแแแแแ แแแแแฆแฌแแแ แฃแแแแฃแ แแกแแ แแแแแ แจแแงแแแแแแแก แแกแ, แ แแ แจแแงแแแแแกแ แแ แแแแแแก แจแแ แแก แฃแคแกแแ แฃแแ แแงแแก แ แแช แจแแแซแแแแ แแชแแ แ. แแแแขแแ, แแแแแ แแแแแแแก แขแ แแแแชแแฃแแ แแแแแแแ แแฅ แแ แแแแแแงแแแแแ.
แแแแแแ แฆแ แฃแแแแแแแ แแแแแจแแก แจแแแแแแ
แฆแแ แแแแแก แแ แแแฅแขแ CloudRetro
แแแแแแฌแงแแแขแ แจแแแแฅแแแ แฆแ แฃแแแแแแแ แแแแแจแแก แกแแขแแกแขแ แแแแฃแจแ, แ แแแ แแแแแแ, แจแแกแแซแแแแแแ แแงแ แแฃ แแ แ แแก แงแแแแแคแแ แ แฅแกแแแแก แแกแแแ แแแแชแ แ แจแแแฆแฃแแแแ. แแ แแแแ แฉแแ Golang แแแแชแแคแชแแแก แแแกแแแขแแแชแแแแแ, แ แแแแแ แแก แแงแ แแแ, แ แแแแแกแแช แงแแแแแแ แแแ แแแ แแแชแแแแแ แแ แแแ แแแ แแงแ แจแแกแแคแแ แแกแ แแ แแแแฎแแ แชแแแแแแแกแแแแก แแ แแแแแ แกแฎแแ แแแแแแแก แแแแ, แ แแแแ แช แแแแแแแแแแแ แแฆแแแแแฉแแแ. Go แแแ แขแแแแ แแ แซแแแแแ แกแฌแ แแคแแ แแแแแ แแแแ; แแ แฎแแแ Go-แจแ แจแแกแแแแจแแแแแ แแ แแแแแแแแแแแก แแแ แแแแกแแแแก.
แแ แแแฅแขแ
แแ แแแฅแขแแก แจแแกแแฎแแ แแแขแ แจแแแแซแแแแ แแแแแแ แแฅ:
CloudRetro แคแฃแแฅแชแแแแแ แแแ
CloudRetro แแงแแแแแก แ แแขแ แ แแแแแจแแแก แฆแ แฃแแแแแแแ แแแแแจแแแแก แซแแแแก แแแแแแกแขแ แแ แแแแกแแแแก. แ แแช แกแแจแฃแแแแแแก แแแซแแแแ แแแแฆแแ แแ แแแแแ แฃแแแแแแฃแ แ แกแแแแแแจแ แแแแแชแแแแแแ.
- แแแแแจแแก แแแ แขแแแแแฃแ แแแ
- แแงแแกแแแ แ แแแแแ แ แแแแ แแแก แแแฎแกแแแกแแก; แแ แแ แแก แกแแญแแ แ แฉแแแแขแแแ แแแ แแ แแแกแขแแแแชแแ
- แแฃแจแแแแก แแแแแแฃแ แ แแ แแฃแแแ แจแ, แแแแขแแ แแ แแ แแก แกแแญแแ แ แแ แแแ แแแฃแแ แฃแแ แฃแแแแแงแแคแ แแแก แแแกแแจแแแแแ
- แแแแแจแแก แกแแกแแแแแก แแแแแแ แแแ แจแแกแแซแแแแแแแ แแ แแแแ แแแฌแงแแแแแแแแจแ แแ แจแแแแแฎแแแ แฆแ แฃแแแแจแ แจแแแแแแ แจแแกแแแแกแแแแก
- แแแแแจแแก แกแขแ แแแแแแ แจแแกแแซแแแแแแแ, แแ แแแกแ แแแแแจแ แแ แแแ แแฃแแแ แ แแแแแแแแ แแแแฎแแแ แแแแแแ แจแแแซแแแแ:
- Crowdplay, แ แแแแ แแชแแ TwitchPlayPokemon, แแฎแแแแ แแแขแ แแแแขแคแแ แแ แแ แฃแคแ แ แ แแแแฃแ แแ แแจแ
- แแแแแแ แแแแแจแแแ แแคแแแแ. แแแแ แแแแฎแแแ แแแแแก แจแแฃแซแแแ แแแแแจแ แฅแกแแแแก แแแงแแแแแแก แแแ แแจแ. Samurai Shodown-แก แแฎแแ แจแแฃแซแแแ 2 แแแแแแแจแแก แแแแแจแ CloudRetro แฅแกแแแจแ
แแแแแแ แแ แแแแแแแแแแแจแแแแ แแแแแจแแก แแแแ แแแ แกแแ แกแฎแแแแแกแฎแแ แแแฌแงแแแแแแแแแแแแแคแ แแกแขแ แฃแฅแขแฃแ แแก
แแแแฎแแแแแแ แแ แขแแฅแแแแแแแแก แแแกแขแ
แฅแแแแแ แแแชแแแฃแแแ แแแแฎแแแแแแแก แฉแแแแแแแแแแ, แ แแแแแแแช แแ แแแแแฌแแกแ แแ แแแฅแขแแก แแแฌแงแแแแแแ.
1. แแ แแ แแแแแแแจแ
แแก แแแแฎแแแแ แจแแแซแแแแ แแฅ แแ แฉแแแแแก แซแแแแแ แแแแจแแแแแแแแแ แแ แแจแแแ แ, แแแแ แแ แแก แแ แแก แฉแแแ แแ แ-แแ แแ แแแแแแ แ แแแแแกแแแแแ, แแก แกแแจแฃแแแแแแก แแซแแแแก แฆแ แฃแแแแแแ แแแแแจแก แแแฅแกแแแแแฃแ แแ แจแแ แก แแแ แฉแแก แขแ แแแแชแแฃแแ แแแแแแแก แกแแ แแแกแแแแกแแแ. แแฃ แฉแแแ แงแฃแ แแแฆแแแแก แแแแแแแฎแแแแแแ แแ แแแแแแแแจแแแ แแแแแจแแ, แฉแแแ แจแแแแแซแแแ แแแแแจแแ แแ แชแแแขแ แแแแแแแฃแแ แกแแ แแแ แ แแ CDN, แ แแแแแ แแ แแแญแแ แแแแ แกแขแ แแแแแแ แแแกแแแจแ. แแแแก แแแชแแแแ, แ แแ แแขแแแ แแแ แแแแแแแแ sink แกแแ แแแ แแ แแ แแแแแขแแแ แแแแแแขแแแแ แชแแแขแ แแแแแแแฃแ WebSocket แกแแ แแแ แแ, แกแแ แแแกแแก แแแแแแแแ แแแแฌแแแแแ แแแ แแแแแ แแแแฎแแแ แแแแแก Peer-to-peer WebRTC แแแแจแแ แแก แกแแจแฃแแแแแแ.2. แแแแแแ แจแแงแแแแแแแก แแแแแ แแแแแแ
Stadia-แก แจแแกแแฎแแ แ แแ แแแแแฎแฃแแแ, แฎแจแแ แแ แแฎแแแแ แแแแแแ แ แกแขแแขแแแจแ แแแฎแกแแแแแแฃแ WebRTC-แก. แแแแฎแแแ, แ แแ WebRTC แแ แแก แแแแแ แฉแแฃแแ แขแแฅแแแแแแแ แแ แจแแกแแแแจแแแแแ แฆแ แฃแแแแแแแ แแแแแจแแแแก แแแแแกแแงแแแแแแแ. WebRTC แแ แแก แแ แแแฅแขแ, แ แแแแแแช แฃแแ แฃแแแแแงแแคแก แแแ แแ แแฃแแแ แแแกแ แแ แแแแแแฃแ แแแแแแแชแแแแก แ แแแแฃแ แแ แแจแ แแแแฃแแแแแชแแแ แแแ แขแแแ API-แแก แกแแจแฃแแแแแแ. แแก แฃแแ แฃแแแแแงแแคแก peer-to-peer แแแแจแแ แก, แแแขแแแแแแแฃแแแ แแแแแแกแแแแก แแ แแฅแแก แฉแแจแแแแแฃแแ แกแขแแแแแ แขแฃแแ แแแแแแแแ, แ แแแแ แแชแแ VP8 แแ H264.แแ แฃแแแ แแขแแกแแแ แแแแแแญแ แแแแฎแแแ แแแแแก แกแแฃแแแแแกแ แแแแแชแแแแแแแก แฃแแ แฃแแแแแงแแคแแก, แแแแ แ แแแฆแแแ แฎแแ แแกแฎแแก แแ แแคแแแแก แจแแแแ แฉแฃแแแแแก. แแแแแ แแแแจแ แแแ แแแแฃแแ แแแแแแแ แแแแ แแแกแแฆแแแแ. Google Stadia-แก แแฅแแก แแแแแขแแแแแ แแแแแฏแ แกแแ แแแ แแ แแแแแกแแฎแฃแแแแแก แแแแแก แจแแแชแแ แแแแก แแแแแแ, แฎแแแ แฉแแ แฉแแแแ แฃแคแ แ แแแฆแแ แฎแแ แแกแฎแแ แแแแแแชแแแ แแแแแขแแแแแแ แแแแแชแแแแแแ.
3. แแแแแฌแแแแแฃแแ แแแคแ แแกแขแ แฃแฅแขแฃแ แ แแแแแ แแคแแฃแแ แแแ แจแ แฃแขแแ
แแ แแฅแแก แแแแจแแแแแแแ แ แแแแแแแ แแแขแแแแแแ แแแฃแแแ แจแแแฃแแจแแแก แแแแแ แแแแ แแ แแแแ, แฅแกแแแ แแแแแช แแ แแก แแแแแแฌแงแแแขแ แคแแฅแขแแ แ, แ แแแแแแช แงแแแแแแ แแแขแแ แฃแฌแงแแแก แฎแแแก แจแแงแแแแแแแก. แแ แฅแแขแแฅแขแฃแ แแก แฃแแแ แฐแฅแแแแแก แแแแฎแแแ แแแแแแแ แงแแแแแแ แแฎแแแก แกแแ แแแ แแก แแแฌแงแแแแแแแก แแแฅแแแแแแ, แ แแแ แจแแแชแแ แแแก แแ แแฎแ แแแ แแ แ (RTT). แแ แฅแแขแแฅแขแฃแ แแก แฃแแแ แฐแฅแแแแแก 1 แแแแ แแแแแขแแ แ แแ แ แแแแแแแแ แแแแแแ แกแแ แแแ แ, แ แแแแแแแช แแแแแฌแแแแแฃแแแ แแแแ แแกแแคแแแแจแ: แแจแจ แแแกแแแแแแ, แแจแจ แแฆแแแกแแแแแแ, แแแ แแแ, แกแแแแแแฃแ แ, แฉแแแแแ. แงแแแแ แแแแแแ แกแแ แแแ แ แฃแแแ แแงแแก แแแแแแแแ แแแแแแ แแแฃแแ. แกแแกแขแแแแก แจแแฃแซแแแ แจแแชแแแแแก แแแกแ แแแแแฌแแแแแ, แ แแแแกแแช แกแแ แแแ แ แฃแแ แแแแแ แแ แขแแแแแก แฅแกแแแก. แแแ แแแแ, แแแแ แขแ แแคแแแแ, แแแแแขแแแแแ แกแแ แแแ แแแแก แแแแแขแแแ แกแแจแฃแแแแแแก แแซแแแแ แฐแแ แแแแแขแแแฃแ แ แแแกแจแขแแแแ แแแ.4. แแ แแฃแแแ แแก แแแแกแแแแแแแ
แฆแ แฃแแแแแแแ แแแแแจแ แกแแฃแแแแแกแแ, แ แแแแกแแช แแก แงแแแแแแ แแแแแแแก แแแแแฎแแแก แแแแฎแแแ แแแแแแแกแแแ. แแก แแแจแแแแก, แ แแ แจแแกแแซแแแแแแแ แแ แแฃแแแ แจแ แแแจแแแแ. แแ แแฃแแแ แแแ แฎแแแก แฃแฌแงแแแแ แแแแฎแแแ แแแแแแแกแแแแก แ แแช แจแแแซแแแแ แแแแคแแ แขแฃแแก แแแฎแแแแ แแแแแจแแแแก แแแแแชแแแแแแ, แ แแช แแแ แแชแแแก แแ แแแ แแแฃแแ แฃแแ แฃแแแแแงแแคแแกแ แแ แแแแ แแขแฃแ แแก แแแกแขแแแแชแแแกแแแ. แแ แแฃแแแ แแแ แแกแแแ แฎแแแก แฃแฌแงแแแแ แแ แแแแ แแแแขแคแแ แแแก แคแฃแแฅแชแแแแแ แแแแก แแแแแแฃแ แแ แแแกแแขแแ แแแ แกแแแแก แจแแ แแก. แกแแแแแแแแ แแ, WebRTC แแแ แแแ แแ แแก แแฎแแ แแแญแแ แแแ แกแฎแแแแแกแฎแแ แแ แแฃแแแ แจแ.5. แแแแแจแแก แแแขแแ แคแแแกแแกแ แแ แกแแ แแแกแแก แแแแแแ แแแแแฏแแแ
แแ แแฃแงแฃแ แแ แฆแ แฃแแแแแแ แกแแแแแแจแ แกแแ แแแกแก, แ แแแแ แช แแแแขแคแแ แแแก. แงแแแแแก แฃแแแ แจแแแซแแแก แ แแแแแก แแแแแแจแแ แแแ แแแแขแคแแ แแแกแแแ. แแฎแแ แแแแแ แแแแแแLibRetro แฆแ แฃแแแแแแแ แแแแแจแแแแก แกแแ แแแกแแ, แ แแแแแ LibRetro แแแแแแแแแ แฃแแแแแแแกแ แแแแแจแแก แแแฃแแแขแแ แแก แแแขแแ แคแแแกแก แ แแขแ แ แแแแแจแแแแกแแแแก, แ แแแแ แแชแแ SNES, GBA, PS.6. แแแแฎแแแ แแฃแแขแแแแแแแแจแแกแแแแก, แแ แแแก แแแแแจแแกแแแแก แแ แแแแแจแแแ แแแ แ แแแแจแแ แแกแแแแก (deep-link).
CloudRetro แแฎแแ แก แฃแญแแ แก แแแแ แแฎแแ แแแแแจแก, แ แแแแ แแชแแ CrowdPlay แแ Online MultiPlayer แ แแขแ แ แแแแแจแแแแกแแแแก. แแฃ แ แแแแแแแแ แแแแฎแแแ แแแแแ แแแฎแกแแแก แแ แแกแ แแ แแแแแ แฆแ แแ แแแฃแแก แกแฎแแแแแกแฎแแ แแแแแแฃแขแแ แแ, แแกแแแ แแแแแแฎแแแแ แแ แแกแ แแ แแแแแ แแแแแจแก แแแจแแแแฃแแก แแ แจแแซแแแแแ แแแกแจแ แจแแแ แแแแแก.แฃแคแ แ แแแขแแช, แแแแแจแแก แแแแแแแ แแแแแแ แแแแฎแแแ แฆแ แฃแแแแแแ แกแแชแแแจแ. แแก แกแแจแฃแแแแแแก แแซแแแแก แแแแฎแแแ แแแแแแก แแแแแ แซแแแแ แแแแแจแ แแแแแกแแแแ แแ แแก แแแแแกแแแแ แกแฎแแ แแแฌแงแแแแแแแแแ.
7. แฐแแ แแแแแขแแแฃแ แ แกแแแแแ แแแ
แ แแแแ แช แแฆแแกแแฆแแแแแ แแแแแกแแแแ แ SAAS, แฆแ แฃแแแแแแแ แแแแแจแ แฃแแแ แแงแแก แจแแแฃแจแแแแแฃแแ แฐแแ แแแแแขแแแฃแ แแ แแแกแจแขแแแแ แแแแแ. แแแแ แแแแแขแแ แ-แแฃแจแแแแก แแแแแแแ แกแแจแฃแแแแแแก แแแซแแแแ แแแแแแขแแ แแแขแ แแฃแจแ แฃแคแ แ แแแข แขแ แแคแแแก.8. แแ แแ แแก แแแแจแแ แ แแ แ แฆแ แฃแแแแแแ
CloudRetro-แก แแแคแ แแกแขแ แฃแฅแขแฃแ แ แแแกแแแแซแแแแก แกแฎแแแแแกแฎแแ แฆแ แฃแแแแแแ แแ แแแแแแแ แแแแ (Digital Ocean, Alibaba, แกแแแแแ แแ แแแแแแแ แ) แกแฎแแแแแกแฎแแ แ แแแแแแแกแแแแก. แแ แแแแฅแขแแฃแ แแ Docker แแแแขแแแแแ แจแ แแแจแแแแแก แแแคแ แแกแขแ แฃแฅแขแฃแ แแกแแแแก แแ แแแแแแคแแแฃแ แแ แแ แฅแกแแแแก แแแ แแแแขแ แแแก bash แกแแ แแแขแแก แแแแแงแแแแแแ, แ แแแ แแแแแแแ แแแแชแแแแ แฉแแแแขแแ แแ แ แฆแ แฃแแแแแแ แแ แแแแแแแ แจแ. แแแแก แแแแแแแแชแแแ NAT Traversal-แแแ WebRTC-แจแ, แฉแแแ แจแแแแแซแแแ แแแฅแแแแแก แแแฅแแแแแแ แแแแแแแแแกแแ CloudRetro แแแแแกแแแแ แฆแ แฃแแแแแแ แแแแขแคแแ แแแแ แแ แแฃแแแแช แแแแแกแแแแ แ แแแแฎแแแ แแแแแก แแแแฅแแแแแแ.แฒแ แฅแแขแแฅแขแฃแ แฃแแ แแแแแแแ
แแแแแแจแ แแแแแ: (แแ แแแแแ แแแฎแกแแแแแ แแแแแแแก แกแแ แแแ แ) แแแ แแแแแแก แแแแแจแแแก, แแฌแแ แแแแแก แแแแแ แแแแก แแแแกแแแแแก แแ แแฌแแแแก แแแจแแคแ แฃแ แแแแแแก แแแแฎแแแ แแแแแแก. แแฃแจแแแ แแแกแขแแแชแแแแ แแแฌแแแแแแ แแแแ แแกแแคแแแแจแ แแ แแแแแแฃแ แแฃแจแแแก แจแแฃแซแแแ แแ แแแ แแฃแแแ แแแฃแแแแแแแแก แแแแฎแแแ แแแแแก แแ แแแแ แกแแกแแแก.
แฒแแแ แแแแแขแแ แ: แแแกแฃแฎแแกแแแแแแแแ แแฎแแแ แแแแฎแแแ แแแแแก แแแฌแงแแแแแแแแ แกแขแ แแแแแแแกแแแแก แงแแแแแแ แจแแกแแคแแ แแก แแฃแจแแแแแ. แแแแ แแแแแขแแ แ แฃแ แแแแ แแฅแแแแแแก แแฃแจแแแแแ WebSocket-แแก แกแแจแฃแแแแแแ.
แแแแแจแแก แแแแแแแ แแแแแก แจแแแแฎแแ: แชแแแขแ แแแฃแ แ แแแกแขแแแชแแฃแ แ แกแแชแแแ แแแแแจแแก แงแแแแ แแแแแแแ แแแแแกแแแแก. แแก แกแแชแแแ แฃแแ แฃแแแแแงแแคแก แแแแจแแแแแแแแ แคแฃแแฅแชแแแแก, แ แแแแ แแชแแ แแแกแขแแแชแแฃแ แ แจแแแแฎแแ/แฉแแขแแแ แแแ.
CloudRetro-แก แฃแแแฆแแแกแ แแแแแก แแ แฅแแขแแฅแขแฃแ แแแแ แแแแฃแแ แกแแ แแแขแ
แ แแแแกแแช แแฎแแแ แแแแฎแแแ แแแแแ แฎแกแแแก CloudRetro-แก 1 แแ 2 แแแแแฏแแแจแ, แ แแแแแแแช แแแฉแแแแแแแ แฅแแแแแ แแแชแแแฃแ แคแแแฃแ แแจแ, แแแแ แแแแแขแแ แ แฎแแแแแกแแฌแแแแแ แแฃแจแแแแแแก แกแแแกแแแ แแ แแแ แแแฎแแแแแ แแแ แแแ แแแแ แแแ. แแแแก แจแแแแแ, แแ-3 แกแแคแแฎแฃแ แแ แแแแแแขแ แแแแแแก แจแแคแแ แฎแแแแแก แงแแแแ แแแแแแแแขแแกแแแแก HTTP แแแแ แแแแฎแแแแแก แแแแแงแแแแแแ. แจแแคแแ แฎแแแแแแก แแก แกแแ แจแแแแแ แฃแแ แฃแแแแแ แแแแ แแแแแขแแ แก, แ แแแ แแแ แแแแแแแแแก แงแแแแแแ แจแแกแแคแแ แแกแ แแฃแจแแแ แแแแฎแแแ แแแแแก แแแแกแแฎแฃแ แแแแแกแแแแก. แแแแแฏแ 4 แฅแแแแแ แฅแแแแก แแแแแจแก. แแแแงแแ แแแฃแแแ WebRTC แแแแแแแก แแแแจแแ แ แแแแฎแแแ แแแแแกแ แแ แแแแแแแแฃแ แแฃแจแแแก แจแแ แแก.
แแแแฎแแแ แแแแแก แกแแ แแแขแ แฌแแแแแแก แแแฆแแแแก แจแแแแแแ แ แแ แแก แแฃแจแแก แจแแแแแ
แแแแแจแแก แแ แแแแแแแก แแแแกแแแแแแแ แแแแฎแแแ แแฃแจแแแแก แจแแแแแ แแแแแแ แแแฃแแแ แแ แแฅ แชแแแแก แแแคแแ แแแชแแแก แแแขแแ แคแแแกแแก แแแจแแแแแแ. แแแแแแแ, แแก แแแแฃแแแแแชแแ แฎแแ แชแแแแแแแ แแแฎแกแแแ แแแแจแ แแแแแชแแแแแแก แแแแแชแแแแก แแแแ
แแแแแแแแก แแ แฎแแแ แแแแแ แแ แแชแแกแจแ. แจแแแแแแ แแแแแแ แแ แแก แกแแแ แแแแชแแ, แ.แ. แแแแแจแแก แแแแแฃแแแแแแแแ แแแจแแแแ แกแฎแแ แแ แแชแแกแจแ.
แแฃแจแ แแแแแแแแแขแแแแก แฃแ แแแแ แแฅแแแแแแแซแแ แแแแแ แแแแแแแแแขแแแ:
- WebRTC: แแแแแแขแแก แแแแแแแแแขแ, แ แแแแแแช แแฆแแแก แแแแฎแแแ แแแแแก แจแแงแแแแแก แแ แแแแแแฅแแก แแแจแแคแ แฃแแ แแแแแ แกแแ แแแ แแแแ.
- แแแแแจแแก แแแฃแแแขแแ แ: แแแแแจแแก แแแแแแแแแขแ. Libretro แแแแแแแแแแแก แฌแงแแแแแแ, แกแแกแขแแแแก แจแแฃแซแแแ แแแแแจแแก แแแจแแแแ แแแแแ แแ แแชแแกแแก แจแแแแแ แแ แจแแแแแแแ แฉแแญแ แแก แแแแแ แแ แจแแงแแแแแก แแแแแแ.
- แแแแแจแจแ แแ แกแแแฃแแ แคแ แแแแแแ แแฆแแ แแชแฎแแแ แแ แแแแแแแแแ แแแแแแแ แจแ.
- แแแแแกแแฎแฃแแแแแก/แแฃแแแ แจแแคแ แแขแแ แ: แแแแแ แแแแก แแแแกแแแแแ, แ แแแแแแช แแฆแแแก แแแแแ แฉแแ แฉแแแแก, แแแจแแคแแ แแแก แแแ แคแแแแ แแ แแแแแแฅแแก แแแแแ แแแฃแแ แกแฃแ แแแแแ/แแฃแแแ.
ะ ะตะฐะปะธะทะฐัะธั
CloudRetro แแงแ แแแแแ WebRTC-แก, แ แแแแ แช แแแก แฎแแ แฎแแแแ แขแแฅแแแแแแแแก, แแแแขแแ แกแแแแ Golang-แแก แแแแฎแแ แชแแแแแแแก แแแขแแแแแก แฉแแแฃแฆแ แแแแแ, แแแแแแฌแงแแแขแ แแแกแแฃแแ แ แแแแแ WebRTC-แแ. แแก แแ แแก แกแแแชแแ แ แขแแฅแแแแแแแ, แ แแแแแแช แแแแแ แแแแแฎแแแ แ แแแแแแแก แแแแแชแแแแแแก แฅแแแแแแ แ แจแแงแแแแแแแก แแแฆแฌแแแแจแ.
WebRTC
WebRTC แจแแฅแแแแแแ แแแแกแแแแก, แ แแ แฃแแ แฃแแแแแงแแก แแแฆแแแ แฎแแ แแกแฎแแก peer-to-peer แแแแจแแ แแแ แแจแแแแแฃแ แแแแแแฃแ แแแแแกแ แแ แแ แแฃแแแ แแแแ แแแ แขแแแ API-แแแแก แแแแแงแแแแแแ.
NAT Traversal
WebRTC แชแแแแแแแ แแแแแกแ NAT Traversal แคแฃแแฅแชแแแแแ แแแแ. WebRTC แจแแฅแแแแแแ แแแแแขแแแแแแแ แฃแ แแแแ แแแแแกแแแแก. แแแกแ แแแแแแแ แแแแแแ แงแแแแแแ แจแแกแแคแแ แแกแ แแแ แแแแแ แ แแแ แจแ แฃแขแ, แแแแแแแ แแแชแแแแก NAT แแแ แแแญแแแแ แแ แคแแแแ แแแแแแ แแแแแขแแแแแแแ แแแแฃแแแแแชแแแกแแแแก แแ แแชแแกแแก แกแแจแฃแแแแแแ, แ แแแแแกแแช แ.แฌ.
ICE . แ แแแแ แช แแ แแ แแชแแกแแก แแแฌแแแ, WebRTC API แแแฃแแแแก แแฅแแแแก แกแแฏแแ แ IP แแแกแแแแ แแก STUN แกแแ แแแ แแแแก แแแแแงแแแแแแ แแ แแแแแกแชแแแก แแแก แกแแ แแแแ แกแแ แแแ แแ (แฒแฒแฒแฒ แฒฃแฒแฒแฒแฒ ) แ แแชแ แแแ แแแแแ แ แแแแจแแ แแก แแแแงแแ แแแ แจแแฃแซแแแแแแแ.แแฃแแชแ, CloudRetro แกแ แฃแแแ แแ แแงแแแแแก แแ แคแฃแแฅแชแแแก. แแแกแ แแแแแขแแแแ แจแแ แแก แแแแจแแ แแแ แแ แแ แกแแแแแก แแแแฎแแแ แแแแแแก แจแแ แแก, แแ แแแแ แแแแฎแแแ แแแแแแกแ แแ แฆแ แฃแแแแแแ แกแแ แแแ แแแก แจแแ แแก. แแแแแแแก แกแแ แแแ แแก แแฎแแ แแก แแฅแแก แแแแแแแ แแแ แแแแแ แ แแแแฃแแแแแชแแแก แจแแแฆแฃแแแแแ, แแแแ แ แขแแแแฃแ แ แแแแฎแแแ แแแแแก แแแฌแงแแแแแแแ. แแก แกแแจแฃแแแแแแก แแแซแแแแ แฌแแแแกแฌแแ แแแฎแกแแแ แจแแแแแแแแแ แแแ แขแแแ แแ แแแแแแงแแแแ แกแแฏแแ แ IP แแแกแแแแ แแแแ แแแ แแแแแ , แ แแแแแ แกแแ แแแ แ แแ แแแแก NAT-แแก แฃแแแ.
แแแ แ แแแแแแแ แแแแแแแฅแชแแ แแ แแแฅแขแ Cloud Gaming-แแกแแแแก แแแแแจแแก แแแแแฌแแแแแแก แแแแขแคแแ แแแ. แแแแ แแงแ แแแแแจแแก แจแแแฅแแแแแแแก แแแแชแแ แกแแจแฃแแแแแ แแแแฌแแแแแแแแ แแแแแจแแแ แแ แกแขแ แแแแแแแก แ แแกแฃแ แกแแแ. แแ แแแแฎแแแ แแแแแแ แฃแจแฃแแแแ แแแฃแแแแจแแ แแแแ แแ แแแแแแแ แแแก. แแ แแแชแแแขแ แแแแแแแฃแแ แแแแ, CloudRetro แแ แแก แแฎแแแแ แฉแแ แฉแ แแแกแแแ แแฎแแ แแก แแแแแแแก แ แแกแฃแ แกแแแแก แแแแฎแแแ แแแแแแแแ แแแกแแแแแจแแ แแแแแ, แ แแช แแแก แฃแคแ แ แแแกแจแขแแแฃแ แก แฎแแแก, แ แแแแกแแช แแก แแฆแแ แแ แแก แฐแแกแขแแแแ. WebRTC NAT Traversal-แแก แ แแแ แแฅ แซแแแแแ แแแแจแแแแแแแแแแ, แ แแแ แฎแแแ แจแแฃแฌแงแแก แแแแแขแแแแแแแ แแแแจแแ แแก แแแแชแแแแแแแชแแแก แแแกแแแ แแฎแแ แแก แแแแแแแก แ แแกแฃแ แกแแแแ, แ แแช แแแฃแแแแแแแแก แจแแแฅแแแแแก แฅแกแแแแแ แแแแแแจแแ แแแแก.
แแแแแ แจแแแฃแแจแแ
แแแแแ แจแแแฃแแจแแ แแ แแก แแแแกแแแแแแก แจแแฃแชแแแแแ แแแฌแแแ แแ แแแแแ แฃแฌแงแแแก แฎแแแก แแแฃแ แแแแแแก. แแแฃแฎแแแแแแ แแแแกแ, แ แแ แแ แแ แแก แแฃแชแแแแแแแ VP8/H264 แแแแแ แแแแแ แแแแก แงแแแแ แแแขแแแแก แชแแแแ, แชแแแแแแแก แแแแแแ แแแแแฎแแแ แแแแ แแแแชแแแ แแแแแแแก แแแแแแก แกแแฉแฅแแ แแก แแแ แแแแขแแแก, แแแแแ แแแ แแแฃแแแแแแแ แฅแชแแแ แแ แจแแชแแแแแ แจแแงแแแแแแ.
แแแแแแแก แกแแ แแแกแแกแแแแก แแแแแแก แจแแแฃแแจแแ แ แแฃแแแ, แ แแแแแ แแแแแ แแแแแ แฃแแแ แฃแแ แฃแแแแแงแแก, แ แแ แแแแแ แแแแก แแแแแแแ แแ แ + แฅแกแแแแก แแแแแชแแแแก แแ แ + แแแแแแแ แแแแก แแ แ แ แแช แจแแแซแแแแ แแแแแแ แแงแแก. แแแ แแ แแแแกแ, แแแแแ แแแแก แแ แแชแแกแ แฃแแแ แแงแแก แแแแแแแแแแ แฃแแ แแ แฃแฌแงแแแขแ. แแแแแแ แแ แแแแแ แแแแก แแแแแแขแแแชแแ แแ แแแแแแงแแแแแ - แแแแแแแแแ, แฉแแแ แแ แจแแแแแซแแแ แฃแแแ แแขแแกแแแ แแแแแแญแแ แแแแแ แแแแก แฎแแแแ แซแแแ แแแ แแแแก แคแแแแแก แแชแแ แ แแแแแกแ แแ แแแแแแแ แแแแก แแ แแก, แแ แแแแแแแงแแแแ แแ แแแแแแแแแแแ แฃแแ แจแแแฃแแจแแ.
แแแแแ แจแแแฃแแจแแแก แแแแ แแ แแก แแแคแแ แแแชแแแก แแ แแกแแญแแ แ แแแฌแแแแก แแฆแแแคแฎแแ แ, แฎแแแ แแแแฎแแแ แแแแแแแกแแแแก แกแแแฃแกแขแแก แแแกแแฆแแแ แแแแแก แจแแแแ แฉแฃแแแแ. แชแแแแแฃแแ แกแขแแขแแแฃแ แ แแแแแกแแฎแฃแแแแแก แฉแแ แฉแแแแแก แแแจแแคแแ แแก แแแ แแ, แแแแแ แแแแ แแแแแแก แแแแแแแแ แ แแแแ แแแก แฌแแแ แแ แแแแแแแแ แฉแแ แฉแแแแแแแ, แแกแ แ แแ แแฎแแแแ แแแแ แแแแกแฎแแแแแแ แแแแแแแแแ. แ แแแแ แช Pacman-แแก แแแแแแแแแแแ แฉแแแก, แแฎแแแแ แแแคแแ แแแชแแแแฃแ แ แฌแแ แขแแแแแ แแแแแแชแแแ.
แแแแแ แฉแแ แฉแแแแแก แจแแแแ แแแ Pacman-แแก แแแแแแแแแก แแแแแงแแแแแแแแฃแแแ แจแแแฃแแจแแ
แแแแแแแแฃแ แแ, แแฃแแแ แจแแแฃแแจแแแก แแแแแ แแแแ แแแแแขแแแแแก แแแแแชแแแแแก, แ แแแแแแแช แแแ แแฆแแฅแแแแก แแแแแแแแแแก. Opus แแแแแแแ แกแแฃแแแแแกแ แจแแกแ แฃแแแแแก แแฃแแแ แแแแแแแ. แแแ แจแแฅแแแแแแ แแฃแแแ แขแแแฆแแก แแแแแกแแชแแแแ แจแแแแแแแแ แแแขแแแ แแแแก แแ แแขแแแแแแ, แ แแแแ แแชแแ RTP (Real Time Transport Protocol). แแแกแ แจแแงแแแแแแ แฃแคแ แ แแแแแแแ แแแแ แ mp3 แแ aac, แฎแแแ แฎแแ แแกแฎแ แฃแคแ แ แแแฆแแแแ. แจแแงแแแแแแ แฉแแแฃแแแแ แแ แแ แแก แแแแฎแแแแแแ 5-66,5ms.
Pion, WebRTC แแแแแแแจแ
แแแแแ แแ แแก แฆแแ แแแแแก แแ แแแฅแขแ, แ แแแแแแช WebRTC-แก Golang-แจแ แแแแฅแแก. แแจแแแแแฃแ แ C++ WebRTC แแแแแแแแแแแแแก แฉแแแฃแแแแ แแแ แจแแคแฃแแแแก แแแชแแแแ, Pion แแ แแก WebRTC-แแก แแจแแแแแฃแ แ Golang แแแแแแแแแขแแชแแ แฃแแแแแกแ แจแแกแ แฃแแแแแ, Go แแแขแแแ แแชแแแ แแ แแแ แกแแแก แแแแขแ แแแแ WebRTC แแ แแขแแแแแแแแ.แแแแแแแแแแ แแกแแแ แกแแจแฃแแแแแแก แแซแแแแก แกแขแ แแแแแแก แแแแ แ แจแแกแแแแจแแแแ แฉแแจแแแแแฃแแ แแแแแแขแแ แแ แฅแแแแแแ แ แจแแงแแแแแแแ. แแแก แแฅแแก STUN, DTLS, SCTP แแ แ.แจ. แกแแแฃแแแ แ แแแแแแแแแขแแชแแ. แแ แ แแแแแแแแ แแฅแกแแแ แแแแแขแ QUIC-แแ แแ WebAssembly-แแ. แแก แฆแแ แแแแแก แแแแแแแแแแ แแแแแกแแแแแ แแแ แแแแช แแแ แแ แกแแกแฌแแแแ แ แแกแฃแ แกแแ แจแแกแแแแจแแแแ แแแแฃแแแแขแแชแแแ, แฅแกแแแแก แแ แแขแแแแแแก แแแแแ แแแแ แแ แแแแแ แ แแแแแแแแแแแ.
Pion แกแแแแแแแแแแ, แ แแแแแกแแช แฎแแแแซแฆแแแแแแแแก แซแแแแแ แแแแแแแแ แจแแแแฅแแแแ, แกแแแแแแ แชแแชแฎแแแแ, แแแแ แ แฎแแ แแกแฎแแแแ แแแกแแฃแกแแ แแแแแแแแ แแแแก WebRTC-แแ. แแฃ แแฅแแแ แแแแแขแแ แแกแแแฃแแ แฎแแ แ แแ แขแแฅแแแแแแแแ, แจแแแแแแแแ แแแแ
http://pion.ly/slack - แแแแ แแฎแแแก แแแแแแแ.CloudRetro-แก แฌแแ แ Golang-แจแ
แแฃแจแแก แแแแแ แแแ แแ-แจแแแแแแแแ แแ แฎแแแแ แแแฅแแแแแแแจแ
Go-แก แแแแแแ แแ แฎแแก แแแแแแแแก แฌแงแแแแแแ, แฆแแแแกแซแแแแแก แกแขแ แแแแแแแกแ แแ แแแแแฃแ แแแขแฃแแแแแก แแ แแแแแแแแ แแแแจแแแแแแแแแ แแแแแ แขแแแแแฃแแแ. แ แแแแ แช แแแแแ แแแแจแ, แกแฎแแแแแกแฎแแ GoRoutine-แก แแฅแแก แแ แแแแแ แแแแแแแแแขแ, แ แแแแแแช แแฃแจแแแแก แแแ แแแแแฃแ แแ. แแแแแแฃแแ แแแแแแแแแขแ แแแ แแแแก แแแแแก แแแแแแแ แแแแแก แแ แฃแ แแแแ แแแแก แแ แฎแแแแ. แแแแแแแแก แจแแ แฉแแแแแ แแขแแแชแแแ แแแซแฃแแแแก แแ แแ แแขแแแฃแ แ แแแแแแแแก แแแแฃแจแแแแแแก แงแแแแ แฏแแ แแ แแแแแจแจแ (แแแแแจแแก แขแแแ). แแก แแแจแแแแก, แ แแ แแ แแแแแแแแกแแแแก แฉแแแแขแแ แแ แแ แแก แกแแญแแ แ. แแแแแแแแแ, แ แแแแกแแช แแแแฎแแแ แแแแแ แแแแฎแแแก, โโแกแแญแแ แแ แแแแแจแแก แแแแแแแ แแแแแก แกแ แฃแแ แกแฃแ แแแ. แแก แแแแแแแ แแแแ แฃแแแ แแแ แฉแแก แฃแฌแงแแแขแ, แจแแแแ แกแแกแขแแแแจแ แจแแแแฎแแแก แแแกแ แฃแแแแแแแ. แแแแแแฃแแ แแแแแจแแก แขแแแแก แแ แแก, backend-แก แจแแฃแซแแแ แแแฃแแแแแแแแก แแฎแแแแ แจแแแแฎแแแก แแ แจแแงแแแแแก แแแแ แแชแแแก, แ แแช แแ แแชแแกแแก แซแแคแก แฃแกแแคแ แแฎแแก แฎแแแก.
func (e *gameEmulator) gameUpdate() { for { select { case <-e.saveOperation: e.saveGameState() case key := <-e.input: e.updateGameState(key) case <-e.done: e.close() return } } }
แแฃแแจแแแแขแแแแแ แแ แจแแแแกแแแ/Fan-out
แแก Golang แจแแแแแแ แแแแแแฃแ แแ แแ แแแแ แฉแแแก CrowdPlay-แก แแ Multiple Player-แแก แแแแแงแแแแแแก. แแ แแแแฃแจแแก แแแฎแแแแแ, แแ แ แแแแฎแจแ แแแแฎแแแ แแแแแก แงแแแแ แจแแงแแแแ แฉแแจแแแแแฃแแแ แชแแแขแ แแแฃแ แจแแกแแกแแแแ แแ แฎแจแ. แแแแแจแแก แแแแแ แจแแแแแ แแแแแแแแแฃแแแ แงแแแแ แแแแฎแแแ แแแแแกแแแแก แแแแแ แแแแฎแจแ. แแ แแแแ แฉแแแ แแแแแฆแฌแแแ แแแแแจแแก แแแแแแแ แแแแแก แแแงแแคแแก แกแฎแแแแแกแฎแแ แแแแฎแแแ แแแแแก แ แแแแแแแแ แแแแแจแแก แกแแกแแแก แจแแ แแก.
แกแแแฅแ แแแแแแชแแ แกแฎแแแแแกแฎแแ แกแแกแแแแก แจแแ แแกแแแแแแแแก แแแแแแแแแแแแแ
แแแแแแแ แแ แแ แแก แกแ แฃแแงแแคแแแ. แแ แฎแ แแแแแ. แแแแแแแแแกแแแ แจแแแแ แแแแ, Go แแ แฎแ แฃแแ แแแแ แฃแคแ แ แแแ แขแแแ แแแแ แแ แแแ แแฃแแ แแ แแแแแแแแแ แแแแแแแแแแก แแแกแแแฃแจแแแแแแแ, แแแแ แแ แแ แฎแ แแ แแซแแแแ แกแแฃแแแแแกแ แจแแกแ แฃแแแแแก. แแ แฎแแก แฅแแแจ แแ แแก แ แแฃแแ แแแแแแแแแก แแแแแแ. แแกแ แ แแ, แแ แจแแแแขแแแ แแแ แแแแฃแแ แแแ แแฅแขแแ แแแ แแแแฎแแ แชแแแแแแแจแ, แฎแแแแฎแแ แแแแแแแงแแแ แกแแแแขแแแ แแ แแขแแแฃแ แ แแแแจแแแแแแแแแ แแ แฎแแแแก แแแแแชแแแแกแแก แจแแกแ แฃแแแแแก แแแขแแแแแแชแแแก แแแแแแ.
แแแ แแ แแแแกแ, แแแแแแแจแ แแแแแแก แจแแแแ แแแแแแแ แฃแแแ แแแแแ, แ แแช แแแแฏแแ แกแแแญแแแ แฎแแแแ แซแแแ แแแฃแแแแก แแฌแแแแก. แแก แแแแแ แแ แแแ แ แแแแฃแ แแ แแจแ แแแแแแแก แแแแแแแชแแแจแ.
COG
แแ แแแฅแขแ แแงแแแแแก แแ แกแแแฃแ แฆแแ แแแแแก Golang VP8/H264 แแแแแแแแแแแก แแแแแแก แจแแแฃแแจแแแกแแแแก แแ Libretro-แก แแแแแจแแก แแแฃแแแขแแ แแแแกแแแแก. แงแแแแ แแก แแแแแแแแแแ แฃแแ แแแแ แแ แแก C แแแแแแแแแแแก แจแแคแฃแแแ Go-แจแ
COG . แแแแแแ แแ แฃแแ แงแแคแแแ แแฎแแ แ แฉแแแแแแแแแแแแแแ แฉแแแแแก แแก แแแกแขแ . แแ แแแแแแแแ, แ แแแแแแแช แจแแแฎแแแ:- CGO-แจแ แแแแ แแแก แแแญแแ แแก แจแแฃแซแแแแแแแ, แแฃแแแแช Golang RecoveryCrash-แแ;
- แจแแกแ แฃแแแแแก แจแแคแแ แฎแแแแแแก แแแแแแแแแแก แจแแฃแกแ แฃแแแแแแแ, แ แแแแกแแช แฉแแแ แแแ แแแฎแแ แฎแแแ CGO-แจแ แแแขแแแฃแ แ แแ แแแแแแแแแก แแฆแแแฉแแแแก.
แแแกแแแแ
แแ แแแแแฆแฌแแ แฉแแแก แแแแแแก, แแแแแแ แฆแ แฃแแแแแแแ แแแแแจแแแแก แกแแ แแแกแแแ แแ แจแแแฅแแแ แแแแขแคแแ แแ, แ แแแแแแช แแแฎแแแ แแแ แฉแแแก แแแแแแ แแแแแ แแ แแแ แแแกแขแแแแแฃแ แ แ แแขแ แ แแแแแจแแแแก แแแแแแ แแแแแจแ. แแก แแ แแแฅแขแ แจแแฃแซแแแแแแ แแฅแแแแแแ แแแแแแก แแแแแแแแแแแกแ แแ แแแแแแก แกแแแแแแแแแแแก แแฎแแ แแแญแแ แแก แแแ แแจแ. แซแแแแแ แแแแแแแแแ แแแ แแแกแ แแแขแแแกแแฃแ แ แแแแแแแแ แแแแกแแแแก. WebRTC-แแกแ แแ Pion-แแก แแแแ แแแฌแแแแแฃแแ แแแ แขแแแ API-แแแ แฃแแ แฃแแแแแงแแคแแ แฃแฌแงแแแข แแแขแแแ แแชแแแก. แแแแชแแคแชแแแก แฉแแแ แแแ แแแแ แแขแแแชแแแฃแแแแ แแแแแฅแแแงแแแ แแแแแ แแแแ แแจแ, แแแฃแฎแแแแแแ แแแแกแ, แ แแ แฌแแแแกแฌแแ แแ แแฅแแแแ แชแแแแ แแแแแขแแแแแแแ (P2P) แแแแฃแแแแแชแแแก แจแแกแแฎแแ.
แแแขแแแ แแชแแแก แกแแแแ แขแแแแก แแแฃแฎแแแแแแ, P2P แแแแแแ แแแ แแแแช แซแแแแแ แ แแฃแแ แกแคแแ แแ แแแแแแฃแขแแ แฃแ แแแชแแแแ แแแแจแ. แแแก แฃแแแ แแแฃแแแแแแแแก แแ แซแแแแแแแแแ แฅแกแแแแก แแ แฅแแขแแฅแขแฃแ แแก แกแแ แแฃแแแก, แ แแแแ แแชแแ IP แแ NAT, แ แแแ แจแแฅแแแแก Peer-to-peer แกแแกแแ. แแ แแ แแแฅแขแแ แแฃแจแแแแแกแแก, แแ แแแแแฆแ แแแแ แ แฆแแ แแแฃแแ แชแแแแ แฅแกแแแแก แแ แจแแกแ แฃแแแแแก แแแขแแแแแแชแแแก แจแแกแแฎแแ, แแแแขแแ แงแแแแแก แแแแฃแฌแแแแ, แกแชแแแแ P2P แแ แแแฃแฅแขแแแแก แจแแฅแแแ WebRTC-แแก แแแแแงแแแแแแ.
CloudRetro แแแแแแแกแฌแแแแแก แแแแแงแแแแแแก แงแแแแ แจแแแแฎแแแแแก, แ แแกแแช แแแแแแ แฉแแแ, แ แแแแ แช แ แแขแ แ แแแแแแแจแแก แแแ แกแแแฅแขแแแแแแ. แแฃแแชแ, แแคแแฅแ แแ, แ แแ แแ แแแฅแขแจแ แแแแ แ แกแคแแ แแ, แ แแแแแแ แแแฃแแฏแแแแกแแแแช แจแแแแซแแแ, แแแแแแแแแ, แฅแกแแแแก แฃแคแ แ แกแแแแแแ แแ แแคแแฅแขแฃแ แแแ, แแแแแจแแก แฃแคแ แ แแแฆแแแ แฎแแ แแกแฎแแก แแ แแคแแแแก แฃแแ แฃแแแแแงแแคแ, แแ แแแแแจแแแแก แแแแฎแแแ แแแแแแก แจแแ แแก แแแแแแ แแแแก แจแแกแแซแแแแแแแ. แแแแแ แแแแ แก แแแฃแจแแแ. แฒแแฎแแ แแแแแแงแแแ
แแ แแแฅแขแ แแ แแฎแแ แ แแแฃแญแแ แแ แแฃ แแแแฌแแแ.
แฌแงแแ แ: www.habr.com