Скоро пост!
Разработка Riseonly
Тут будут посты про разработку нашей соц сети Riseonly Команда: CEO | Tech lead: @nics51 Designer: @GRIMNIGHTPERSON Основной канал @nicsfrontend
Графики
📊 Средний охват постов
📉 ERR % по дням
📋 Публикации по дням
📎 Типы контента
Лучшие публикации
11 из 11Итог: Дебаггер с моками и экспортом в конфиг это то что реально ускоряет разработку. Реакции и упоминания работают через оптимистичные обновления и события. Парсер один раз написан и везде переиспользуется. Превью прилетает по событию и подставляется в кэш. Исправлен перфоманс ишуе в списке сообщений. Багов как всегда хватает но чиню, чиню, как обычно. ================ Общий итог: Реакции и упоминания на бэке и в приложении завязаны на таблицы, денормализацию, кэш и события. Превью ссылок вынесл...
Обновил дизайн, думаю стало гораздо солиднее
Вышел опенсорс мобильного приложения! 🥳😜😐👍 Архитектура очень интересная да и подходы реализованы везде свои, код очень хорошо масштабируется, да и я просто очень сильно горжусь им. Эта архитектура будет очень полезна только тем, кто уже имеет хоть какой-то опыт в Frontend. Не важно Web/Mobile, так как это React native. Новичкам крайне не советую копировать или подражать данной архитектуре в каждом проекте, потому что она подходит не для всех проектов и в реальных компаниях такие продуманные ...
День 616 | Разработка социальной сети Хай всем, чет реально долго не было поста, лан сейчас быстренько расскажу по обновам что было сделано, могу что то пропустить так как реально много мелких фич и тд но лучше скажу самое главное ================ Backend: Реакции: Завел message_reactions в Scylla, кто какую эмодзи на какое сообщение поставил. Отдельные таблицы под непрочитанные реакции для автора, чтобы при заходе в чат он видел всё и мог отметить прочитанным в дальнейшем. Чтобы не джойнить при...
------------ Реакции и упоминания в чате: У сообщения рисуем чипы реакций и кто поставил. Нажал на реакцию сразу обновляем UI оптимистично через buildAddPatch и saiUpdater в кэш getMessages, потом с бэка прилетает событие reaction_added или reaction_removed и подставляем актуальные данные. Так и мгновенный отклик и правильное состояние после. Непрочитанные реакции на твои сообщения показываем в кружочке, при заходе в чат дергаем markReactionsAsReadForMessage. Упоминания в группах: флаг is_mentio...
--------- Превью ссылок и зачем отдельный микросервис: В сообщениях люди кидают ссылки, и хочется показывать карточку с заголовком, описанием и картинкой страницы. Но чтобы это сделать, наш сервер должен сходить по ссылке, скачать HTML, вытащить оттуда og:title, og:description, og:image. Сайты бывают медленные, глючные, плюс надо защищаться от SSRF чтобы по ссылке не попросили сходить на внутренний адрес. Если бы мы делали это прямо в момент отправки сообщения, юзер бы ждал несколько секунд пока...
================ Комментарии от меня: ML микросервис и система рекомендаций в целом, это самая важная и сложная штука в соц сетях. Потому что это не только модель, а инженерка данных. Если события приходят криво, то любая формула будет выдавать говно. А важно это потому, что с грамотной системой реков, остается вовлеченность пользователей Контракт событий и разделение сервисов дали реально заметный апгрейд, и если ingestion сломан, то никакой ml не спасёт ================ Какие фичи на очереди (...