По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
MongoDB представляет собой универсальную структурированную и документно-ориентированную распределенную базу данных, созданную для современных приложений. Почему MongoDB? MongoDB NoSQL является базой данных с открытым исходным кодом, хотя, для корпоративных версий, придется покупать лицензии. MongoDB использует масштабируемую архитектуру на основе документов, которая хранит данные в формате JSON. Она обладает такими функциями, как совместное использование, кластеризация, репликация, агрегирование, формат BSON, индексирование, коллекции ограниченного объема и хранение файлов. Для хранения и извлечения данных из базы данных используется механизм wiredTiger, которая намного быстрее по сравнению с другими СУБД. Есть и другие полезные функции, которые включает в себя MongoDB, например, функция многодокументных ACID транзакций. В зависимости от варианта использования, у нас могут быть два аспекта, на которых необходимо обратить внимание при выборе хостинга на платформе MongoDB. Первым из них будет цена, а вторым возможности, которые она предлагает. Если говорить о ценообразовании, во-первых, нужно проверить хостинг провайдеры, которые предоставляют либо бесплатные, либо пробные версии. Как только мы воспользуемся этой схемой, будет легче принять решение. После использования бесплатной или пробной версии, мы можем сравнить и поискать другие более дешевые варианты. Говоря о функциях, ниже приведены ключевые особенности, которые необходимо принять во внимание, прежде чем выбирать для MongoDB хостинг платформу. Насколько хороша производительность? Размышляя о производительности, мы рассматриваем такие факторы, как время безотказной работы, например, скорость скачки и скорость закачки. Насколько хороша поддержка? Поддержка является очень важной частью при выборе платформы. Так как если возникнет какая-либо проблема, необходимо иметь надежную систему поддержки, которая может вовремя подключиться и быстро устранить проблемы. Насколько хороши методы резервного копирования? Каждая хостинговая компания имеет различные методы и процедуры резервного копирования. Некоторые компании берут дополнительную плату за хранение резервных копий и ставят ограничения на размер резервных копий. Это также важно, поскольку для резервного копирования базы данных требуется остановка системы или перезапуск. Существует два способа арендования хостингов MongoDB. Self-hosted Буквально переводится как самоуправляемый. Вы получаете облачную виртуальную машину и сами заботитесь об установке, настройке, мониторинге и администрировании. Это хорошо, если вы технически подкованный человек и у вас есть время заниматься всей этой кропотливой работой. Это может обойтись немного дешевле, но вы соглашаетесь на трату своего времени (а может и бессонные ночи). Managed В данном варианту вся забота настройки и текущего обслуживания лежит на персонале хостинг провайдера, и вы оплачиваете то, что используете. Ниже приведены некоторые из популярных платформ для размещения MongoDB. В этом материале постараемся рассмотреть их. 1. Atlas Atlas - облачный сервис баз данных компании MongoDB. Он имеет упрощенный пользовательский интерфейс для настройки баз данных и управления ими, а также многие другие функции, такие как совместное использование, кластеризация, репликация и т.д. Имеется возможность размещения на AWS, GCP или Azure. Такие компании, как eharmony, InVision, SEGA, KPMG, 7-ELEVEN широко используют облачный Atlas. Вы можете начать пользоваться им БЕСПЛАТНО, чтобы изучить платформу. Бесплатная версия предоставляет вам следующее. 512 МБ памяти Общая ОЗУ Наборы точных копий высокой надежности, сквозное шифрование, автоматические исправления, REST API Кроме того, при запуске выделенного кластера получите доступ к следующему: 10 ГБ или более ресурсов хранения Выделенная ОЗУ Инструменты оптимизации производительности Резервное копирование и восстановление на определенный момент времени Функции корпоративной безопасности, включая управление ключами шифрования, интеграцию LDAP и выборочный аудит баз данных Глобальные кластеры 2. Kamatera Kamatera является глобальным поставщиком облачных услуг и предоставляет инфраструктуру корпоративного уровня для малых и крупных предприятий. Центры обработки данных Kamatera расположены в Америке, Европе, Азии и на Ближнем Востоке. Инфраструктуру приложений можно легко расширить, добавив подсистему балансировки нагрузки, хранилище, сетевой брандмауэр и частные сети. Она может масштабироваться до большего количества серверов за считанные секунды и обеспечивает гарантированное время безотказной работы в 99,95%. Он предоставляет 30-дневный бесплатный пробный период, который можно использовать в качестве демонстрации для тестирования производительности. А после можно выбрать подходящий тарифный план, цены на которых начинаются с 4 долларов в месяц. 3. A2 Hosting A2 Хостинг популярен для WordPress, Joomla, Magento, Drupal и т.д. Но знаете ли вы, вы также можете получить хостинг MongoDB? Ну, теперь знаете. A2 предлагает множество удобных для разработчиков и ориентированных на производительность функций. Наряду с MongoDB можно разместить и другие базы данных, такие как MariaDB и SQLite. 4. ScaleGrid ScaleGrid - это полностью управляемое решение DBaaS (Database as-a-service). Поддерживает различные платформы баз данных, включая PostgreSQL, MySQL, Redis и MongoDB. На выбор предлагается два варианта. Вы можете либо мигрировать свое уже существующую облачную инфраструктуру, как AWS, DigireOcean, Azure или же завести тут выделенное облако. Они также предлагают локальное управление базами данных для предприятия. При заказе сервера можно выбрать автономный или с набором реплик. 5. Scalingo Scalingo полностью управляется и обеспечивает готовую к производству среду для MongoDB. Он предоставляет кластер MongoDB по запросу. Начальная цена базового пакета составляет $3,6, что дает нам 256MB ОЗУ и 1.25GB емкость хранения. В Scalingo экземпляр MongoDB будет находиться в контейнере Docker, поэтому он будет изолирован от других экземпляров, работающих на сервере. Вы получаете метрики и логи в реальном времени, которые могут помочь в устранении неполадок и планировании емкости. 6. ObjectRocket ObjectRocket решает проблемы масштабируемости и производительности, которые возникали до сих пор у экспертов по базам данных благодаря неограниченному доступу к DBA MongoDB и Fanatical Support. Он отслеживает более 250 метрик в минуту на каждом экземпляре базы данных и предпринимает действия для поддержания оптимальной производительности среды. Особенности: Мониторинг и оповещения Миграция базы данных Балансировка экземпляра Масштабирование ресурсов и управление ими Масштабирование и анализ запросов Проектирование схемы MongoDB Консультации по архитектуре и проектированию Аудит базы данных производственного уровня Белый список SSL и IP 7. IBM IBM Cloud предлагает гибридную облачную платформу следующего поколения с возможностями BigData и AI. Он имеет множество функций, таких как масштабирование без сервера и автоматическое резервное копирование. С помощью IBM Cloud разработчики могут сосредоточиться на создании приложений, а не на решении таких задач инфраструктуры, как безотказность, резервное копирование, ведение журналов, мониторинг, масштабирование и исправление программного обеспечения. Полностью управляемая база данных IBM MongoDB обеспечивает готовую интеграцию с IBM Identity and Access Management и IBM Activity Tracker для расширенного контроля доступа и аудита. Заключение Надеюсь, приведенный выше список дал лучшее представление о хостинг-платформе MongoDb. Почти каждая платформа предлагает пробную версию, поэтому стоит попробовать и посмотреть, что больше подходит под ваши требования.
img
Вы помните из прошлых статей, что BGP был создан для поддержки многих различных протоколов и NLRI непосредственно с момента его возникновения. В результате чего BGP поддерживает такие технологии, как IPV6, MPLS, VPN и многое другое. Вы будете приятно удивлены тем, что как только вы овладеете основами BGP, которые мы рассмотрели в этом цикле статей, работа с BGP в IPv6 покажется очень простой! Предыдущие статьи цикла про BGP: Основы протокола BGP Построение маршрута протоколом BGP Формирование соседства в BGP Оповещения NLRI и политики маршрутизации BGP Масштабируемость протокола BGP Видео: Основы BGP за 7 минут BGP с IPv6 BGP настолько удивительно гибок, что, как обсуждалось ранее в этом цикле статей, можно использовать IPv4 в качестве «несущего» протокола для IPv6 NLRI. В данном случае мы рассматриваем IPv6 как «пассажирский» протокол. Давайте сначала рассмотрим конфигурацию и используем два простых маршрутизатора, как показано на рисунке 1. Рисунок 1: Простая топология для IPv6 протокола BGP Пример 1 показывает конфигурацию и проверку такой сети. Обратите внимание, что эта конфигурация требует установки соответствующего адреса следующего прыжка IPv6 для префиксного объявления. Это не требуется при использовании IPv6 как протокола «перевозчика», так и протокола «пассажира». Пример 1: IPv4 «перевозящий» IPv6 NLRI ATL#conf t Enter configuration commands, one per line. End with CNTL/Z. ATL( config)#ipv6 unicast-routing ATL(config)#route-map IPV6NH permit 10 ATL(config-route-map)#set ipv6 next-hop 2001:1212:1212::1 ATL(config-route-map)#exit ATL(config)#int lo 100 ATL(config-if)#ipv6 address 2001:1111:1111: :/64 eui-64 ATL(config-if )#router bqp 200 ATL(config-router)#neiqhbor 10.10.10.2 remote-as 200 ATL(config-router) #address-family ipv4 unicast ATL(config-router-af)#neiqhbor 10.10.10.2 activate ATL(config-router-af)#address-family ipv6 unicast ATL(config-router-af)#neiqhbor 10.10.10.2 activate ATL(config-router-af)#neiqhbor 10.10.10.2 route-map IPV6NH out ATL(config-router-af)#network 2001:1111:1111: :/64 ATL(config-router-af)#end ATL# Пример 2 показывает проверку этой конфигурации на ATL 2. Обратите внимание, что поскольку EUI-64 действует на интерфейсе обратной связи ATL, вам нужно будет скопировать полный IPv6-адрес из этого интерфейса, чтобы выполнить тестирование командой ping. Пример 2: проверка настройки BGP IPv4/IPv6 ATL#show ip bgp ipv6 unicast ATL2#ping 2001:1111:1111:0:C801:6FF:FEDB:0 Как вы можете догадаться, гораздо более «чистая» конфигурация заключается в использовании IPv6 для передачи информации IPv6 префикса. «Чистая» - это имеется в виду гораздо простая конфигурация. Пример 3 демонстрирует эту конфигурацию. Обратите внимание, что были удалены все IPv4 с устройств, поэтому необходимо установить 32-битный router ID для BGP, поскольку он не может установить его автоматически из интерфейса на устройстве. Пример 3: проверка настройки BGP IPv4/IPv6 ATL1#conf t ATL1(config)#router bgp 200 *Jan 9 03:31:21.039: %BGP-4-NORTRID: BGP could not pick a router-id. Please configure manually. ATL1(config-router)#bgp router-id 1.1.1.1 ATL1(config-router)#neighbor 2001:1212:1212::2 remote-as 200 ATL1(config-router)#address-family ipv6 unicast ATL1(config-router-af)#neighbor 2001:1212:1212::2 activate ATL1(config-router-af)#network 2001:1111:1111::/64 ATL1(config-router-af)#end ATL1# Возможно, вам будет интересно проверить соседство BGP после настройки IPv6. Мы очень любим использовать команду show ip bgp summary для проверки настроек в IPv4. Для IPv6 используйте команду show bgp ipv6 unicast summary. Как вы помните из предыдущей части этой серии статей, существует много замечательных механизмов фильтрации, которые мы можем применить в IPv4 BGP. Замечательная новость заключается в том, что этот же набор методов, доступны и для IPv6. Ментоды включают в себя такие механизмы, как: Prefix lists AS Path Filtering Route maps Пример 4 показывает пример конфигурации фильтрации с использованием списка префиксов. Обратите внимание, что эта конфигурация действительно не требует от вас повторного изучения каких-либо технологий. Пример 4: фильтрация префиксов IPv6 в BGP ATL#conf t ATL(config)#ipv6 prefix-list MYTEST deny 2001:1111:1111::/64 ATL(config)#ipv6 prefix-list MYTEST permit ::/0 le 128 ATL(config)#router bgp 200 ATL(config-router)#address-family ipv6 unicast ATL(config-router-af)#neighbor 2001:1212:1212:: 2 prefix-list MYTEST out ATL(config-router-af)#end ATL# ATL#clear ip bgp *
img
Работаете с IP – АТС Asterisk? Тогда этот материал для вас. Говорить будем про отправку уведомлений в VK (Вконтакте) при входящем звонке. От слов к делу. Получаем access_token Первым делом, перейдите Developers раздел VK. В хедере (верхнем меню навигации) нажмите Мои приложения после чего нажмите Создать приложение: Название - дайте имя для вашего аппликейшна. Например, Asterisk; Платформа - выбираем Standalone-приложение; Переходим в раздел настроек созданного приложения. Копируем ID приложения, как показано на рисунке ниже: Отлично. Теперь скопируйте ссылку ниже: https://oauth.vk.com/authorize?client_id=1234567&scope= offline,messages&redirect_uri=https://oauth.vk.com/blank.html&display=page&v=5.37&response_type=token Предварительно замените client_id на ваше значение, полученное ранее (ID приложения). VK API спросит разрешения на доступ к некоторым данным: Если все ОК, то VK вернет нам токен: Если вы столкнулись с ошибкой вида «{"error":"invalid_request","error_description":"Security Error"}», то перелогиньтесь в вашей учетной записи в VK и повторите попытку Сохраняем значение и переходим к настройке скрипта на стороне Asterisk. Адаптация на Asterisk Реализацию скрипта сделаем на .php. Создайте файл asteriskvk.php и наполните его следующим содержимым: #!/usr/bin/php -q <?php require('phpagi.php'); $agi = new AGI(); $message = "Сейчас поступит звонок с номера: "; $message .= $agi->request['agi_callerid']; $id = "ID получателя сообщения"; $token = "Токен"; function send($id , $message, $token) { $url = 'https://api.vk.com/method/messages.send'; $params = array( 'user_id' => $id, 'message' => $message, 'access_token' => $token, 'v' => '5.37', ); $result = file_get_contents($url, false, stream_context_create(array( 'http' => array( 'method' => 'POST', 'header' => 'Content-type: application/x-www-form-urlencoded', 'content' => http_build_query($params) ) ))); } send($id, $message, $token); Скачать скрипт В скрипте вам необходимо поменять следующие переменные: $id - идентификатор пользователя, которому будет отправлено сообщение. Помимо user_id, это может быть ID группового чата; $token - API - токен, который вы получили ранее; Сохраняйте файл и загрузите в директорию /var/lib/asterisk/agi-bin/ после чего дайте следующие команды в консоли сервера: chmod 755 /var/lib/asterisk/agi-bin/asteriskvk.php chown asterisk:asterisk /var/lib/asterisk/agi-bin/asteriskvk.php dos2unix /var/lib/asterisk/agi-bin/asteriskvk.php Лезем в диалплан и на входящем маршруте адаптируем простенькую конструкцию: exten => _.,n,AGI(asteriskvk.php) Звоним и проверяем:
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59