256 oder 512 MB für einen Webserver

12

Ich plane einen Raspberry Pi zu kaufen, ein Kollege von mir hat noch 256 MB übrig. Aber ich weiß nicht, ob 256 MB Speicher die Dinge füllen können, die ich ausführen möchte.

Ich möchte einen Apache-Webserver (oder einen anderen Webserver, der weniger RAM und CPU verwendet) mit PHP und MySQL, einem FTP-Server und einem SOCKS 5-Proxy betreiben. Auf dem Webserver werde ich ausführen:

  • ein Vbulletin-Forum mit 8 Usern
  • Ein Spiel, das ich gerade entwickle.

Wenn das Spiel fertig ist, könnte ich das Forum oder das Spiel auf eine andere Himbeere verschieben, wenn es zu schwer ist. Ich halte das Spiel so klein und schnell wie möglich. Beispiel: Ich werde alle Aktualisierungsaufträge mit C ++ verarbeiten. Aber wenn das Spiel groß genug ist, um Geld damit zu verdienen, möchte ich einen normalen Server kaufen, wenn dies einen Leistungsschub bringt. Aber ich möchte eine Weile mit dem Pi experimentieren.

Meine Frage lautet also: Soll ich ein neues 512-MB-Modell B pi kaufen oder einfach die 256-MB-Version b des Kollegen von mir kaufen?

Laurence
quelle

Antworten:

12

Darauf gibt es keine eindeutige Antwort, da es wirklich darauf ankommt, wie viel Leistung Sie benötigen, wie kompliziert Ihre Anwendung wäre usw.

Es ist immer besser, mehr Speicher zu haben, nur um in Sicherheit zu sein. Denken Sie daran, dass Sie niemals 256 MB RAM für Linux bekommen werden. Das Beste, was Sie bekommen können, sind 240 MB, da der Rest der GPU zugewiesen wird (und Sie sollten diese Aufteilung in Ihrer Arbeitslast wirklich nutzen). 240 MB sind nicht so viel, aber auf der anderen Seite gibt es viele VPS-Dienstanbieter, die VPS (virtualisierte private Server) mit 256 MB RAM versorgen und die Leute betreiben ziemlich große Sites auf diesen Maschinen, so dass dies definitiv möglich ist.

Sie können ein Speicherlimit für PHP-Sites festlegen. Bei vielen gemeinsam genutzten Hosting-Diensten ist es auf 8-16 MB pro Site festgelegt. Und viele Anwendungen können damit sehr zufrieden sein. MySQL verfügt über eine Vielzahl von Konfigurationsoptionen, mit denen die Speichernutzung begrenzt werden kann, und Sie können es ganz einfach mit 64 MB (oder sogar weniger) Arbeitsspeicher ausführen. Der Apache Webserver ist auch nicht speicherhungrig und es gibt noch leichtere Alternativen. Wir können FTP- und SOCKS-Server überspringen, da sie sehr wenig Speicher beanspruchen (zumindest, wenn sie nur von wenigen Benutzern verwendet werden).

Die Datenbank ist hier also das größte Problem. Denken Sie daran, dass die Leistung umso besser ist, je mehr Arbeitsspeicher der Datenbankserver hat (er wird hauptsächlich für Caches zum Sichern von Datenträger-E / A verwendet). Auf Websites mit sehr hohem Datenverkehr verfügt der Datenbankserver über genügend Speicher, um (fast) die gesamte Datenbank im Speicher zu belassen. Sie werden diese gute Leistung wahrscheinlich nicht brauchen. RaspberryPi hat keinen zu schnellen Speicher (es ist 5-10 mal langsamer als auf ausgewachsenen Computern, auch ohne RAID), sodass Ihre Leistung sehr langsam ist, wenn der Speicher erreicht wird. Fortsetzung der bereits erwähnten VPS - sie haben in den meisten Fällen viel schnellere Speicherlösungen, aber sie teilen diesen Speicher auch mit vielen anderen VPS (oft 16 oder sogar 32), so dass er sehr oft nicht besser ist als der auf RaspberryPi. Und wieder laufen viele Websites auf diesen Servern.

Fazit: 256 MB RAM sollten in Ordnung sein, aber Sie müssen einige Konfigurationsoptionen anpassen, um die Speichernutzung zu verringern. Einige Tutorials dazu sollten im Internet leicht zu finden sein, insbesondere wenn Sie Artikel zur Optimierung des Servers für die Verwendung von VPS usw. suchen 256 MB-Version von RaspberryPi, es kann sich lohnen. Außerdem können Sie einige interessante Kenntnisse erwerben, z. B. das Entwerfen Ihrer Anwendung, um weniger Arbeitsspeicher zu verbrauchen, oder das Konfigurieren Ihres Systems, um weniger Arbeitsspeicher zu benötigen. Diese Fähigkeiten könnten sich in Zukunft auszahlen.

Krzysztof Adamski
quelle
Vielen Dank für die gute Antwort. Es ist in der Tat eine sehr gute Möglichkeit zu lernen, wie man gute Anwendungen entwickelt. Vielen Dank. Ich werde die 256 bekommen. Ich habe viele Tutorials dafür gefunden: 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 .com / questions / 29126 /… my.opera.com/floweringmind/blog/…
Laurence
1
@Laurence: Ich weiß, es ist eine offensichtliche Sache, aber denken Sie daran, es ist gut zu wissen, warum Sie einige Werte ändern müssen und was sie tun, wenn Sie wirklich etwas Nützliches lernen möchten. Einige der Werte werden einfach ohne viel Nachdenken von anderen Websites kopiert und eingefügt und sind möglicherweise nicht optimal für Sie.
Krzysztof Adamski
Ich zweitens @Laurence, dass die Entwicklung auf Systemen mit begrenzten Ressourcen eine gute Praxis sein kann. Früher habe ich Software auf Plattformen mit 64 KB für Anwendungen und 64 KB für Daten geschrieben. Sie wären erstaunt, was die Leute damit anfangen könnten. Auch der Vorgänger der TomTom-Navigationssoftware wurde innerhalb dieser Grenzen geschrieben. Heutzutage neigen Entwickler dazu, faul zu werden, was riesige Fingerabdrücke im Speicher zur Folge hat. Ich würde für das 256MB-Modell nur als eine Frage der Zwangsgrenzen gehen.
EDP,