Ответы пользователя по тегу PHP
  • Как указать картинку для репоста в facebook/vk/ok/twitter/google+?

    NaTTs
    @NaTTs
    Founder & CEO at Amplifr.com
    Мы писали статейку подробную вот.
    Ответ написан
    Комментировать
  • Как создать сервис сбора и анализа статистики из социальной сети?

    NaTTs
    @NaTTs
    Founder & CEO at Amplifr.com
    Мы сделали http://amplifr.com, сейчас первой версии, которую мы выпустили, четыре месяца. Всего мы занимаемся им немногим больше полугода.

    Это сервис для публикации и аналитики в соцсетях. Публикация и аналитика оказались примерно схожими по сложности задачами, хотя сначала может показаться, что публикация — совсем простая штука. Сложности в деталях.

    В аналитике у нас сейчас все достаточно просто. На текущий момент в базе 14млн записей о действиях пользователей соцсети (лайки, комменты, репосты), 12+млн пользователей соцсетей, это данные чуть меньше, чем пяти тысяч аккаунтов в соцсетях. Мы обсчитываем данные каждые час или два, в зависимости от текущей нагрузки.

    Аналитика работает в несколько слоёв. Сначала нужно достать сырые данные (это само по себе не одна операция), потом их обработать в формат, который удобно показывать пользователям.

    Сбор данных начинается с шедулинга в кроне. Раз в час отрабатывает скрипт, который ставит в очередь (!) задачи на сбор данных. Обработчик очереди разбирает задачи (у него есть квота на задачи, а то соцсети будут злые, если спамить), сначала делает запрос активности. Проблема в том, что если активности дофига, то вам придется делать несколько запросов, апи вернет «курсор» и вы будете с ним делать непонятно сколько запросов, пока все данные не получите. Проще всего просто сложить сырые данные в базу.

    Потом второй обработчик берет данные из базы, когда висит флажок «данные целостны, можно считать» и обсчитывает все публикации по каждой группе и систематизирует это всё.

    Этого достаточно для статистики. Если вы хотите аналитику и выводы из этого делать — это третий слой :-)
    Ответ написан
    Комментировать