Witamy w Nieoficjalnym polskim support'cie AMX Mod X
Witamy w Nieoficjalnym polskim support'cie AMX Mod X, jak w większości społeczności internetowych musisz się zarejestrować aby móc odpowiadać lub zakładać nowe tematy, ale nie bój się to jest prosty proces w którym wymagamy minimalnych informacji.
|
Porównanie fVault vs MySQL
#1
Napisano 08.07.2022 07:05
Który zapis jest wydajniejszy?
#2
Napisano 08.07.2022 15:16
nVault
#3
Napisano 08.07.2022 17:36
Jak zawsze odpowiedź brzmi: To zależy.
Osobiście zawsze bym robił zapis mysql (lub sqlite, bo tez jest taka opcja, a wystarczy tylko zmienić jeden cvar i nam zapisuje do bazy danych ale lokalnie na serwerze - do pliku z bazą). Dlaczego tak? Ano dlatego, że prościej jest wyciągać dane z bazy niż z nVault. Jak chcesz mieć TOP10 czegoś, to w SQL piszesz proste zapytanie i już masz. W nVault - kombinacje alpejskie z wczytywaniem wszystkich danych, obrabianie itp - paskudne. Tak samo wszelkiego rodzaju złączenia wielu tabel - w SQL masz to niejako "za darmo", w nvault musisz sam o to zadbać.
To o czym należy wspomnieć przy mysql to czas odpowiedzi, który jest większy niż w przypadku nvault. Gdy masz mysql to jednak te zapytania i dane muszą po sieci polecieć do bazy i wrócić, a w przypadku nvault jest to odczyt z pamięci.
No i kwestia też tego, że pluginy z zapisem mysql ciężej się pisze/rozwija/modyfikuje bo trzeba więcej nakładu pracy włożyć, a też styl tworzenia jest całkiem inny (czyli callbacki w SQL_ThreadQuery itp), więc trzeba zadbać o więcej rzeczy typu - co jak Ci sie baza rozłączy, co jak w czasie gdy wysłałeś zapytanie, gracz wyszedł z serwera, a zaraz po jego wyjściu przyszly dane z bazy?
#4
Napisano 08.07.2022 18:23
Jak zawsze odpowiedź brzmi: To zależy.
Osobiście zawsze bym robił zapis mysql (lub sqlite, bo tez jest taka opcja, a wystarczy tylko zmienić jeden cvar i nam zapisuje do bazy danych ale lokalnie na serwerze - do pliku z bazą). Dlaczego tak? Ano dlatego, że prościej jest wyciągać dane z bazy niż z nVault. Jak chcesz mieć TOP10 czegoś, to w SQL piszesz proste zapytanie i już masz. W nVault - kombinacje alpejskie z wczytywaniem wszystkich danych, obrabianie itp - paskudne. Tak samo wszelkiego rodzaju złączenia wielu tabel - w SQL masz to niejako "za darmo", w nvault musisz sam o to zadbać.
To o czym należy wspomnieć przy mysql to czas odpowiedzi, który jest większy niż w przypadku nvault. Gdy masz mysql to jednak te zapytania i dane muszą po sieci polecieć do bazy i wrócić, a w przypadku nvault jest to odczyt z pamięci.
No i kwestia też tego, że pluginy z zapisem mysql ciężej się pisze/rozwija/modyfikuje bo trzeba więcej nakładu pracy włożyć, a też styl tworzenia jest całkiem inny (czyli callbacki w SQL_ThreadQuery itp), więc trzeba zadbać o więcej rzeczy typu - co jak Ci sie baza rozłączy, co jak w czasie gdy wysłałeś zapytanie, gracz wyszedł z serwera, a zaraz po jego wyjściu przyszly dane z bazy?
Czemu nie patrzeć na fVault? Jest gorszy niż nVault?
Przykładowo zdarzyło mi się że przy używaniu nVault nie czytało prawidłowo wpisów gdy bylo sporo informacji, a przy fVault się tak nie zdarzyło póki co
Użytkownik SezonowyGracz edytował ten post 08.07.2022 18:26
#5
Napisano 08.07.2022 19:39
No tak bym powiedział, jest w pełni zaimplementowany jako plugin, nvault ma tą przewagę, że jest napisany w C++ i wykonuje się natywny kod.
co znaczy, że nie czytało prawidłowo wpisów? Prawie zawsze jest to jakiś błąd po stronie programisty, bo czegoś nie dopatrzył, bo nie zamknął pliku i się pogubiły wpisy.
Naprawdę nie wiem co miałoby być zaletą fvault, chyba tylko to, że dane sobie możesz w pliku podglądnąć, ale to nie argument bo używając bazy danych (czy to mysql czy sqlite) masz to samo.
#6
Napisano 08.07.2022 20:13
czytanie i zapisywanie danych jest dobrze zrobione, po prostu przy dużej ilości wpisów, zdarzało się że niektórym graczom nie czytało ich wpisu z pliku a niektórym tak
#8
Napisano 09.07.2022 08:40
Nadal - nie chce mi się w to wierzyć
Użytkownicy przeglądający ten temat: 0
0 użytkowników, 0 gości, 0 anonimowych