2016-10-17 3 views
0

Ich verwende Redis für die Sitzungsverwaltung auf SailsJS. Ich habe zwei Probleme häufig auf Azure:SailsJS Bereitstellung auf Azur ist nicht stabil

  1. Benutzerkonfiguration Hook nahm zu viel Zeit zum Laden. Ich erhalte diesen Fehler ziemlich oft.
  2. Redis-Verbindung fällt weiter ab. Ich bin mit node_redis zu azur redis verbinden und finden meine redis Konfiguration:

    redisConfig: { host: 'XXXXXX.redis.cache.windows.net', port: 6380, ttl: 1000 * 60 * 60 * 24 * 30, db: 2, TLS: {server~~POS=TRUNC: 'XXXXX.redis.cache.windows.net'}, retry_unfulfilled_commands: true, enable_offline_queue: true, auth_pass: '', retry_strategy: function (Optionen) { if (options.error & & options.error.code === 'ECONNREFUSED') { // Beenden der Wiederverbindung bei einem bestimmten Fehler und flush alle Befehle mit einem individuellen Fehler Rückgabe neuer Fehler ('Der Server hat die Verbindung verweigert'); } if (options.total_retry_time> 1000 * 60 * 5) { // Beenden Sie die Verbindung nach einem bestimmten Timeout und spülen Sie alle Befehle mit einem individuellen Fehler geben neuen Fehler zurück ('Retry time weapon'); } if (options.times_connected> 20) { // Erneute Verbindung mit eingebautem Fehler beenden Rückgabe neuer Fehler ('Anzahl der Wiederholungen überschritten 10'); } // erneut verbinden nach return Math.max (options.attempt * 300, 5000); } }

Viele Male Ich bin diesen Redis nicht zugreifen können, aber immer noch bekomme ich nicht von der App für die gleiche Aufforderung Fehler.

Antwort

0

Fügen Sie HookTimeout: 120000 in der .sailsrc-Datei hinzu. Dies funktionierte, um das Zeitlimit für das Laden von Benutzerkonfigurationen inkrementieren zu können. Das Hinzufügen in Produktions- oder Entwicklungskonfigurationsdateien hat nicht geholfen, da prod/dev env vars nicht verfügbar sind, wenn das Zeitlimit für die Benutzerkonfiguration von hook gesetzt ist.