• Создание плагина для логической репликации в PostgreSQL 9.4+

    • Tutorial
    Как многие интересующися знают, в PostgreSQL в версии 9.4 появилось (наконец-то) логическое декодирование (logical decoding). Теперь, чтобы сделать свою репликацию, необязательно разбираться с форматом бинарных wal файлов или писать триггеры (может были еще способы), а преобразовать данные в удобный для себя формат. Для этого достаточно написать плагин к PostgreSQL, который будет этим заниматься. В статье описывается плагин, который преобразует данные в JSON.
    Читать дальше →
    • +22
    • 10.3k
    • 6
  • Введение в PostgreSQL BDR

      Введение в PostgreSQL BDR


      image
      PostgreSQL это не только стабильная и надежная СУБД но и плюс ко всем это динамично развивающийся продукт, в котором от релиза к релизу появляются самые разные прорывные вещи. В свое время одной из таких технологий была потоковая репликация. Это высокопроизводительная репликация которая позволяет очень легко и дешево масштабировать базу данных на чтение. Используя ее можно создавать надежные конфигурации распределяя нагрузку на чтение между узлами. Однако как я написал выше, продукт развивается, и сегодня в статье речь пойдет о новой технологии BDR (Bi-Directional Replication).
      Читать дальше →
    • Replication slots в PostgreSQL

      До девятой версии в PostgreSQL для создания «теплого» резервного сервера использовался WAL archiving. В версии 9.0 появилась потоковая репликация с возможностью создания «горячего» read-only сервера. В следующей версии PostgreSQL 9.4 появится новый функционал для создания потоковой репликации под названием replication slots.
      Читать дальше →
    • PostgreSQL 9.4 Что нового?



        Доброго времени суток! Не за горами релиз PostgreSQL 9.4 и нелишним будет пройтись по некоторым новшествам, привнесённым в этой версии. В статье будут рассмотрены (по большей части, касаемые клиентской модели):


        Подробней
      • Номер 8-800, или как разориться за один день

          В последнее время компании стараются использовать современные и удобные средства для завоевания лояльности клиентов. Одним из наиболее распространенных и, по мнению многих, эффективным средством является бесплатный номер «8-800». Мода на покупку таких номеров и установление контакта с потребителями через него начинает набирать обороты. Безусловно, клиент охотнее будет звонить на бесплатный номер, чем платить за время ожидания ответа очередного специалиста или менеджера на линии за свой счет. Но, как говорится, бесплатный сыр бывает известно где.

          Сегодня нам хотелось бы поговорить об обратной стороне использования сервиса «8-800», о том, как излишняя открытость может попросту разорить Вашу компанию. В общем виде, давайте рассмотрим такую проблему как телефонная безопасность, или телефонный DDoS.
          Читать дальше →
        • Защита Asterisk при атаке на номер 8-800

            После прочтения этой статьи с ужасом для себя понял, что мы никак не защищены от такой атаки. И легко можем попасть на 10-20 тысяч рублей в день. Решил это дело исправить. Накидал на коленке защитный скриптик — возможно кому-то пригодится…
            Читать дальше →
          • Как ускорить контейнер: тюнингуем OpenVZ

              image
              OpenVZ — это OpenSource-реализация технологии контейнерной виртуализации для ядра Linux, которая позволяет запускать на одной системе с ядром OpenVZ множество виртуальных окружений с различными дистрибутивами Linux внутри. За счет своих особенностей (контейнерная виртуализация идет на уровне ядра, а не железа) по ряду показателей производительности – плотности, эластичности, требованиям к размеру оперативной памяти, скорости отклика и т.д. – она работает лучше, чем другие технологии виртуализации. Например, тут можно посмотреть сравнения производительности OpenVZ с традиционными системами гипервизорной виртуализации. Но, помимо этого, в Linux и OpenVZ есть и масса вариантов тонкой настройки.
              В данной статье мы рассмотрим нетривиальные варианты настроек контейнеров ядра OpenVZ, которые позволяют улучшить производительность всей системы OpenVZ.
              Читать дальше →
            • Как мы Cisco Phone с Asterisk SIP дружили

              • Tutorial
              Как мы Cisco Phone с SIP дружили
              Завелся тут у клиентов новый зверек Cisco CP6921, с виду нормальный телефон только со своими закосами. До этого все cisco настраивались прямо с самого аппарата, да и были они классом повыше 79хх.
              Пришлось разгребать кучу мануалов. Перепробовать кучу конфигов. Пости на любом конфиге телефон понимает инструкцию версии прошивки и в случае чего перепрошивается. На какой то версии конфига он не понимает чего от него вообще мы хотим и раз в секунд 30 перезагружает конфиг. Но ни одного пакета не шлет к астериску.
              Продолжение экзотических развлечений
              • +1
              • 31.8k
              • 7
            • Собрать миллион «лайков» или очереди задач в Node.js

                На прошлой неделе мы отметили одну круглую дату — в базе данных Likeastore скопилось, ни много, ни мало — один миллион пользовательских «лайков».

                Мы используем JavaScript, все текущие сервисы написаны на JavaScript/Node.js. В общем и целом, я не жалею о использовании Node.js в нашем проекте, он отлично зарекомендовал себя как лучшее средство реализации HTTP API. Но для сбора «лайков», это должен быть daemon, который работает постоянно. Наверно, не самая типичная задача для Node.js — про специфику реализации и некоторые подводные камни, читаем далее.
                Читать дальше →
              • Проверяем доступность SIP провайдера

                • Tutorial
                В это статье хочу поделиться одним интересным на мой взгляд способом проверки доступности sip провайдера, или другого устройства, особенно он актуален когда по какой-либо причине нельзя проверить сторону icmp запросами, и основывается на OPTIONS запросах протокола SIP. Кого заинтересовала данная тема прошу под кат.
                Читать дальше →
              • Настройка CEL в Asterisk

                В настроящее время Asterisk всё больше и больше набирает популярность, им пользуются не только организации, но и обычные люди и для её пользователей встает вопрос тарификации разговоров. Например в относительно простой системе, где точность нестоль существена можно обойтись с помощью стандартного модуля CDR (Call Detail Record), который имеет три события: «Начало», «Ответ», «Конец» звонка и вести учет времени как разницу между окончанием разговора и ответом на звонок, но как быть, если у нас звонок с ненулевой вероятность может быть переадресован или поставлен на удержание? Для этого этих целей в Asterisk существует модуль CEL (Channel Event Logging) и под катом я опишу его концепцию и пример конфигурации.
                Читать дальше →