Сейчас на сайте есть функционал "личные сообщения" работает он на основе mysql и это очень дорого (сейчас 10 серверов mysql только для этой фичи и нагрузка растёт). Нужно искать альтернативы (или услышать ваши идеи), вчера пробовал kphp движок lists для этого он подходит но ВК забросило его сразу после публикации, а опенсорс его не поддерживает сильно (за 3 года 60 комитов в форке и то сомнительного качества).
Ну смотрите. У нас 2+ собеседника. Есть id диалога. По id диалога мы получаем id всех собеседников и каждому добавляем это сообщение. Многие люди залпом шлют по 5 смс с 1 словом (думаю вы поняли что я имею введу).
в итоге каждое смс это как минимум 3 запроса (получить id всех собеседников, и добавить это смс в бд отправителю и всем собеседникам (каждый собеседник это новый вопрос).
Даша Циклаури: асинхронно в бд писать нельзя из-за получения списка при первом входе в диалог. Потом клиент уже не обращается к базе для получения смс, а просто получает новые сообщения от ws сервера
Владимир Грабко: ты начни в БД писать асинхронно и нагрузка спадёт, асинхронно в данном случае означает, что в течение 2-3 секунд копишь сообщения в кэше, далее сбрасываешь в БД. При обращении клиента, если он находит диалог в кэше в базу лезть не нужно