2016-06-19 15 views
1

Я новый младший разработчик, присоединяющийся к этому удивительному сообществу. Я разрабатываю свой первый большой личный проект, и я застрял в этой конкретной части.Лучший способ создать систему уведомлений о подаче, такую ​​как Facebook в Rails?

Я хотел бы построить систему оповещения корма, как Facebook со следующими характеристиками:

  • Гусеницы различных моделей и отношений, например: новые значки заработали новые комментарии в подписке модели, новый сообщения от последующих пользователей, новые комментарии к моим сообщениям, новые понравилось в моих сообщениях ...
  • Группа мероприятий, например, вместо 400 мероприятий для каждого понравится в моем посте, есть только одно уведомление, в котором говорится: Пользователь X и 399 больше нравится ваше сообщение "
  • be отметьте как указано, чтобы больше не видеть их, по крайней мере, вы изучаете прошлые уведомления.
  • Масштабируемость, хорошая производительность и возможная интеграция в будущем в APP, разработанный, например, с помощью Iconic framework.

Push-уведомления необязательны, это нормально, если пользователю необходимо обновить страницу, чтобы увидеть новые уведомления.

Итак, для этого я много читал. Я смотрел несколько видеороликов, следя за учебниками, но все же я не уверен, как начать.

Я рассмотрел следующие методы:

  • Использование public_activity камня, добавив новое новое поле «читаемым» к миграции. И подумайте, как управлять сгруппированными активами. Но я видел много жалоб на производительность. Я ожидаю иметь около 50000 пользователей на моем веб-сайте в течение первого месяца (у меня уже есть пользователи), с пиками 500-1000 пользователей в Интернете. Так что, возможно, это не лучший способ пойти ... поскольку у меня было бы много мероприятий, много «уведомлений» и много пользователей.
  • Используйте систему, такую ​​как https://getstream.io/, потому что у них также есть возможности интеграции для RoR и Ruby. Главная проблема здесь в том, что касается ценообразования, потому что, проверяя ее, если я не ошибаюсь, с таким количеством пользователей, с примерно 10 уведомлениями на пользователя в день, я бы заплатил, вероятно, более 200 $ в месяц, и всегда буду расти как пользователи растут.
  • Создайте собственную систему, возможно, используя Redis. Но, возможно, это будет слишком сложно и потребует много времени для хорошего, эффективного и рабочего кода.

Так что, считая этот вариант, я не знаю, какой из них лучше для меня, или если это другие возможности.

Если кто-то спросил перед этими вопросами, сообщите мне свои мысли и то, что вы считаете правильным путем.

спасибо !! :)

+0

Ожидается, что у вас будет 50 000 пользователей в течение первого месяца? На проекте человека? Должно быть, одна идея. –

+0

@ Jordan У меня уже есть пользователи, но прямо сейчас с одним wordpress. Я просто хочу выполнить переход из Wordpress в веб-приложение rails :) – adriandelarco

+0

Ограничение пользовательских уведомлений до 10 в день смешно. Веб-сайты бесплатны. Тем не менее, этот вопрос слишком широк. Вы используете поставщика gem/SaaS или сворачиваете свое собственное решение. Это вопрос предпочтения. Несмотря на это, вам нужно будет хорошо понять Rails, чтобы построить это. Rails - довольно большая тема. Вероятно, вам понадобится время, чтобы учиться. –

ответ

1

Это Эрик на getstream.io. Наша Rails-интеграция, или клиент Ruby, может быть способом.

Поздравляем с тем, что уже на 50K пользователей, хотя даже с этой базой пользователей, я думаю, что наш план Pro по-прежнему может поместиться.

Не стесняйтесь снимать мне электронное письмо по адресу [email protected] - и мы можем серьезно относиться к использованию и придумывать что-то, что работает специально для вас.

+0

Спасибо Эрик. Я постараюсь с интеграцией getmstream для Rails сегодня. Я начал несколько минут и выглядел довольно просто и потрясающе. Я напишу вам, когда у меня появятся дополнительные вопросы, и я проверил его больше. – adriandelarco