Задача виглядала зрозуміло: історія переглядів користувача, швидкий вивід результатів при введенні ключового слова, сторінка пошуку з фільтрацією.
Але кожен тип контенту оголошення, пост, відео, продукт, shorts – має різну структуру даних. Ціни, перегляди, лайки. І все це має коректно оновлюватись і відображатись.
Плюс я додав блоки “Trending, Today, This Week, This Month“. Система рахує популярність у відсотках: перегляди, лайки, коментарі. Якщо контент дійсно популярний, він потрапляє в trending і піднімається на головній сторінці.
Два тижні роботи. Все працює. Запускаю тестування і ловлю проблему.
Активність користувача збиралась і відправлялась на сервер. А тепер якщо тисячі користувачів, за кожним потік даних. Сервер це не витримає. І справа не в потужності сервера, а в самій архітектурі передачі даних.
Я день бився над цим. Безрезультатно. Чесно хотів просто видалити цю функцію.
Наступного ранку не було жодного бажання повертатись до цієї задачі. Робити одне і те саме без результату.
Почав шукати інформацію, а її немає. Ніхто про таке не пише. Тоді пішов до AI, і під час переписки він крок за кроком пояснив підхід до вирішення. Я адаптував це під свій випадок і проблема зникла.
Пошук працює саме так, як я задумав.
Але тепер сиджу і думаю: а може не варто було все так ускладнювати? Може краще робити простіше, як усі? 😏