2017-08-26 3 views
0

Was wäre die empfohlene maximale Größe für eine Auftragsnutzlast?Was ist die empfohlene maximale Größe für eine Sidekiq-Auftragsnutzlast?

Als ein spezielles Beispiel, ist ein HTML-Dokument von 500 KB bis 1 MB Text zu groß, um in eine Job-Payload übergeben werden?

Da Sidekiq von redis unterstützt wird, würde ich sagen 512Mb, aber ich frage mich, ob es eine Begrenzung auf der Sidekiq Seite der Dinge gibt.

+1

Das würde ein bisschen Serialisierung und Netzwerkaufwand hinzufügen. Es wird funktionieren, aber ich habe keine Ahnung, wie viel Overhead damit verbunden ist. Sie müssen es benchmarken. –

+0

Danke für deinen Kommentar Mike. Ich wollte nur wissen, ob es einen maximalen Wert gibt, der von Sidekiq vorgegeben wird, oder ob es einen maximalen Wert gibt, in dem Sidekiq sich schlecht benimmt. Da es keinen gibt, gibt es nichts mehr zu tun als ein Benchmarking. – jdscosta91

Antwort

0

Sehen Sie diese article, sollten Sie Ihre Job-Parameter klein und einfach machen. Speichern Sie einfach einige einfache Bezeichner und suchen Sie dann die Objekte, sobald Sie sie tatsächlich in Ihrer Perform-Methode benötigen.

Und da es Serialisierung und Deserialisierung benötigen, wird es zusätzliche Kosten für Sie den HTML-Inhalt zu Job hinzufügen. Speichern Sie einfach den HTML-Inhalt in eine Zeichenfolge oder einen Container und senden Sie die Zeichenfolgen-ID oder Container-ID an redis, um die Effizienz und Einfachheit zu erhöhen.

+0

Danke für Ihre Antwort GuagshengZue. Ich kenne die Best Practices und die Kosten/Nutzen großer/kleiner Payloads. Ich möchte nur wissen, ob es eine auferlegte Einschränkung gibt oder nicht, oder ob es einen maximalen Wert gibt, in dem Sidekiq sich schlecht benimmt. – jdscosta91

+0

gibt es keine Begrenzung der Jobgröße von sidekiq. – GuangshengZuo

Verwandte Themen