AppEngine NodeJS гибкая memcache не определена GAE_MEMCACHE_HOST и GAE_MEMCACHE_PORT

Я хочу использовать сервис memcache AppEngine в моей гибкой среде NodeJS. Как указано в документации: https://cloud.google.com/appengine/docs/flexible/nodejs/using-redislabs-memcache

Я использовал предложенный файл app.yaml и разложил USE_GAE_MEMCACHE: 1 и прокомментировал другие переменные. Но когда я запускаю мою команду развертывания, это терпит неудачу с этой ошибкой:

net.js:1048
      throw new RangeError('"port" option should be >= 0 and < 65536: ' + port);
      ^

RangeError: "port" option should be >= 0 and < 65536: NaN
    at lookupAndConnect (net.js:1048:13)
    at Socket.connect (net.js:1021:5)
    at Object.connect (net.js:113:35)
    at Server.sock (/app/node_modules/memjs/lib/memjs/server.js:120:24)
    at Server.write (/app/node_modules/memjs/lib/memjs/server.js:219:8)
    at handleFlush (/app/node_modules/memjs/lib/memjs/memjs.js:620:10)
    at Client.flush (/app/node_modules/memjs/lib/memjs/memjs.js:624:5)
    at MemcachedDriver.flush (/app/data_manager/memcached_driver.js:42:17)
    at Storage.intialize (/app/data_manager/storage.js:45:12)
    at Object.<anonymous> (/app/app.js:22:9)
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! waternamics@1.0.0 start: `node ./bin/www`
npm ERR! Exit status 1
npm ERR! 
npm ERR! Failed at the waternamics@1.0.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /root/.npm/_logs/2018-07-26T14_39_48_624Z-debug.log

Когда я регистрирую MEMCACHE_URL Переменная это говорит: undefined: undefined Вот код, который я использую для подключения к memcache:

let MEMCACHE_URL = process.env.MEMCACHE_URL || '127.0.0.1:11211';

    if (process.env.USE_GAE_MEMCACHE) {
        MEMCACHE_URL = `${process.env.GAE_MEMCACHE_HOST}:${process.env.GAE_MEMCACHE_PORT}`;
    }

    this.client = Memcached.Client.create(MEMCACHE_URL);

Я не знаю, почему это не сработало. В документации указано, что оно в альфа-версии, но не должно работать?

1 ответ

Для использования Memcache с App Engine flex вам необходимо зарегистрировать эту форму, чтобы получить доступ к альфа-версии. [ Memcache flex form] (это может занять некоторое время).

Кроме того, вы можете выбрать между настройкой собственной Memcache (Redis и т. Д.) Или использовать Memcache для среды App Engine Standard.

Другие вопросы по тегам