Как загрузить файл в буфер в памяти в функции TypeScript Azure - PullRequest
0 голосов
/ 29 октября 2019

У меня есть файл данных объемом 64 МБ, к которому моя функция Azure должна будет повторно обращаться (100 раз). В идеале мне хотелось бы иметь статический экземпляр этого буферизованного файла в памяти, который я мог бы совместно использовать через вызовы функций в экземпляре приложения функции. Ниже приведен пример кода, который пытается добиться этого статического буфера в памяти (это мой первый удар по этой проблеме):

  import { AzureFunction, Context } from '@azure/functions';
  import { promises as fsPromises } from 'fs';

  let buffer: Buffer;

  const eventHubTrigger: AzureFunction = async function(context: Context, eventHubMessages: any[]): Promise<void> {
      context.log(`Eventhub trigger function called for message array ${eventHubMessages}`);

      if (!buffer) {
          buffer = await fsPromises.readFile('myDataFile');
      }

      eventHubMessages.forEach((message, index) => {
          // Manibulate message using buffered file
      });
  };

  export default eventHubTrigger;

Это подводит меня к сути моего вопроса. Как загрузить файл в буфер в памяти в функции Azure?

...