Skocz do zawartości
  • 👋 Witaj na MPCForum!

    Przeglądasz forum jako gość, co oznacza, że wiele świetnych funkcji jest jeszcze przed Tobą! 😎

    • Pełny dostęp do działów i ukrytych treści
    • Możliwość pisania i odpowiadania w tematach
    • System prywatnych wiadomości
    • Zbieranie reputacji i rozwijanie swojego profilu
    • Członkostwo w jednej z największych społeczności graczy

    👉 Dołączenie zajmie Ci mniej niż minutę – a zyskasz znacznie więcej!

    Zarejestruj się teraz

Zapis danych w yml mocno obciąża?


Gorgi123

Rekomendowane odpowiedzi

Opublikowano

Witam mam pytanie chcę zrobić np coś typu ilość wykopanych rzeczy itp 

i zapis w pliku yml i mam kilka pytań czy obciąża to tak bardzo ,że jedynym wyjściem jest mysql 

Opublikowano

zapis yml nie powinien obciązać chyba że po 1 wykopanym stone zapisujesz juz to do yml 1 rozwiązaniem przy yml są obiekty

to idę oglądać dalej poradniki z obiektowego programowania :P

dzięki za pomoc

Opublikowano

Jak logi to lepiej do notatnika zapisywać.

 

To teraz dojebałeś tak, jak łysy włosami o kant kuli.

 

@topic

Nie obciąża dużo, troszkę gorzej z bezpieczeństwem danych, że to tak nazwę. xD

784091427630431250239.png

Regulamin sygnatur

Opublikowano

Jak logi to lepiej do notatnika zapisywać.

 

Dziiiwny jest teeen świaat.

 

@topic

Jeżeli 50 graczy zacznie kopać, a ty po 1 stonie będziesz zapisywał plik to mogą wystąpić lagi.

 

Czemu nie chcesz się nauczyć tworzenia obiektów? Ja prosty obiekt robię w 15-30min.

Jest to mniejsze obciążenie dla maszyny i lepiej się to zapisuje.

Opublikowano

No logi to lepiej do notatnika, ale jak kto woli. (Na jeden chu wychodzi)

To chyba oczywiste że po wykopanym jednym klocku będzie badziewnie jak będzie zapisywało od razu do logów.

409.jpg?7190

|---> Z o s t a n ę <---|

 

Zostanę technikiem na twój serwer minecraft, zrobie cały serwer według twojego pomysłu!
http://www.mpcforum.pl/topic/1486254-zostanę-technikiem-stworzę-serwer-twojego-pomysłu/#entry12589185

Opublikowano

najlepszym wyjściem z takiej sytuacji jest obiekt, który będzie takimi danymi operował i umiejętnie zapisywał w danych okresach czasu, nic trudnego - wystarczy troche poczytać

 

no i jest jeszcze jedno wyjście - listy, które najlepiej zapisywać tak samo jak w obiektach

 

//

 

No logi to lepiej do notatnika, ale jak kto woli. (Na jeden chu wychodzi)

To chyba oczywiste że po wykopanym jednym klocku będzie badziewnie jak będzie zapisywało od razu do logów.

 

logi do notatnika? notatnik to tylko edytor tekstowy, a nie format/typ plików

 

 

 

 

fKJeAI4.jpg

 

 

 

Opublikowano

Nawet nie wiem od czego zacząć...

 

 

Jak logi to lepiej do notatnika zapisywać.

 

 

Jak logi to lepiej do notatnika zapisywać.

 

To teraz dojebałeś tak, jak łysy włosami o kant kuli.

 

@topic

Nie obciąża dużo, troszkę gorzej z bezpieczeństwem danych, że to tak nazwę. xD

 

Jeśli chodzi o zapis do pliku bez żadnego specjalnego formatu, których potem nie musimy nigdy odczytwać, są jedynie dla użytkownika lub programisty by znaleźć błędy czy sprawdzić co się działo... to jak najbardziej logi się nadają do zapisu do zwykłego txt bez specjalnego formatu zapisu, jednak nie robi się tego zazwyczaj na zasadzie .log i bezpośrednio dodjesz do pliku, bo to może być problematyczne przy wielu wątkach, dlatego wygodnie jest stworzyć queue i do niego dodać kolejne wpisy, podczas gdy inny wątek pobiera te dane z queue i zapisuje do pliku, mając cały czas otworzony jeden stream do którego dodaje i flushuje (tylko nie w głupiej pętli while pracującej 24/7), lub użyć czegoś gotowego, jak log4j (który działa w uproszczeniu na właśnie takiej zasadzie)

 

Z tym że logi oczywiście nie mają żadnego zastosowania do pytania.

 

bezpieczeństwo? takie samo jak na zwykłej bazie na localu bez hasła, a jak ktoś ci wejdze na maszynę to i tak lipa.

 

 

 

Jak logi to lepiej do notatnika zapisywać.

 

Dziiiwny jest teeen świaat.

 

@topic

Jeżeli 50 graczy zacznie kopać, a ty po 1 stonie będziesz zapisywał plik to mogą wystąpić lagi.

 

Czemu nie chcesz się nauczyć tworzenia obiektów? Ja prosty obiekt robię w 15-30min.

Jest to mniejsze obciążenie dla maszyny i lepiej się to zapisuje.

 

Dlatego się nie zapisuje po każdym jednym kamieniu do pliku, tylko co jakiś czas, tutaj już jak kto woli, co kilka minut, jak przestanie kopać, oba, itd itp + zapis można dać do taska async, tylko trzeba dbać by nie stworzyć 2 o tym samym graczu.

 

Obiekty mniejszym obciążeniem dla maszyny? kompletna bzdura, obiekty to właśnie dodatkowe obciążenie dla maszyny, ale używamy ich, bo to wygodne, daje możliwości rozbudowy i szybciej się pisze, np mając 100 znaków i chcąc wygenerować wszystkie kombinacje z 4 znaków kod z jednym array znaków, char[] o wielkości 100^4*4 będzie wielokrotnie szybsze niż String[100^4] i opcja z char zje znacznie mniej pamięci, tylko obsługa będzie znacznie mniej wygodna. (PS: w javie operator ^ nie jest od potęg, ale dla uproszczenia zapisu uznajmy że jest)

 

Oczywiście znacznie lepiej użyć wlasnych obiektów do zapisu danych gracza niż np Mapki, tutaj będzie to szybsze, ale mapka to też obiekt ;) Ale co najważniejsze będzie znacznie wygodniejsze do zarządzania, rozbudowy, zapis czy odczytu.

 

 

 

bezpieczeństwo? takie samo jak na zwykłej bazie na localu bez hasła, a jak ktoś ci wejdze na maszynę to i tak lipa.

1438614356923701010629.png

 

Opublikowano

najlepszym wyjściem z takiej sytuacji jest obiekt, który będzie takimi danymi operował i umiejętnie zapisywał w danych okresach czasu, nic trudnego - wystarczy troche poczytać

 

no i jest jeszcze jedno wyjście - listy, które najlepiej zapisywać tak samo jak w obiektach

 

//

 

No logi to lepiej do notatnika, ale jak kto woli. (Na jeden chu wychodzi)

To chyba oczywiste że po wykopanym jednym klocku będzie badziewnie jak będzie zapisywało od razu do logów.

 

logi do notatnika? notatnik to tylko edytor tekstowy, a nie format/typ plików

A czemu nie?

Może i nie format, ale do odczytu tak jak @up napisał, wystarczy txt

409.jpg?7190

|---> Z o s t a n ę <---|

 

Zostanę technikiem na twój serwer minecraft, zrobie cały serwer według twojego pomysłu!
http://www.mpcforum.pl/topic/1486254-zostanę-technikiem-stworzę-serwer-twojego-pomysłu/#entry12589185

Opublikowano

 

najlepszym wyjściem z takiej sytuacji jest obiekt, który będzie takimi danymi operował i umiejętnie zapisywał w danych okresach czasu, nic trudnego - wystarczy troche poczytać

 

no i jest jeszcze jedno wyjście - listy, które najlepiej zapisywać tak samo jak w obiektach

 

//

 

No logi to lepiej do notatnika, ale jak kto woli. (Na jeden chu wychodzi)

To chyba oczywiste że po wykopanym jednym klocku będzie badziewnie jak będzie zapisywało od razu do logów.

 

logi do notatnika? notatnik to tylko edytor tekstowy, a nie format/typ plików

A czemu nie?

Może i nie format, ale do odczytu tak jak @up napisał, wystarczy txt

 

odczytu przez osobę, a w temacie jest zdecydowanie napisane że chce zapisywać ilość wykopanych bloków, a skoro chce ilość to musi mieć do tego stały dostęp, wczytać starą ilość, dodać nową, zapisać.

1438614356923701010629.png

 

Opublikowano

Nawet nie wiem od czego zacząć...

 

 

Jak logi to lepiej do notatnika zapisywać.

 

 

Jak logi to lepiej do notatnika zapisywać.

 

To teraz dojebałeś tak, jak łysy włosami o kant kuli.

 

@topic

Nie obciąża dużo, troszkę gorzej z bezpieczeństwem danych, że to tak nazwę. xD

 

Jeśli chodzi o zapis do pliku bez żadnego specjalnego formatu, których potem nie musimy nigdy odczytwać, są jedynie dla użytkownika lub programisty by znaleźć błędy czy sprawdzić co się działo... to jak najbardziej logi się nadają do zapisu do zwykłego txt bez specjalnego formatu zapisu, jednak nie robi się tego zazwyczaj na zasadzie .log i bezpośrednio dodjesz do pliku, bo to może być problematyczne przy wielu wątkach, dlatego wygodnie jest stworzyć queue i do niego dodać kolejne wpisy, podczas gdy inny wątek pobiera te dane z queue i zapisuje do pliku, mając cały czas otworzony jeden stream do którego dodaje i flushuje (tylko nie w głupiej pętli while pracującej 24/7), lub użyć czegoś gotowego, jak log4j (który działa w uproszczeniu na właśnie takiej zasadzie)

 

Z tym że logi oczywiście nie mają żadnego zastosowania do pytania.

 

bezpieczeństwo? takie samo jak na zwykłej bazie na localu bez hasła, a jak ktoś ci wejdze na maszynę to i tak lipa.

 

 

 

Jak logi to lepiej do notatnika zapisywać.

 

Dziiiwny jest teeen świaat.

 

@topic

Jeżeli 50 graczy zacznie kopać, a ty po 1 stonie będziesz zapisywał plik to mogą wystąpić lagi.

 

Czemu nie chcesz się nauczyć tworzenia obiektów? Ja prosty obiekt robię w 15-30min.

Jest to mniejsze obciążenie dla maszyny i lepiej się to zapisuje.

 

Dlatego się nie zapisuje po każdym jednym kamieniu do pliku, tylko co jakiś czas, tutaj już jak kto woli, co kilka minut, jak przestanie kopać, oba, itd itp + zapis można dać do taska async, tylko trzeba dbać by nie stworzyć 2 o tym samym graczu.

 

Obiekty mniejszym obciążeniem dla maszyny? kompletna bzdura, obiekty to właśnie dodatkowe obciążenie dla maszyny, ale używamy ich, bo to wygodne, daje możliwości rozbudowy i szybciej się pisze, np mając 100 znaków i chcąc wygenerować wszystkie kombinacje z 4 znaków kod z jednym array znaków, char[] o wielkości 100^4*4 będzie wielokrotnie szybsze niż String[100^4] i opcja z char zje znacznie mniej pamięci, tylko obsługa będzie znacznie mniej wygodna. (PS: w javie operator ^ nie jest od potęg, ale dla uproszczenia zapisu uznajmy że jest)

 

Oczywiście znacznie lepiej użyć wlasnych obiektów do zapisu danych gracza niż np Mapki, tutaj będzie to szybsze, ale mapka to też obiekt ;) Ale co najważniejsze będzie znacznie wygodniejsze do zarządzania, rozbudowy, zapis czy odczytu.

 

 

 

bezpieczeństwo? takie samo jak na zwykłej bazie na localu bez hasła, a jak ktoś ci wejdze na maszynę to i tak lipa.

 

prosty obiekt własnoręcznie napisany będzie imho lepszy, bo jest on stworzony w konkretnym celu, zaś mapki nie mają konkretnego, specjalnego "zastosowania", tylko muszą być przystosowane do różnego rodzaju danych itd.

 

 

 

 

fKJeAI4.jpg

 

 

 

Opublikowano

Nawet nie wiem od czego zacząć...

 

 

Jak logi to lepiej do notatnika zapisywać.

 

 

Jak logi to lepiej do notatnika zapisywać.

 

To teraz dojebałeś tak, jak łysy włosami o kant kuli.

 

@topic

Nie obciąża dużo, troszkę gorzej z bezpieczeństwem danych, że to tak nazwę. xD

 

Jeśli chodzi o zapis do pliku bez żadnego specjalnego formatu, których potem nie musimy nigdy odczytwać, są jedynie dla użytkownika lub programisty by znaleźć błędy czy sprawdzić co się działo... to jak najbardziej logi się nadają do zapisu do zwykłego txt bez specjalnego formatu zapisu, jednak nie robi się tego zazwyczaj na zasadzie .log i bezpośrednio dodjesz do pliku, bo to może być problematyczne przy wielu wątkach, dlatego wygodnie jest stworzyć queue i do niego dodać kolejne wpisy, podczas gdy inny wątek pobiera te dane z queue i zapisuje do pliku, mając cały czas otworzony jeden stream do którego dodaje i flushuje (tylko nie w głupiej pętli while pracującej 24/7), lub użyć czegoś gotowego, jak log4j (który działa w uproszczeniu na właśnie takiej zasadzie)

 

Z tym że logi oczywiście nie mają żadnego zastosowania do pytania.

 

bezpieczeństwo? takie samo jak na zwykłej bazie na localu bez hasła, a jak ktoś ci wejdze na maszynę to i tak lipa.

 

 

 

Jak logi to lepiej do notatnika zapisywać.

 

Dziiiwny jest teeen świaat.

 

@topic

Jeżeli 50 graczy zacznie kopać, a ty po 1 stonie będziesz zapisywał plik to mogą wystąpić lagi.

 

Czemu nie chcesz się nauczyć tworzenia obiektów? Ja prosty obiekt robię w 15-30min.

Jest to mniejsze obciążenie dla maszyny i lepiej się to zapisuje.

 

Dlatego się nie zapisuje po każdym jednym kamieniu do pliku, tylko co jakiś czas, tutaj już jak kto woli, co kilka minut, jak przestanie kopać, oba, itd itp + zapis można dać do taska async, tylko trzeba dbać by nie stworzyć 2 o tym samym graczu.

 

Obiekty mniejszym obciążeniem dla maszyny? kompletna bzdura, obiekty to właśnie dodatkowe obciążenie dla maszyny, ale używamy ich, bo to wygodne, daje możliwości rozbudowy i szybciej się pisze, np mając 100 znaków i chcąc wygenerować wszystkie kombinacje z 4 znaków kod z jednym array znaków, char[] o wielkości 100^4*4 będzie wielokrotnie szybsze niż String[100^4] i opcja z char zje znacznie mniej pamięci, tylko obsługa będzie znacznie mniej wygodna. (PS: w javie operator ^ nie jest od potęg, ale dla uproszczenia zapisu uznajmy że jest)

 

Oczywiście znacznie lepiej użyć wlasnych obiektów do zapisu danych gracza niż np Mapki, tutaj będzie to szybsze, ale mapka to też obiekt ;) Ale co najważniejsze będzie znacznie wygodniejsze do zarządzania, rozbudowy, zapis czy odczytu.

 

 

 

bezpieczeństwo? takie samo jak na zwykłej bazie na localu bez hasła, a jak ktoś ci wejdze na maszynę to i tak lipa.

 

Bezpieczeństwo może źle ująłem..

By wyczyścić jakąkolwiek bazę trzeba poklikać lub wklepać jakąś komendę..

A jak ktoś jest mądry jak ja kiedyś, że usunąłem folder plugins w pizdu nie z tej maszyny co powinienem to wiesz.. XDDDDDD

Więc o bezpieczeństwo pod względem ,,trwałości" mi chodziło.

 

Obiekt i jazda do pliku,a przy starcie ładować.

784091427630431250239.png

Regulamin sygnatur

Zarchiwizowany

Ten temat przebywa obecnie w archiwum. Dodawanie nowych odpowiedzi zostało zablokowane.

×
×
  • Dodaj nową pozycję...