По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Функция как сервис или FaaS (Function as a service) это относительно новомодный термин, которым определяется возможность бессерверного запуска кусков кода, что дает возможность разработчикам писать и обновлять эти куски кода на лету, которые будут запускаться в результате отклика на какое-нибудь событие, к примеру, когда пользователь нажмет на элемент в веб-приложении. Благодаря этому масштабировать код и внедрять микросервисы становится на порядок проще. Что такое микросервисы? Небольшая аналогия: представьте себе большое полотно от известного художника - в нашем случае это будет веб-приложением. А теперь представьте себе большое произведение искусства, которое составлено из кусочков мозаики - причем каждый кусочек можно достать, немного модернизировать и починить, что практически невозможно в случае цельного веб-приложения. Такой подход к написанию приложения из набора модульных компонентов известен как микросервисная архитектура. Причем подобный подход довольно тепло воспринимается разработчиками, так как они могут создавать и модифицировать маленькие куски кода, которые относительно легко имплементировать в структуру приложения. Причем в монолитном приложении совершенно обратная ситуация, когда это приложение является огромной и экстремально сложной системой, где изменение одного из элементов может порушить его работу и процесс внесения изменения приближается по сложности к запуску шаттла. Таким образом, использование FaaS многократно снижает сложность внесения изменений и запуска нового кода, что дает возможность разработчикам сосредоточиться на самом коде, в то время как FaaS провайдер будет следить за нужным количеством вычислительных ресурсов и различных бэкэнд сервисов. Какие плюсы такой технологии? Увеличенная скорость разработки С FaaS разработчики могут тратить больше времени на логику приложения и не думать о том, куда и как это приложение воткнуть, что как правило ведет к более высокой скорости написания и имплементации кода. Bстроенная масштабируемость Так как FaaS платформы сами по себе легко масштабируемы в автоматическом режиме, разработчикам не нужно думать о моментах, в которые производительность приложения может пострадать - например, в различные часы наибольшей нагрузки. Всю заботу о масштабируемости возьмет на себя облачный провайдер. Оптимизация затрат Знаете, какой самый большой страх пользователя облачных серверов? Что вы наберете кучу серверов, а необходимой нагрузки не будет, что повлечет за собой в пустую простаивающие мощности. Логично, что появилась такая модель как FaaS, которая позволяет заказчикам платить только за то время, когда вычислительные мощности действительно работают. Какие минусы технологии FaaS? Снижение степени контроля системы в общем Учитывая, что всю заботу за железо, оркестрацию и прочее берет на себя провайдер, отладка кода и понимание цельной картинки может быть нетривиальной задачей - поэтому многие все еще предпочитают действовать по классической модели. Процесс тестирования становится гораздо сложнее Впихнуть невпихуемое, а именно микросервисное приложение (или целый комплект таких приложений) в локальное окружение для тестирование становится нетривиальной задачей, и часто начинают требоваться люди с нетривиальным опытом и экспертизой. Как начать использовать FaaS? Вам нужно начать переговоры с облачными провайдерами, которые предоставляют подобные сервисы - все просто. В первую очередь нужно будет понимать где будут располагаться ЦОДы провайдеры - так как в случае большого расстояния между ЦОДами могут начаться непрогнозируемые и странные проблемы. Список из таких провайдеров не велик, но всем хорошо знакомы эти имена: AWS (проект Lambda), Microsoft (Azure Functions) и Yandex Cloud Functions. Но в России выбор будет практически очевиден в пользу Яндекса, так как его сервера находятся ближе всего к нашей большой стране.
img
OpenVZ и LXD позволяют вам запустить полноценную операционную систему внутри контейнера, не сильно отличающиеся друг от друга. Но является ли одна системная платформа лучше другой? Вот сравнение OpenVZ и LXD. Обе платформы представляют собой “системные контейнеры”, предназначенные для размещения готовых клиентских операционных систем без необходимости эмуляции в стиле VMware. Системные контейнерные платформы отличаются от контейнеров Docker тем, что Docker предназначен в первую очередь для размещения отдельных приложений внутри контейнеров. Основным преимуществом OpenVZ и LXD является то, что они предоставляют более легкое решение для запуска клиентских операционных систем, чем VMware, KVM или других платформ виртуализации. С точки зрения качества, оба работают одинаково. OpenVZ против LXD Но есть некоторые важные характеристики, которые разделяют эти две платформы. Детали, характерные для OpenVZ, включают в себя: Она существует с середины 2000-х годов, и это уже устоявшаяся технология. Поддерживает все основные дистрибутивы Linux. Вам не нужно использовать определенный дистрибутив, чтобы использовать OpenVZ. Для его установки требуется специальное ядро. Это может быть проблемой, если Вам необходимы специальные функции в Вашем ядре, которые не встроены в пакеты ядра, предоставляемые OpenVZ. Коммерческая поддержка доступна от Virtuozzo, основной компании, занимающейся разработкой OpenVZ. Вы вряд ли найдете варианты коммерческой поддержки в другом месте. Доступ к физическому оборудованию из контейнера по умолчанию отключен при использовании OpenVZ. Это означает, если Вам необходимо, чтобы приложение внутри Вашей контейнерной клиентской операционной системы имело доступ к такому устройству, как видеокарта, Вам придется настроить доступ вручную (Это неудобство можно считать сильной стороной, поскольку ограничение доступа к оборудованию, возможно, является функцией безопасности.) А вот характерные особенности для LXD: Он основан на LXC, платформе контейнеризации Linux, которая существует с конца 2000-х годов. Однако сама LXD является новой технологией - её первый стабильный релиз состоялся весной 2016 года. В настоящее время он поддерживает только Ubuntu, дистрибутив Linux от Canonical. Он не требует специального ядра; Вы можете использовать стандартное ядро Ubuntu с LXD. Canonical заявляет, что предлагает коммерческую поддержку LXD, но для этого, во всей видимости, требуется оплатить план поддержки всей системы Ubuntu. Выбор между OpenVZ и LXD Какая из этих системных контейнерных платформ лучше всего подходит? Конечно, Вы можете начать с чего угодно. Но в целом LXD, вероятно, является лучшим решением, если Вы уже используете Ubuntu для размещения своих рабочих нагрузок или можете легко переключиться на него. В противном случае, поскольку LXD не работает на других дистрибутивах Linux, OpenVZ будет единственным вариантом, если Вы подключены к другой операционной системе. Я предполагаю, что, поскольку LXD пользуется сильной поддержкой со стороны Canonical, он будет продолжать развиваться и в конечном итоге поддерживать другие дистрибутивы. Когда это произойдет, это может быть лучшим выбором в целом, поскольку на него не распространяются некоторые ограничения OpenVZ, такие как требование установки специального ядра. Но до тех пор OpenVZ явно имеет большую ценность в качестве решения для запуска системных контейнеров на дистрибутивах, отличных от Ubuntu.
img
В этой статье расскажем как отправлять различные СМС сообщения пользователям, позвонившим в контакт-центр Октелл и запросившим такую информацию: информация по текущим тарифам, инструкции по смене тарифа или подписки и прочее. Настройки в личном кабинете системы «Ростелеком СМС Реклама» «Ростелеком СМС Реклама» позволяет отправлять СМС, используя простой API. После заключения договора и получения доступа к личному кабинету, необходимо настроить этот самый API. Для это в личном кабинете нажимаем на свой логин в правом верхнем углу и выбираем раздел «Общие настройки»: Откроется окно настроек профиля. Здесь нажимаем кнопку «API-рассылки»: Откроется список всех настроенных на данный момент подключений (если они уже настроены). Существующее подключение невозможно редактировать, пока оно работает. Вы можете только посмотреть его, приостановить или завершить, если в этом есть необходимость. Нажимаем кнопку «Настроить подключение»: В открывшемся окне настроим параметры для нашего подключения. Здесь необходимо задать следующие настройки: Тип рассылки - в нашем случае, это HTTP. Октелл будет присылать POST-запросы. Название рассылки – любое произвольное название. Время жизни СМС – можно задать время от 1 до 24 часов. Если по истечение этого времени СМС не будет доставлена, отправка отменяется. IP-адрес клиента – здесь нужно указать «белый» IP, с которого будут приходить запросы. Если адреса нет в списке, авторизация не пройдет и СМС отправляться не будут. После нажатия кнопки «Продолжить» статус рассылки изменится на «Подготовка», здесь нужно нажать кнопку «Сохранить» и ожидать результата. На этой странице, кроме параметров самой рассылки, так же приведены параметры для подключения: URL, login и пароль. Эти параметры всегда можно посмотреть на странице “API-рассылки”, выбрав нужное подключение из списка. Так же необходимо создать и согласовать короткое имя, которое будет отображаться в поле «Отправитель» при получении СМС. Это нужно сделать в разделе «Ресурсы» - «Имена отправителей». Этот параметр понадобится нам далее. Этих настроек достаточно, чтобы можно было отправлять СМС посредством API. Теперь переходим к настройке системы Октелл. Настройка системы Октелл Все пояснения по взаимодействию с API Ростелекома изложены в инструкции «HTTP API для отправки сообщений (JSON)». POST-запрос отправляется на URL, указанный в настройках подключения в личном кабинете. Каждый запрос должен пройти авторизацию. Авторизация происходит по методу HTTP Basic Auth, логин/пароль для авторизации так же указаны в личном кабинете в настройках подключения. Для отправки сообщения в самом запросе нам нужны три значения: MSISDN – это номер адресата. В формате 7 и 10-значный федеральный номер, (например: 79091234567) Shortcode – имя отправителя, созданное в личном кабинете ранее Text – непосредственно сам текст сообщения. Для переноса строки в тексте следует использовать последовательность символов , иначе сообщение не отправится. Итак, для отправки СМС я создал отдельный сценарий. Входным параметром для него является значение сессионной переменной. Далее, в самом сценарии, в зависимости от значения этой переменной, подставляется соответствующий текст для тела сообщения: Рассмотрим сценарий детальнее. Проверка и корректировка АОН На первом этапе проверяем АОН. Так как у нас звонки приходят с двух разных транков, на одном из них АОН выдается в формате 79091234567, а на другом 89091234567. Для использования в запросе мы должны использовать формат с 7-кой в начале номера, и то, что не соответствует данному формату, нам нужно преобразовать: При входе мы сравниваем АОН с числом 8 000 000 00 00. Если АОН меньше этого числа, он проходит без изменений и мы присваиваем его значение переменной msisdn, которую будем использовать далее в POST-запросе. Иначе нам необходимо вычесть из АОНа число 1 000 000 00 00, и уже получившееся значение поместить в переменную msisdn: Подготовка текста сообщения На данном этапе текст сообщения в моей задаче выбирается из нескольких статичных шаблонов. В последующем текст будет изменяться под каждого конкретного абонента (отсылаем информацию по его тарифу, услугам и прочее), но сейчас этот функционал еще не готов на стороне биллинговой системы. В любом случае, текст сообщения выбирается исходя из значения сессионной переменной, значение которой было присвоено в предыдущем сценарии после того, как абонент выбрал какой-либо пункт IVR нажатием соответствующей кнопки. Выбранный текст сохраняется в переменной smstext, которую мы будем использовать далее в запросе: Отправка запроса После того, как у нас есть значения всех переменных, мы переходим непосредственно к отправке самого POST-запроса (предварительно все ветви сходятся в элементе «уведомление», которое выводит текст сформированного сообщения и номер абонента. Это элемент отладки и на работу сценария никак не влияет). Запрос будет сформирован и отправлен с помощью инструмента WEB-запрос: Здесь используем следующие параметры: URL – адрес, указанный для отправки в параметрах соединения в личном кабинете Базовая авторизация – не использовать. В документации заявлено, что это поле позволяет использовать необходимый нам метод HTTP Basic Auth, однако на деле, при включении данной опции, авторизация у Ростелекома не проходит. Метод – POST Тип контента - application/json (нужно написать вручную) Тип запроса – аргумент Запрос – использован вот такой текст: '{"msisdn": ' + [msisdn] + ',"shortcode": "имя из ЛК","text": "' + [smstext] + ' "} ' Где:[msisdn] – имя переменной, где хранится номер телефона, на который отправляем смс, "имя из ЛК" – короткое имя, которые мы настроили в личном кабинете, [smstext] – переменная, где хранится текст самого сообщения. В самом Октеле это должно выглядеть так (красный шрифт – статический текст, синий – переменные): Вернемся к окну «Инспектор объектов» (параметры объекта «WEB-запрос»). Дополнительные заголовки – посредством этого поля мы выполним авторизацию. Для этого установим здесь значение: Authorization:Basic YTJwdGVzdF9zaWJpcjphMnB0ZXXX, где YTJwdGVzdF9zaWJpcjphMnB0ZXXX – это login:pass в base64. Для получения этой строчки выписываем свои логин: пароль и переводим кодируем их в base64 на любом подходящем интернет-ресурсе, например www.base64decode.org Ответ в переменную – укажем переменную, где будет сохраняться ответ на наш запрос. Нужно, чтобы в дальнейшем с помощью инструмента «Парсер» посмотреть результат запроса. Элемент «Парсер» настроим так, как указано на картинке ниже: Тег «status» информирует о результате запроса. Если пришло «OK» - значит, запрос принят, сообщение отправлено. Если пришло «error» - значит, произошла какая-то ошибка. В этом случае, в поле «reason» будет указана ошибка, которую можно расшифровать, используя документацию: Это основные настройки, которые позволяют отправлять СМС через систему «Ростелеком СМС Реклама» из платформы Октелл
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59