Данная статья о том как настроить современный почтовый сервер.
Postfix + Dovecot. SPF + DKIM + rDNS. С IPv6.
С шифрованием TLS. С поддержкой нескольких доменов — часть с настоящим SSL сертификатом.
С антиспам-защитой и высоким антиспам-рейтингом у других почтовых серверов.
С поддержкой нескольких физических интерфейсов.
С OpenVPN, подключение к которому через IPv4, и которое даёт IPv6.
Если вы не хотите изучать эти все технологии, но хотите настроить такой сервер — тогда эта статья для вас.
В статье отсутствуют попытки пояснить каждую деталь. Пояснение идёт к тому, что настроено не стандартно или важно с точки зрения потребителя.
Провёл скромные испытания железки ssd P4800X на запись. Сколько iops на запись в каких задачах, похожих на настоящие, она выдаёт. Результаты тестирования под катом.
Был куплен сервер с железкой P4800X (об этом можно почитать тут). Основной задачей сервер ещё не нагружен, а посмотреть на что способен ssd диск за 2000$ на 375Gb очень интересно. Замер делался только iops запись.
Для начала я решил сделать тесты на обновления БД. Сделал таблицу с 2мя колонками integer и 2мя колонками string. Сделал 40 потоков (20 физически ядер) которые ковыряли бы БД. В самой БД 40млн строк, каждому потоку по 1млн. Получилось 16170 iops, как видно на графиках.
Сентября 17го года купил в личное пользование сервер стоимостью 7680$ у поставщика Тиском.
Поставил в Московский ЦОД tech.ru и приступил к эксплуатации.
10 месяцев назад я начал делать браузерную игрушку. Выбор пал на cocos js в качестве графики и websocket в качестве общения с сервером. Технология очень понравилась и я на ней организовал всё общение игры с сервером. Использовал для этого эту статью. Но, к сожалению, тот код, который приведен в той статье, нельзя использовать в продакшене. Как выяснилось, уровень проблемы даже не критический, а блокирующий. Всё настолько плохо, что мне пришлось переписывать всё общение с сервером с вебсокетов на longpooling. В итоге я оставил вариант «если у нас браузер не сафари, то использовать websocket, иначе longpolling» и ещё немного ветвления на эту тему.
Так что опыт использования вебсокет в продакшене накопился приличный. И вот недавно случилось событие, которое сподвигло меня написать первую статью на Хабре.