Предел размера достигнут в AWS Лямбда - PullRequest
1 голос
/ 23 марта 2020

Я хочу отправить данные из AWS Lambda в Azure Service Bus Queue. Ниже моя попытка.

var azure = require("azure");

function test() {
  var serviceBusService = azure.createServiceBusService(
    "URL"
  );
  var message = {
    body: "Test message",
    customProperties: {
      testproperty: "TestValue"
    }
  };
  for (let i = 0; i < 10; i++) {
    serviceBusService.sendQueueMessage("myqueue", message, function(error) {
      if (!error) {
        console.log("message sent");
      }
    });
  }
}

test();

И она прекрасно работает в моей локальной системе

Что я хочу - я хочу поместить этот код в AWS Lambda.

Ошибка - Когда я загружаю его в Lambda, я получаю сообщение об ошибке "Could not find azure package".

Попытка решения - я сжал свой локальный контейнер контейнера "узловые модули ", который имеет azure пакет и заархивировал его для загрузки, но я получаю ограничение на размер, достигнутый для исключения Lambda, поскольку размер zip-файла превышает 50 МБ (лямбда-предел).

1 Ответ

1 голос
/ 24 марта 2020

Пакет azure NPM является а) устаревшим и б) совокупностью всех функций, поэтому он намного больше, чем вам необходимо. Если вы действительно хотите продолжать использовать это, рассмотрите возможность использования подмножества пакета, в частности azure-arm-* или azure-*.

. Вам следует рассмотреть переход на более новый SDK , в частности azure -arm-sb Пакет ServiceBus. Обратите внимание, что в следующем году он также будет устаревшим, когда MS полностью переведет его на TypeScript.

...