Ich erzeuge ein PDF-Dokument und speichere es vorübergehend im Verzeichnis /tmp
. Sobald das Dokument erstellt und im Verzeichnis gespeichert wurde (ich mache es als Hintergrundprozess mit Sidekiq), lade ich es auf Amazon S3 hoch und lösche es aus dem Verzeichnis /tmp
.Schienen 4 - wie wird das "/ tmp" gereinigt?
Was ich festgestellt habe, ist, wenn ein Benutzer ein Dokument erzeugt und ich etwas neuen Code auf dem Server bereitstellen (mit Capistrano), wird der Prozess des Generierens/Hochladens von Dokumenten unterbrochen.
Ich fragte mich, ob dies mit Sidekiq verwandt sein könnte? Es läuft als Upstart-Dienst auf Ubuntu, also denke ich nicht.
Dann dachte ich, das Problem könnte sein, dass ich das Dokument im Verzeichnis /tmp
speichern. Wie funktioniert das Verzeichnis? Wird der gesamte Inhalt des Verzeichnisses gelöscht, wenn ich eine neue Bereitstellung mit Capistrano durchführe?
EDIT:
Die Erstellung von Dokumenten dauert dauert in der Regel 5-10 Sekunden, aber die Warteschlange default
, so dass der Prozess scheitern könnte, weil es in der Warteschlange zu viele default
Prozesse ist?
'/ tmp'-Verzeichnis nach jedem Neustart bereinigt. –
'capistrano erstellt separaten Ordner für jeden neu implementierten Code – illusionist
@illusionist ok, wenn ich die Datei erzeuge, wird sie in'/tmp' gespeichert und in diesem Moment, wenn ich mit der Bereitstellung eines Codes beginne, wird dieser '/ tmp'-Ordner unzugänglich für die Anwendung, habe ich recht? – user984621