Laravel 5.3 - Notificação única para coleção de usuários (seguidores)
Quando eu tenho um úniconotifiable
usuário, uma única entrada nonotifications
tabela é inserida, juntamente com ummail
/sms
enviado que está funcionando perfeitamente via canais.
O problema é quando eu tenho umuser
coleção, uma lista de 1k usuários me seguindo, e eu publico uma atualização. Aqui está o que acontece ao usar oNotifiable
característica sugerida para casos de multiusuários:
mails
/sms
enviado (o problema não está aqui)1k entradas de notificação adicionadas aos bancos de dadosnotifications
mesaParece que adicionar notificações de 1k ao banco de dadosnotifications
tabela não é uma solução ideal. Desde otoArray
os dados são os mesmos e tudo o mais nos bancos de dadosnotifications
tabela é a mesma para 1k linhas, com osó diferença sendo onotifiable_id
douser
notifiable_type
.
Uma solução ideal pronta para uso seria:
O Laravel perceberia o fato de que é umarray
notifiable_type
Salvar umsolteiro notificação comonotifiable_type
user_array
ouuser
comnotifiable_id
0 (zero seria usado apenas para indicar que é um usuário com várias notificações)Criar / usar outra tabelanotifications_read
usando onotification_id
acabou de criar como oforeign_key
e insira 1k linhas, apenas destes campos:
notification_id
notifiable_id
notifiable_type
read_at
Espero que já exista uma maneira de fazer isso, como estou neste momento do meu aplicativo, e gostaria de usar as Notificações e os canais integrados para esta situação, pois estou disparandoemails
/sms
Eu acho que é bom repetir 1k vezes, mas é a entrada dos mesmos dados no banco de dados que é o problema que precisa ser otimizado.
Quaisquer pensamentos / idéias como proceder nesta situação?