83 lines
6.6 KiB
TeX
83 lines
6.6 KiB
TeX
\babel@toc {czech}{}\relax
|
|
\contentsline {section}{\numberline {1}Úvod}{8}{section.1}%
|
|
\contentsline {section}{\numberline {2}Distribuované systémy}{9}{section.2}%
|
|
\contentsline {subsection}{\numberline {2.1}Architektury}{9}{subsection.2.1}%
|
|
\contentsline {subsubsection}{\numberline {2.1.1}Softwarová architektura}{9}{subsubsection.2.1.1}%
|
|
\contentsline {subsubsection}{\numberline {2.1.2}Systémové architektury}{10}{subsubsection.2.1.2}%
|
|
\contentsline {subsection}{\numberline {2.2}Komunikace}{11}{subsection.2.2}%
|
|
\contentsline {subsubsection}{\numberline {2.2.1}Modely pro komunikaci}{11}{subsubsection.2.2.1}%
|
|
\contentsline {subsection}{\numberline {2.3}Počítačová Síť}{12}{subsection.2.3}%
|
|
\contentsline {subsection}{\numberline {2.4}Komunikace v síti}{13}{subsection.2.4}%
|
|
\contentsline {subsubsection}{\numberline {2.4.1}Rodina protokolů TCP/IP}{13}{subsubsection.2.4.1}%
|
|
\contentsline {subsection}{\numberline {2.5}Protokoly v aplikační vrstvě}{15}{subsection.2.5}%
|
|
\contentsline {subsubsection}{\numberline {2.5.1}HTTP}{15}{subsubsection.2.5.1}%
|
|
\contentsline {subsubsection}{\numberline {2.5.2}HTTP/3}{16}{subsubsection.2.5.2}%
|
|
\contentsline {subsection}{\numberline {2.6}Protokoly v transportní vrstvě}{16}{subsection.2.6}%
|
|
\contentsline {subsubsection}{\numberline {2.6.1}TCP}{17}{subsubsection.2.6.1}%
|
|
\contentsline {subsubsection}{\numberline {2.6.2}UDP}{18}{subsubsection.2.6.2}%
|
|
\contentsline {subsubsection}{\numberline {2.6.3}QUIC}{18}{subsubsection.2.6.3}%
|
|
\contentsline {subsection}{\numberline {2.7}Sokety}{20}{subsection.2.7}%
|
|
\contentsline {subsection}{\numberline {2.8}Asynchroní vstupně výstupní operace}{21}{subsection.2.8}%
|
|
\contentsline {subsubsection}{\numberline {2.8.1}ZeroMQ}{21}{subsubsection.2.8.1}%
|
|
\contentsline {subsubsection}{\numberline {2.8.2}Work stealing}{21}{subsubsection.2.8.2}%
|
|
\contentsline {subsubsection}{\numberline {2.8.3}Async/Await}{21}{subsubsection.2.8.3}%
|
|
\contentsline {subsubsection}{\numberline {2.8.4}Boost Asio}{22}{subsubsection.2.8.4}%
|
|
\contentsline {section}{\numberline {3}Hra}{23}{section.3}%
|
|
\contentsline {subsection}{\numberline {3.1}Softwarová Architektura}{23}{subsection.3.1}%
|
|
\contentsline {subsubsection}{\numberline {3.1.1}Entity-Component-System}{24}{subsubsection.3.1.1}%
|
|
\contentsline {subsection}{\numberline {3.2}Engine}{24}{subsection.3.2}%
|
|
\contentsline {subsubsection}{\numberline {3.2.1}Fyzický engine}{24}{subsubsection.3.2.1}%
|
|
\contentsline {subsubsection}{\numberline {3.2.2}Vykreslování}{25}{subsubsection.3.2.2}%
|
|
\contentsline {subsubsection}{\numberline {3.2.3}Entt}{25}{subsubsection.3.2.3}%
|
|
\contentsline {subsubsection}{\numberline {3.2.4}Stav hry}{26}{subsubsection.3.2.4}%
|
|
\contentsline {subsection}{\numberline {3.3}Hra více hráčů}{26}{subsection.3.3}%
|
|
\contentsline {subsection}{\numberline {3.4}Klient-Server architektura}{27}{subsection.3.4}%
|
|
\contentsline {subsection}{\numberline {3.5}Server}{27}{subsection.3.5}%
|
|
\contentsline {subsubsection}{\numberline {3.5.1}Registr klientů}{27}{subsubsection.3.5.1}%
|
|
\contentsline {subsubsection}{\numberline {3.5.2}Server Replikátoru}{28}{subsubsection.3.5.2}%
|
|
\contentsline {subsubsection}{\numberline {3.5.3}Správa zájmů}{29}{subsubsection.3.5.3}%
|
|
\contentsline {subsection}{\numberline {3.6}Klient}{29}{subsection.3.6}%
|
|
\contentsline {subsubsection}{\numberline {3.6.1}Klient Replikátoru}{29}{subsubsection.3.6.1}%
|
|
\contentsline {subsubsection}{\numberline {3.6.2}Interpolace}{29}{subsubsection.3.6.2}%
|
|
\contentsline {subsubsection}{\numberline {3.6.3}Rollback}{29}{subsubsection.3.6.3}%
|
|
\contentsline {subsection}{\numberline {3.7}Posílání zpráv}{30}{subsection.3.7}%
|
|
\contentsline {subsubsection}{\numberline {3.7.1}Kódování zpráv}{30}{subsubsection.3.7.1}%
|
|
\contentsline {subsubsection}{\numberline {3.7.2}Implementace}{30}{subsubsection.3.7.2}%
|
|
\contentsline {subsubsection}{\numberline {3.7.3}Detekce a náprava chyb}{30}{subsubsection.3.7.3}%
|
|
\contentsline {subsection}{\numberline {3.8}Serializace}{31}{subsection.3.8}%
|
|
\contentsline {subsection}{\numberline {3.9}Metriky}{32}{subsection.3.9}%
|
|
\contentsline {subsubsection}{\numberline {3.9.1}PostgreSQL}{32}{subsubsection.3.9.1}%
|
|
\contentsline {subsubsection}{\numberline {3.9.2}TimescaleDB}{32}{subsubsection.3.9.2}%
|
|
\contentsline {subsubsection}{\numberline {3.9.3}Grafana}{33}{subsubsection.3.9.3}%
|
|
\contentsline {subsubsection}{\numberline {3.9.4}Orchestrace}{33}{subsubsection.3.9.4}%
|
|
\contentsline {subsubsection}{\numberline {3.9.5}ImGui}{33}{subsubsection.3.9.5}%
|
|
\contentsline {subsubsection}{\numberline {3.9.6}Tracy}{34}{subsubsection.3.9.6}%
|
|
\contentsline {subsubsection}{\numberline {3.9.7}Konkrétní metriky}{34}{subsubsection.3.9.7}%
|
|
\contentsline {subsubsection}{\numberline {3.9.8}Sbírání v reálném čase}{35}{subsubsection.3.9.8}%
|
|
\contentsline {subsection}{\numberline {3.10}Protokol QUICr}{35}{subsection.3.10}%
|
|
\contentsline {subsubsection}{\numberline {3.10.1}Rámec}{35}{subsubsection.3.10.1}%
|
|
\contentsline {subsubsection}{\numberline {3.10.2}Handshake}{36}{subsubsection.3.10.2}%
|
|
\contentsline {subsubsection}{\numberline {3.10.3}Spolehlivost}{36}{subsubsection.3.10.3}%
|
|
\contentsline {subsubsection}{\numberline {3.10.4}Enkodér}{38}{subsubsection.3.10.4}%
|
|
\contentsline {subsubsection}{\numberline {3.10.5}Testování}{38}{subsubsection.3.10.5}%
|
|
\contentsline {subsubsection}{\numberline {3.10.6}Měření}{39}{subsubsection.3.10.6}%
|
|
\contentsline {subsection}{\numberline {3.11}Optimalizace replikátoru}{41}{subsection.3.11}%
|
|
\contentsline {subsection}{\numberline {3.12}Optimalizace manažera zájmů}{43}{subsection.3.12}%
|
|
\contentsline {subsubsection}{\numberline {3.12.1}Congestion control}{44}{subsubsection.3.12.1}%
|
|
\contentsline {subsubsection}{\numberline {3.12.2}Bandwidth control}{44}{subsubsection.3.12.2}%
|
|
\contentsline {subsection}{\numberline {3.13}Sharding}{44}{subsection.3.13}%
|
|
\contentsline {subsection}{\numberline {3.14}Horizontální škálování}{44}{subsection.3.14}%
|
|
\contentsline {subsection}{\numberline {3.15}Komprese}{45}{subsection.3.15}%
|
|
\contentsline {subsubsection}{\numberline {3.15.1}Bit Buffer}{46}{subsubsection.3.15.1}%
|
|
\contentsline {subsection}{\numberline {3.16}Závěry}{46}{subsection.3.16}%
|
|
\contentsline {section}{Z\'av\v er}{47}{section*.3}%
|
|
\babel@toc {czech}{}\relax
|
|
\babel@toc {czech}{}\relax
|
|
\contentsline {section}{Conclusions}{48}{section*.5}%
|
|
\babel@toc {english}{}\relax
|
|
\babel@toc {czech}{}\relax
|
|
\contentsline {section}{\numberline {A}První příloha}{49}{appendix.A}%
|
|
\contentsline {section}{\numberline {B}Druhá příloha}{49}{appendix.B}%
|
|
\contentsline {section}{\numberline {C}Obsah elektronických dat}{49}{appendix.C}%
|
|
\contentsline {section}{Seznam zkratek}{51}{section*.7}%
|