• Брать ли mongodb для нового проекта?

    ptchol
    @ptchol
    Linux system administrator
    Если я правильно понял, то по факту это time-series data, но структуру данных представляет собой своего рода дерево, и нотацию можно представить в виде
    Domain.Group.Entity.Properties, и вам нужно иметь возможность группировать по каждому из узлов.
    Может тогда посмотреть на специализированные решения вроде influxdb.org ?
    Ответ написан
  • Сам себе бухгалтер и юрист. Что почитать и посмотреть?

    ptchol
    @ptchol
    Linux system administrator
    Для бухгалтерии знакомые пользуются
    assistent.by \ assistentpro.ru \ nebopro.ru
    Довольны.
    С юридическими сервсисами к сожалению не подскажу.
    Ответ написан
    Комментировать
  • Почему Nginx при попытке открыть localhost/test.php предлагает скачать файл?

    ptchol
    @ptchol
    Linux system administrator
    nginx и не должен его открывать.
    Все запросы на динамику должны быть направлены тому кто сможет интерпретировать этот код (php-fpm \ apache с модулем php).
    Покажите конфиг nginx, проблема станет понятнее.
    Ответ написан
    2 комментария
  • Каково лучшее решение для хранения и выборки по логам (≈ 1 000 строк/сек)?

    ptchol
    @ptchol
    Linux system administrator
    Я бы в вашем случае прикрутил некоторый промежуточный буфер.
    Если писать сырые данные напрямую в БД есть риск из тормозов БД залочить\затормозить пишущего, либо просто напросто потерять логи.
    Мы в аналогичных задачах ставили буфер в виде redis и писали и читали ключи из объекта LIST с помощью команд RPUSH \ LPOP.
    Таким образом если происходил всплеск количества логов (появление "горячего" контента на портале), и они не успевали записываться в базу мы видели лишь увеличение количества записей в очереди, и то, что данные поступающие на анализ, несколько "староваты". При этом сами данные не терялись, и ни одна из сторон не лочилась.

    Если не боитесь оверхеда в 30% на хранении данных и новых продуктов, берите связку logstash + elasticsearch + kibana.
    При помощи logstash читаете лог, парсите его на лету выцепляя только нужные части и отправляете в ES, который все это дело индексирует и складывает с таймстемпами.
    А kibana дает красивенький интерфейс для просмотра, с графиками \ круговыми диаграмами и т д.
    Ответ написан
    Комментировать
  • Что дешевле: держать сервер дома или покупать выделенный?

    ptchol
    @ptchol
    Linux system administrator
    По электроэнергии, в случае потребления простеньким сервером ~200 ватт получаем примерно 400р в месяц. Статический адрес 100-150р в зависимости от оператора.
    Тоесть если считать только по этим 2м критериям вы заплатите не более 20$ в месяц. Что в принципе выгодно.

    Только на мой взгляд нужно учитывать также стоимость сервера, и время его окупаемости, а также амортизацию.
    В том же хетцнере через год вы получите за теже деньги сервер с повышенным количеством памяти \ hdd или более мощным cpu. А вот дома вряд ли.

    Также качество канала связи вашего оператора связи может быть сильно хуже чем у хостера, и это может вызвать негативный фидбэк посетителей ваших ресурсов.
    Ответ написан
    2 комментария
  • Как вы остаетесь в курсе последних новостей?

    ptchol
    @ptchol
    Linux system administrator
    Во flipboard'e есть тематические сообщества, g+ сommunity, twitter.
    Также иногда слушаю подкасты.
    Ответ написан
    Комментировать
  • Некорректный mime-type от сервера Centos+Nginx+PHP-FPM?

    ptchol
    @ptchol
    Linux system administrator
    В приведенной конфигурации не указано что ваша статика отдается напрямую с диска.
    Это так, или ее генерит и отдает вместе со всем остальным fpm ?
    Если все таки оно отдается через отдельный location, может попробовать сделать 2 локейшена один отдающий css второй отдающий jpg/png и конкретно для них прописать mime type.
    Ответ написан
  • Для чего нужен GVRP?

    ptchol
    @ptchol
    Linux system administrator
    Динамическая конфигурация VLAN без их ручного прописывания на портах.
    Вы задаете диапазон vlan'ов которые могут придти на данный порт. В случае поступления трафика с данным vlan id на какой либо порт коммутатор корректно (в соответсвии с настройками) добавит vlan на данный порт и обработает трафик из данного vlan'а в дальнейшем.
    Ответ написан
    Комментировать
  • Существует ли планировщик задач с логированием под Linux?

    ptchol
    @ptchol
    Linux system administrator
    Если вам что то маленькое и локальное то не знаю.
    Если большое и распредленное то есть chronos от airbnb
    Ответ написан
    Комментировать
  • Какое есть приложение под Linux для мониторинга сервера?

    ptchol
    @ptchol
    Linux system administrator
    newrelic, только с фришном аккаунте data retention - 24 часа всего.
    Ответ написан
  • Как отключить срабатывание триггера в определенное время в zabbix?

    ptchol
    @ptchol
    Linux system administrator
    Есть переменная time.
    {hostname:system.cpu.load[,avg1].last(0)}>5 & {:.time(0)}<=170000 & {:.time(0)}>180000
    Ответ написан
    1 комментарий
  • Есть ли готовое решение файлохранилища на 40 Tb?

    ptchol
    @ptchol
    Linux system administrator
    Если ваши данные будут "архивного" характера, то можно взять и отдельную железяку.
    Вот эти ребята уже почти 5 лет занимаются выскокоплотным размещением дисков в продакшене. В статье кстати есть спецификация по железу полностью.
    А вот эти ребята судя по всему позаимствовали идею и теперь продают железяки.

    Но если вы собираетесь активно читать все ваши данные, я бы задумался просто-напросто о построении распределенного стораджа.
    Ответ написан
    Комментировать
  • Где лучше хранить статитку?

    ptchol
    @ptchol
    Linux system administrator
    Если планируете расти, то сразу стоит задуматься над распредленной хранилкой.
    Рано или поздно контент перестанет вмещаться на 1 сервер.
    Выше уже советовали gluster, но лично я бы его врагу не посоветовал.
    Elliptics от яндекса, работает хорошо и быстро, несколько "необычен" в архитектуре внутри, но когда разбираешься, понимаешь зачем это нужно.
    В качестве "фронта", от них же уже запилена такая штука как rift которая позволяет реализовать систему бакетов аналогичную S3. Есть еще несколько надстроек позволяющих делать некоторую обработку данных "прямо в хранилище", не таская контент на другие хосты.

    Касательно CDN, цены на них и объема хранимого у них контента.
    Цены бывают очень гибкие, если посмотрите к примеру на CDN.net, при создании зоны они позволяют часть "дорогих" направлений исключить из обработки.

    Касательно объема хранимого на cdn't вашего контента.
    cdn77.com к примеру говорит что они хранят у себя до 50Гб вашего кэша, остальное по отдельному прайсу. Опять же они не гарантируют сохранность данных, а лишь позволяют увеличить объем кэша, если ваш активный dataset большего объема.
    У остальных cdn провайдеров таже история, только часто эта информация доступна только после обращения в саппорт.

    Отдавать напрямую с S3 дорого.
    Если мы говорим о дешевых хостингах, таких как hetzner \ datashack \ DO, то отдавать с них не всегда эффективно, если вам важна скорость доставки контента до клиента. Возможно у какого нибудь phoenixnap лучше доставка, но и сервера там дороже.
    Ответ написан
    Комментировать
  • Как исправить ошибку "recv() failed (104: Connection reset by peer) 502" в php-fpm / nginx?

    ptchol
    @ptchol
    Linux system administrator
    Попробуйте в конфиге пула fpm'а установить

    pm = static
    pm.max_children = 60

    и посмотреть, скажется ли это в положительную сторону на вашем тесте.
    Если да, то вам нужно регулировать значения
    pm.max_children \ pm.max_spare_servers в режиме dynamic.
    Их значения будут зависеть от профиля вашей нагрузки, насколько он равномерный или наоборот "пиковый".

    А чем вам не нравиться static ? У Вас как я погляжу на сервере 16Гб оперативки, не так уж и много займут воркеры в "пустом" состоянии.
    Ответ написан
    1 комментарий
  • Как обезопасить свой сервер?

    ptchol
    @ptchol
    Linux system administrator
    Проверьте /var/log/secure и посмотрите, логинился ли кто то под рутом.
    Смените пароль., на такой чтобы нельзя было подобрать по словарю.
    Прогоните rkhunter
    Следить за secure логом, не пытается ли кто то логиниться под служебными пользователями, и не появились ли у служебных пользователей среды.
    Ответ написан
    Комментировать
  • Какие есть стресс-тесты сайта wordpress в digital ocean?

    ptchol
    @ptchol
    Linux system administrator
    Купите в том же DO под каждый компонент системы по 1 инстансу.
    1 mysql, 1 php-fpm, 1 nginx. загоните это в тот же newrelic на халявный тариф.
    15 баксов и будет счастье.
    В дальнейшем и масштабировать по первости горизонтально будет проще.
    Ответ написан
    Комментировать
  • Как сделать хранение картинок на Amazon S3?

    ptchol
    @ptchol
    Linux system administrator
    Именно так и делается.
    У S3 есть API позволяющий вам все это делать из вашего приложения.
    Единственное что нас пока ограждает от хранения контента в S3 это стоимость трафика оттуда.
    Если ваш контент будут много и часто выкачивать (без какой то монетизации) можно разориться :)
    Ответ написан
  • В чем суть интерфейсов в программировании?

    ptchol
    @ptchol
    Linux system administrator
    Интерфейс это фактически регламент взаимодействия.
    Класс который реализует интерфейс обязан реализовывать все его методы.
    В интерфейсе вы описываете лишь сигнатуры методов, то есть вы указываете что класс наследник должен уметь делать, но как он будет это делать, тот решает сам.
    Таким образом вы уверенны, что если класс реализует тот или иной интерфейс, все объекты данного класса имеют определенный набор методов.
    ООП - мир абстракций :) Впустите его в себя :) Интерфейсы это еше одна абстракция позволяющая отделить описание от реалзиации.

    "Придумать класс с правильным именем" - так вы не сможете заставить "наследников" реализовывать функционал.

    Интерфейсы располагаются на уровень выше классов, если можно так выразиться. Они неявно "объединяют" классы схожие по каким то общим признаком, и которые обязаны (по логике вашего приложения) реализовывать те или иные методы.

    interface Instruments {
        final static String key = "До мажор";
        public void play();
    }
    class Drum implements Instruments {
        public void play() {
            System.out.println("бум бац бац бум бац бац");
        }
    }
    class Guitar implements Instruments {
        public void play() {
            System.out.println("до ми соль до ре до");
        }
    }


    p.s: программисты дополнят и поправят.
    Ответ написан
    2 комментария
  • Как изменить информацию о подключенных пользователях к серверу Ubuntu?

    ptchol
    @ptchol
    Linux system administrator
    Попробуйте набрать man inittab скорее всего увидите информацию что все унесли в /etc/init/*.conf
    И там уже попробуйте grep -R teplofak *
    Хотя может это всего лишь навсего имя компа ?
    Ответ написан
  • Есть ли консольная утилита для работы со звуком под Linux?

    ptchol
    @ptchol
    Linux system administrator
    Посмотрите на SoX, возможно Вас устроит.
    Ответ написан
    Комментировать