![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 27.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Jak już kiedyś pisałem , robię grę we flashu która będzie korzystać ze skryptów php i mam takie pytanie: Gdzie lepiej przechowywać zmienne z tekstem użytkowników z czatu, w txt czy MYSQL (IMG:style_emoticons/default/questionmark.gif) Bo każdy zarejestrowany użytkownik będzie miał własny chat i dla mnie wygodniej by było aby każdy użytkownik miał np w swojej tabeli 10 rekordów na wiadomości z chatu niż aby robić na serwerze dla każdego użytkownika folder z plikiem txt ale nie wiem czy jak zrobię to w mysql to gdy np. 100 użytkowników będzie gadać na raz czy baza nie będzie się cielą ? |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 1 495 Pomógł: 245 Dołączył: 1.07.2009 Skąd: Bydgoszcz Ostrzeżenie: (0%) ![]() ![]() |
Zdecydowanie lepiej, wydajniej, optymalniej i poprawniej w bazie mysql.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 27.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
to super (IMG:style_emoticons/default/biggrin.gif) już się bałem , że ktoś napiszę , że lepiej w txt (IMG:style_emoticons/default/tongue.gif) idę robić moje dzieło (IMG:style_emoticons/default/biggrin.gif)
|
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 99 Pomógł: 15 Dołączył: 15.11.2007 Skąd: Nowogród Bobrz. Ostrzeżenie: (0%) ![]() ![]() |
Najlepiej w MySQL + txt (IMG:style_emoticons/default/smile.gif)
Jeśli chat będzie odświeżany np. co 5 sekund to dla dużej ilości userów będzie dość dużo zapytań. Ja stosuję taki schemat: - chat w tabeli, - po wysłaniu wiadomości przez usera zapis do bazy, wyciągnięcie X ostatnich wpisów i zapisanie do cache'u (korzystałem z bibliotek cache w Kohanie i w Zendzie, ale równie dobrze można zwyczajnie zapisać jako tekst albo w formacie JSON), - wyświetlenie (odświeżenie) chatu to include odpowiedniego pliku (po id usera), przy czym można jeszcze przechowywać id ostatniego wpisu i porównywać przed wyświetleniem czy coś się zmieniło. To tak z grubsza, bo zawsze jeszcze jest parę niuansów o których trzeba pamiętać (IMG:style_emoticons/default/winksmiley.jpg) |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 27.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
yay trochę skomplikowane :/ ja chciałem zrobić skrypt który by pobierał co 5-10 s nowe wiadomości z bazy MYSQL ale z tego co kolega pisze to będzie za dużo zapytań i z tego powodu pewnie będzie się cięło przy większej ilości użytkowników ? a ktoś może wie czy przy 100 użytkownikach taki serwer na boo.pl sobie poradzi ?
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Podejrzewam, że tak.
Aczkolwiek głowy nie daję. Wszystko zależy od obciążenia `całego` serwera, a nie tylko Twojego konta. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 11 Pomógł: 0 Dołączył: 27.11.2010 Ostrzeżenie: (0%) ![]() ![]() |
A na takim serwerze 1ghz , 512mb ramu łącze jakieś 100mbit/s ze 1000 użytkowników mogło by korzystać z tego chatu na raz ? gdyby każdemu co 5s odświeżało chat ? czyli by robiło koło 1-1,5tys wywołań na 5s (IMG:style_emoticons/default/tongue.gif) bo ja jeszcze nigdy nie robiłem takiego czegoś i nie wiem jak to jest z tym obciążeniem serwera. Pewnie mój projekt będzie miał dużo wad które będą bardziej obciążały serwer dlatego chcę kupić jakiś lepszy
|
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 763 Pomógł: 117 Dołączył: 15.03.2010 Skąd: void Ostrzeżenie: (0%) ![]() ![]() |
Mam dla Ciebie 3 rozwiązania:
1. Umieść w sieci na darmowym serwerze i zobacz ile wytrzyma (IMG:style_emoticons/default/smile.gif) (Wersja beta na kilka dni) - wtedy będzie można +/- oszacować wyniki na płatnych platformach. 2. Wykup serwer dedykowany (jeśli jesteś w 99% pewien, że na serwerach VPS ani WWW nie da rady.) 3. Ściągnij XAMPP-a i krótko mówiąc - hostuj stronę z własnego PC-ta. Oczywiście do tego przyda Ci się także klient No-IP (http://www.no-ip.com/) Pozdrawiam! |
|
|
![]() ![]() |
![]() |
Aktualny czas: 23.08.2025 - 10:47 |