Как правильно организовать базу под чат ? Какую СУБД брать? Postgre для этих целей сгодится? Как правильно кешировать это всё и надо ли?
При такой модели от 500к+ юзеров не поплохеет при записи\выборках?
class Message(models.Model):
sender = models.ForeignKey(User, on_delete=models.CASCADE, related_name='sender')
receiver = models.ForeignKey(User, on_delete=models.CASCADE, related_name='receiver')
message = models.CharField(max_length=1200)
timestamp = models.DateTimeField(auto_now_add=True)
is_read = models.BooleanField(default=False)
def __str__(self):
return self.message
class Meta:
ordering = ('timestamp',)