Laravel 5.3 - Единое уведомление для коллекции пользователей (подписчики)

Когда у меня есть одинnotifiable пользователь, одна запись вnotifications стол вставляется вместе сmail/sms отправлено, который отлично работает по каналам.

Вопрос в том, когда у меня естьuser коллекция, список 1k пользователей, следующих за мной, и я публикую обновление. Вот что происходит при использованииNotifiable черта как предложено для многопользовательского случая:

1kmails/sms отправлено (вопрос не здесь)1k записей уведомлений добавлено в БДnotifications Таблица

Похоже, что добавление 1k уведомлений в БДnotifications Стол не является оптимальным решением. ПосколькуtoArray данные такие же, а все остальное в БДnotifications таблица одинакова для 1k строк, столько разница в том,notifiable_id изuser notifiable_type.

Оптимальное решение из коробки было бы:

Laravel поймет тот факт, что этоarray notifiable_typeСохранитьне замужем уведомление какnotifiable_type user_array или жеuser сnotifiable_id 0 (ноль будет использоваться только для обозначения пользователя с несколькими уведомлениями)

Создать / использовать другую таблицуnotifications_read с использованиемnotification_id он просто создан какforeign_key и вставьте 1k строк, только из этих полей:

notification_id notifiable_id notifiable_type read_at

Я надеюсь, что уже есть способ сделать это, как я сейчас нахожусь в моем приложении и хотел бы использовать встроенные уведомления и каналы для этой ситуации, так как я запускаюemails/sms я думаю, что это нормально повторять 1к раз, но ввод этих же данных в базу данных - это проблема, которую нужно оптимизировать.

Есть мысли / идеи, как поступить в этой ситуации?

Ответы на вопрос(2)

Ваш ответ на вопрос