Obecnie przepisuję stronę serwera bardzo starego mmorpg i szukałem dobrej biblioteki sieciowej opensource do użycia z C/C++.Biblioteka sieciowa po stronie serwera mmorpg (libuv/boost :: asio?)
Ponieważ klient już istnieje, nie mogę używać żadnej biblioteki, która wymusza jakąś strukturę pakietów lub komunikację (jak na przykład RakNet).
Serwer będzie korzystał głównie z protokołu UDP na trzech różnych portach.
Po przeszukaniu w Internecie dowiedziałem się o boost :: asio i libuv.
doładowanie :: asio wydaje się być dojrzałą opcją, ponieważ będę już używał boost, ale czytałem, że ich implementacja UDP jest trochę słaba, i że nie może osiągnąć maksymalnej wydajności procesora wielordzeniowego z powodu niektóre blokady podczas korzystania z epoli.
Wydaje się, że libuv jest świetny, napędzany jest zdarzeniami, wspierany przez duży projekt, ale obecnie nie ma tego rodzaju projektu, więc mam wątpliwości, czy go użyć.
Co wy ludzie sądzicie? Czy mogę używać libuv w takim projekcie, czy będę musiał pójść z boost :: asio? Jestem również otwarty na inne sugestie (muszą być one wieloplatformowe, a ja już odrzuciłem enet, libevent i libev).
[liblacewing] (http: // lacewing-project.org) również może być do tego odpowiedni (obsługuje epoll, kqueue lub IOCP w systemie Windows). Ujawnienie: Jestem głównym programistą. –
Fajny projekt, przyjrzę się temu, ale mam ochotę użyć asio, ponieważ będę już używał boost. – RenatoUtsch
@RenatoUtsch Cześć Renato, a rok później, co wybrałeś? Czy możesz dać nam zwrot z twojego doświadczenia? Dzięki –