256 lub 512 MB dla serwera WWW

12

Planuję kupić Raspberry Pi, mój kolega ma jeszcze 256 MB. Ale nie wiem, czy 256 MB pamięci może wypełnić rzeczy, które chcę uruchomić.

Chcę uruchomić serwer WWW Apache (lub inny serwer WWW, który wykorzystuje mniej pamięci RAM i procesor) z PHP i MySQL, serwerem FTP i proxy SOCKS 5. Na serwerze internetowym zamierzam uruchomić:

  • forum Vbulletin z 8 użytkownikami
  • Gra, którą obecnie rozwijam.

Gdy gra jest gotowa, mogę przenieść forum lub grę na inną malinę, gdy jest zbyt ciężka. Utrzymuję grę tak małą i szybką, jak to możliwe. Na przykład: zamierzam przetwarzać wszystkie zadania aktualizacji w C ++. Ale kiedy gra jest na tyle duża, że ​​można na niej zarabiać, chcę kupić normalny serwer, jeśli daje to wzrost wydajności. Ale chcę eksperymentować z Pi przez jakiś czas.

Więc moje pytanie brzmi: czy powinienem kupić nowy model MB pi 512 MB, czy po prostu kupić wersję mojego b 256 MB?

Laurence
źródło

Odpowiedzi:

12

Nie ma jednoznacznej odpowiedzi na to pytanie, ponieważ tak naprawdę zależy to od wymaganej wydajności, stopnia skomplikowania aplikacji itp.

Zawsze lepiej jest mieć więcej pamięci, tylko dla bezpieczeństwa. Pamiętaj, że nigdy nie dostaniesz pełnych 256 MB pamięci RAM dla Linuksa, najlepsze, co możesz uzyskać, to 240 MB, ponieważ reszta zostanie przydzielona do GPU (i naprawdę powinieneś użyć tego podziału w obciążeniu). 240 MB to niewiele, ale z drugiej strony jest wielu dostawców usług VPS, którzy dostarczają VPS (zwirtualizowanym prywatnym serwerom) 256 MB pamięci RAM, a ludzie prowadzą dość duże witryny na tych komputerach, więc jest to zdecydowanie możliwe.

Możesz ustawić limit pamięci dostępnej dla strony PHP, a na wielu współdzielonych usługach hostingowych jest on ustawiony na 8-16 MB na stronę. Wiele aplikacji może z tego działać całkiem zadowolonych. MySQL ma wiele opcji konfiguracyjnych, których można użyć, aby ograniczyć zużycie pamięci i można dość łatwo uruchomić go z 64 MB (lub nawet mniej) pamięci. Serwer Apache również nie jest głodny pamięci, a alternatywy są jeszcze lżejsze. Możemy pominąć serwer FTP i SOCKS, ponieważ zajmuje on naprawdę niewielką ilość pamięci (przynajmniej jeśli jest używany tylko przez kilku użytkowników).

Baza danych jest tutaj największym problemem. Pamiętaj, że im więcej serwera bazy danych pamięci, tym lepsza będzie jego wydajność (używa go głównie do buforowania bezpiecznych operacji we / wy dysku). W witrynach o bardzo dużym natężeniu ruchu serwer bazy danych ma wystarczającą ilość pamięci, aby przechowywać (prawie) całą bazę danych w pamięci. Prawdopodobnie nie będziesz potrzebować tak dobrej wydajności. RaspberryPi nie ma zbyt szybkiej pamięci (jest 5-10 razy wolniejsza niż na pełnowymiarowych komputerach nawet bez RAID), więc Twoja wydajność będzie naprawdę niska, gdy dojdzie do pamięci. Kontynuując już wspomniane VPS-y - w większości przypadków mają one znacznie szybsze rozwiązania do przechowywania, ale dzielą również tę pamięć z wieloma innymi VPS (często 16 lub nawet 32), więc bardzo często nie jest lepsza niż ta na RaspberryPi. I znowu wiele witryn działa na tych serwerach szczęśliwie.

Podsumowując - powinieneś być w porządku z 256 MB pamięci RAM, ale będziesz musiał dostosować kilka opcji konfiguracji, aby zmniejszyć zużycie pamięci. W Internecie powinno być łatwo znaleźć tutoriale na ten temat, zwłaszcza gdy szukasz artykułów na temat optymalizacji serwera pod kątem korzystania z VPS itp. Jeśli nie planujesz używać czegoś, co wymaga więcej pamięci w przyszłości i może zaoszczędzić trochę pieniędzy, kupując 256 MB wersji RaspberryPi, warto. Możesz nauczyć się kilku interesujących umiejętności, takich jak projektowanie aplikacji tak, aby zużywała mniej pamięci lub konfigurowanie systemu tak, aby potrzebował mniej pamięci. Te umiejętności mogą się opłacić w przyszłości.

Krzysztof Adamski
źródło
Dziękuję za dobrą odpowiedź. To naprawdę bardzo dobry sposób na naukę tworzenia dobrych aplikacji. Dziękuję Ci bardzo. Zdobędę 256. Znalazłem wiele tutoriali, aby to zrobić: squidoo.com/optimizing-mysql-for-vps-dedicated-server wiki.vpslink.com/Low_memory_MySQL_/_Apache_configurations supportcenter.verio.com/KB/questions.php?questionid=267 ServerFault .pl / pytania / 29126 /… my.opera.com/floweringmind/blog/…
Laurence,
1
@Laurence: Wiem, że to oczywiste, ale pamiętaj, że dobrze jest wiedzieć, dlaczego musisz zmienić niektóre wartości i co one robią, jeśli naprawdę chcesz się czegoś nauczyć. Niektóre wartości są po prostu kopiowane i wklejane z innych stron bez większego zastanowienia i mogą nie być optymalne dla Ciebie.
Krzysztof Adamski
Po drugie @Laurence, że rozwijanie na systemach o ograniczonych zasobach może być dobrą praktyką. Kiedyś pisałem oprogramowanie na platformach z 64kB dostępnymi dla aplikacji i 64kB dla danych. Byłbyś zaskoczony tym, co ludzie mogą z tym zrobić. Nawet poprzednik oprogramowania nawigacyjnego TomTom został napisany w tych granicach. W dzisiejszych czasach programiści stają się leniwi, co powoduje ogromne odciski palców pamięci. Wybrałbym model 256 MB tylko ze względu na wymuszone ograniczenia.
EDP