Да, он создается и удаляется мгновенно.
есть сервис внутри класса Backend, сервис выглядит так:
// Setup AWS SNS
AWS.config.update({
region: 'eu-west-1',
accessKeyId: process.env.AWS_ACCESS_KEY_ID,
secretAccessKey: process.env.AWS_SECRET_ACCESS_KEY
});
var sns = new AWS.SNS();
var params = {
Message: "SMS message test",
MessageStructure: 'string',
PhoneNumber: '0045xxxxxxxx',
Subject: 'Alarm',
MessageAttributes :{
'AWS.SNS.SMS.SenderID': {
'DataType': 'String',
'StringValue': 'MySender'
},
'AWS.SNS.SMS.SMSType': 'Transactional'
}
};
Если нам нужно отправить смс, мы просто позвоним в эту службу.
Что здесь плохо, так это то, что мы знаем:
Мы используем секретные ключи в EC2. Тем не менее, мы работаем над этим для установки роли с конкретными разрешениями для экземпляров.
Представьте, что нам нужно изменить способ отправки SMS, нам нужно будет повторно развернуть все приложение только для этой крошечной части нашего приложения.
Хуже того, представьте, что у нас есть приложение для AutoScaling. Нам пришлось бы отбросить все экземпляры, чтобы обновить эту крошечную часть нашего приложения.
Другая проблема в том, что если нам нужно использовать этот сервис в других приложениях? Текущий подход приводит к дублированию службы среди приложений.
Последнее, как ведение журнала, мониторинг и т. Д.
Мы считаем, что есть лучший подход, чтобы избежать подобных проблем, поэтому вы можете увидеть наш подход для избежания вышеуказанных проблем.