Я новый младший разработчик, присоединяющийся к этому удивительному сообществу. Я разрабатываю свой первый большой личный проект, и я застрял в этой конкретной части.Лучший способ создать систему уведомлений о подаче, такую как Facebook в Rails?
Я хотел бы построить систему оповещения корма, как Facebook со следующими характеристиками:
- Гусеницы различных моделей и отношений, например: новые значки заработали новые комментарии в подписке модели, новый сообщения от последующих пользователей, новые комментарии к моим сообщениям, новые понравилось в моих сообщениях ...
- Группа мероприятий, например, вместо 400 мероприятий для каждого понравится в моем посте, есть только одно уведомление, в котором говорится: Пользователь X и 399 больше нравится ваше сообщение "
- be отметьте как указано, чтобы больше не видеть их, по крайней мере, вы изучаете прошлые уведомления.
- Масштабируемость, хорошая производительность и возможная интеграция в будущем в APP, разработанный, например, с помощью Iconic framework.
Push-уведомления необязательны, это нормально, если пользователю необходимо обновить страницу, чтобы увидеть новые уведомления.
Итак, для этого я много читал. Я смотрел несколько видеороликов, следя за учебниками, но все же я не уверен, как начать.
Я рассмотрел следующие методы:
- Использование public_activity камня, добавив новое новое поле «читаемым» к миграции. И подумайте, как управлять сгруппированными активами. Но я видел много жалоб на производительность. Я ожидаю иметь около 50000 пользователей на моем веб-сайте в течение первого месяца (у меня уже есть пользователи), с пиками 500-1000 пользователей в Интернете. Так что, возможно, это не лучший способ пойти ... поскольку у меня было бы много мероприятий, много «уведомлений» и много пользователей.
- Используйте систему, такую как https://getstream.io/, потому что у них также есть возможности интеграции для RoR и Ruby. Главная проблема здесь в том, что касается ценообразования, потому что, проверяя ее, если я не ошибаюсь, с таким количеством пользователей, с примерно 10 уведомлениями на пользователя в день, я бы заплатил, вероятно, более 200 $ в месяц, и всегда буду расти как пользователи растут.
- Создайте собственную систему, возможно, используя Redis. Но, возможно, это будет слишком сложно и потребует много времени для хорошего, эффективного и рабочего кода.
Так что, считая этот вариант, я не знаю, какой из них лучше для меня, или если это другие возможности.
Если кто-то спросил перед этими вопросами, сообщите мне свои мысли и то, что вы считаете правильным путем.
спасибо !! :)
Ожидается, что у вас будет 50 000 пользователей в течение первого месяца? На проекте человека? Должно быть, одна идея. –
@ Jordan У меня уже есть пользователи, но прямо сейчас с одним wordpress. Я просто хочу выполнить переход из Wordpress в веб-приложение rails :) – adriandelarco
Ограничение пользовательских уведомлений до 10 в день смешно. Веб-сайты бесплатны. Тем не менее, этот вопрос слишком широк. Вы используете поставщика gem/SaaS или сворачиваете свое собственное решение. Это вопрос предпочтения. Несмотря на это, вам нужно будет хорошо понять Rails, чтобы построить это. Rails - довольно большая тема. Вероятно, вам понадобится время, чтобы учиться. –