3 GB RAM + 1 GB Partition Swap - reicht das?

Der neu gekaufte VPS kam mit 3 GB RAM + 1 GB Swap-Partition – sollte ich auch eine Swap-Datei einrichten, oder sollte das ausreichen?

1 „Gefällt mir“

Das reicht für eine kleine Discourse-Instanz.

3 „Gefällt mir“

Ich meine, nicht in Bezug darauf, ob es schnell laufen wird usw., sondern in Bezug darauf, ob es Fehler generieren wird oder nicht, wie z. B. dass kein zusätzlicher Speicher zugewiesen werden kann usw. Macht meine Frage Sinn? Hilft es auch, einen Dateiswap mit einer noch niedrigeren Priorität hinzuzufügen? Nur um sicherzugehen.

Bezahlen Sie einfach für einen leistungsfähigeren VPS mit mindestens 8 GB RAM. Sie werden sonst Zeit verschwenden.

Das beantwortet meine Frage nicht.

Ich kann mir nicht vorstellen, Discourse mit weniger als 8 GB RAM zu betreiben.

Ein Mitglied des Discourse-Teams sagt, es sei in Ordnung, ich bin sicher, ob es in Ordnung ist.

Viel Glück.

Discourse-setup wird alle Speicherprobleme melden.

Das beantwortet meine Frage auch nicht. Vielleicht habe ich meine Frage schlecht formuliert?

Ich habe ein relativ ruhiges Forum auf einem Digital Ocean 2GB Speicher/50GB Festplatten-Droplet und es funktioniert gut.

Zum Zeitpunkt, als die Discourse-Installationsanleitung 1 GB Minimum empfahl, habe ich irgendwann aufgerüstet.

Wenn Sie mehr Informationen darüber geben, wie groß/beschäftigt Ihr Forum ist, bin ich sicher, dass Sie eine detailliertere Antwort erhalten werden.

Ich glaube, der Discourse-Installer richtet automatisch eine Swap-Datei ein (ich habe nichts manuell gemacht) - das beantwortet also einen Teil Ihrer Frage, denke ich.

1 „Gefällt mir“

Ich glaube, er erstellt bei der Installation eine 2 GB große Datei, wenn er feststellt, dass Sie noch keine haben.

Bearbeiten: Ich glaube, das ist genauer:

1 „Gefällt mir“

Die offiziell unterstützte Mindestkonfiguration sind 1 GB RAM + 2 GB Swap – und das reicht aus, wenn Sie ein ziemlich kleines Forum haben. Allerdings wird jedes Update ein wenig größer, sodass ich erwarte, dass es eine Zeit geben wird, in der dies nicht mehr ausreicht.

Damit das Forum korrekt funktioniert und nicht abstürzt, ist die Gesamtsumme aus RAM und Swap die wichtige Kennzahl.

Damit das Forum reaktionsschnell ist und nicht zu langsam wird, wird mehr RAM bevorzugt. Wenn also 1 GB RAM + 2 GB Swap ausreichen, dann reichen 3 GB RAM + 1 GB Swap aus und bieten möglicherweise eine bessere Leistung.

Ich habe zwei Foren, beide ziemlich klein, eines läuft mit 1+2 und das andere mit 2+2.

Letztes Jahr habe ich das geschrieben:

Bearbeitung: Wenn Sie genügend Festplattenspeicher haben, um Swap hinzuzufügen, tun Sie es – es gibt keinen guten Grund, es nicht zu tun, und es könnte notwendig sein. Der Befehl free zeigt Ihnen, wie viel in Gebrauch ist, der Befehl vmstat kann Ihnen einen laufenden Kommentar geben. Aber die durchschnittliche Nutzung ist nicht interessant – es ist die Spitzenlast, die interessant ist.

3 „Gefällt mir“

Okay, meine Frage ist eher theoretischer Natur. Ich kann die Popularität des Forums zu diesem Zeitpunkt nicht vorhersagen. Was ich zu verstehen versuche, ist, was ich tun sollte, um die theoretische Möglichkeit eines RAM-Mangels in irgendeinem Szenario zu mindern. Ich bin mir nicht bewusst, wann Discourse am meisten Speicher verbraucht – sei es beim Erstellen von Backups, beim Ändern der Größe von Bildern, beim Aktualisieren über die Admin-Konsole oder … Ich habe keine Ahnung.

Also war meine Überlegung, welche Swap-Datei ich erstellen sollte, um sicherzustellen, dass Discourse nicht abstürzt, sondern nur sehr langsam wird, falls nicht genügend Speicher vorhanden ist. Gleichzeitig habe ich herausgefunden, dass bereits eine 1G-Swap-Partition vorhanden ist. Meine Überlegung war also, was ist, wenn 3G realer Speicher + 1G Partition Swap nicht ausreicht… sollte ich auch eine Swap-Datei von einigen Gigabyte mit einer noch niedrigeren Priorität (im Vergleich zum Gigabyte der Partition) erstellen. Ich hoffe, meine Frage macht jetzt mehr Sinn.

Wenn ja, dann ja. Es wäre nützlich, die Installations-Readme-Datei zu aktualisieren. Aus den alten Tagen, als es offiziell erwähnt wurde, eine Swap-Datei direkt in der Installations-Readme zu erstellen, bin ich jetzt etwas verwirrt, ob dies automatisch geschieht, nicht mehr benötigt wird oder aus irgendeinem anderen Grund aus der offiziellen Anleitung entfernt wurde.

… was ist mit dem Fall, wenn es die 1G-Datei erkennt, aber die partitionsbasierte?

Die Fortsetzung meiner Frage wäre also, ob es eine gute Idee ist, zwei Swap-Bereiche zu haben, einen partitionsbasierten und den anderen dateibasierten.

Kein Problem, mehrere Swap-Bereiche (oder auch mehrere Swap-Dateien) zu haben

Ich glaube, der größte Speicher-Peak tritt während eines Upgrades auf – und das Risiko besteht darin, dass das Forum ausfällt, bis Sie Hilfe bekommen können.

Es lohnt sich auch, das Overcommit auf die großzügigere Einstellung zu setzen: Sie werden feststellen, dass es in Ihrem Upgrade-Log bereits vermerkt ist, falls Sie es noch nicht angepasst haben.

WARNUNG: overcommit_memory ist auf 0 gesetzt! Hintergrundspeicherung kann unter Bedingungen mit wenig Speicher fehlschlagen. Um dieses Problem zu beheben, fügen Sie ‘vm.overcommit_memory = 1’ zu /etc/sysctl.conf hinzu und starten Sie dann neu oder führen Sie den Befehl ‘sysctl vm.overcommit_memory=1’ aus, damit er wirksam wird.

Dies wurde schon oft erwähnt, aber es gibt Widerstand dagegen, es dem Standard-Discourse-Installationsrezept hinzuzufügen. Es ist eine Einstellung, die nicht innerhalb des Docker-Images vorgenommen werden kann, sondern auf dem Host erfolgen muss.

2 „Gefällt mir“

Alles, was Sie tun können, ist, das Risiko zu verringern, und wenn Sie mehr Mittel haben, können Sie das Risiko in größerem Maße verringern. Diese Frage liegt im Bereich der Kompromisse!

Wenn ich unbegrenzten Speicherplatz hätte, würde ich sicherlich bis zu 4 GB Swap hinzufügen, bevor ich überhaupt darüber nachdenke – es schadet nicht. Wenn ich unbegrenzte Mittel hätte, würde ich den maximalen RAM bekommen, den ich bekommen kann. Aber in meinem Fall habe ich das nicht.

Wenn Sie erwarten, dass Ihr Forum wachsen könnte, sollten Sie erwarten, die Ressourcen, die Sie für den Betrieb benötigen, im Laufe der Zeit zu erhöhen, anstatt die Maschinen einmal zu Beginn zu dimensionieren.

Ich habe die Größe der Maschinen, die ich für meine Foren verwende, noch nicht erhöht, aber ich erwarte, dass ich es tun werde, vielleicht dieses Jahr oder vielleicht nächstes.

3 „Gefällt mir“

Das sollte er. Ich richte routinemäßig 1 und 2 GB große Droplets mit 2 GB Swap ein und sie funktionieren. Derzeit benötigt ein Rebuild viel RAM, aber das sollte funktionieren.

Du brauchst mehr Vorstellungskraft.

Ich betreibe so viel nur auf Websites mit etwa einer Million Seitenaufrufen pro Monat und ziemlich großen Datenbanken.

4 „Gefällt mir“

Ich habe dies bei der ersten Installation von Discourse erwähnt (Warnings: overcommit_memory and Transparent Huge Pages). Warum ist es lohnenswert und was ist der Grund für den Widerstand? Ich habe die Standardeinstellung nicht geändert.

Hier ist etwas, das ich zuvor geschrieben habe:

Insbesondere

Im Auslieferungszustand lehnt der Kernel Zuweisungen ab, die er nicht erfüllen kann. Mit dieser Anpassung akzeptiert er diese Zuweisungen, und ein Fehler kann vermieden werden, oder er tritt später auf, wenn die Zuweisung zur Nutzung wird.

Wenn Ihre Gesamtmenge an RAM und Swap groß genug ist, müssen Sie diese Einstellung nie ändern. Wenn Ihre Gesamtmenge nicht groß ist, kann eine Änderung helfen.

Auch

[quote=“balupton, post:27, topic:218204”]
Oder besser gesagt, was ist der Sinn dieser Empfehlung?
[/quote]

Es geht darum, den verfügbaren virtuellen Speicher zu erhöhen. (Das heißt, die Summe aus RAM und Swap.) Wenn Ihnen der RAM ausgeht, leiden Sie unter Leistungsproblemen. Aber wenn Ihnen der virtuelle Speicher ausgeht, werden Prozesse nicht gestartet oder sterben oder werden beendet. Es wird brutal.

Diejenigen von uns mit wenig RAM und wenig Festplattenspeicher können nicht beliebig viel Swap hinzufügen, aber 2G scheint ein gutes Minimum zu sein. (Wenn Sie 16 GB RAM hätten, bräuchten Sie vielleicht keinen Swap, aber das ist eine andere Geschichte. Es ist die Summe der beiden, die zählt, wenn das Problem darin besteht, dass Dinge fehlschlagen.)

Was den Widerstand angeht, so glaube ich, dass er auf der Wahrnehmung beruht, dass diese Änderung zugunsten von Redis erfolgt und die meisten Leute sie nicht benötigen werden.

Bearbeiten: dieser aktuelle Thread ist möglicherweise ein Beispiel dafür, wo eine relativ kleine Instanz keinen Speicher mehr hatte und keine Überbuchung (overcommit) eingestellt war. Aber wir wissen nicht, ob die Einstellung von Overcommit dieses Problem gelöst hätte – die Person hat auf 8 GB RAM aufgerüstet.

2 „Gefällt mir“