Jestem nowy w C++ i staram się opracować aplikację klient-serwer w oparciu o bibliotekę boost :: asio. Wciąż nie jestem w stanie właściwie zrozumieć różnicy między trybami synchronizacji i asynchronizacji. Wcześniej studiowałem usługi protokołu internetowego, takie jak HTTP i AJAX. Od this explanation jest oczywiste, że HTTP jest synchroniczny, a AJAX jest asynchroniczny. Jaka jest różnica w komunikacji gniazda TCP pod względem synchronizacji i asynchronizacji? A który tryb jest lepszy z punktu widzenia wielowątkowego rozwoju aplikacji na poziomie przedsiębiorstwa i dlaczego?Jaka jest różnica między transmisją synchroniczną i asynchroniczną w programowaniu gniazd TCP/IP?
Jak rozumiem tryb synchroniczny, klient blokuje się na chwilę, dopóki nie odbierze komunikatu pakiet/dane z serwera. W trybie asynchronicznym klient wykonuje kolejną operację bez blokowania bieżącej operacji. Dlaczego to się różni? Czy asynchronizm jest synonimem UDP? Wygląda na to, że nie obchodzi go, czy otrzyma potwierdzenie transmisji.
Dzięki :), Który interfejs API byłby lepszy w przypadku aplikacji wielowątkowej na poziomie przedsiębiorstwa? Co staram się rozwijać, to model licencjonowania, który musi być wystarczająco solidny, aby obsłużyć żądanie i wysłać odpowiedź do oprogramowania klienckiego. –
Nie wyjdę za to poza synchroniczny API. To nie jest tak, że jest to korporacyjna baza danych, która musi obsługiwać 200 milionów transakcji dziennie. – EJP
Hmm ... więc synchronicznie będzie lepiej? Nie jest to całkowicie aplikacja bazodanowa, chociaż wymagane są często transfery plików i informacje (w bajtach), prawie 20-30 MB zostanie przesłane na 10 minut ... –