который дает искать по этим же товарам. Товар добавляется сначала в постгрес, а потом уже в эластик. Но если так случится, что после записи в постгрес, например, приложение вырубится, то при следующем запуске товара не будет в эластике и это никак не отследить. Подскажите, пожалуйста, как решить эту проблему?
Приходит идея открывать транзакцию в постгресе и коммитить ее только после успешной записи в эластик, но как-то это плохо пахнет. Да и может быть обратная ситуация, когда после записи в эластик случится вселенский катаклизм и уже в постгрес мы не закоммитим.
Или правильным решением будет уход от строгой консистетности? Добавлять данные в постгрес, а потом асинхронно класть их в эластик каким-нибудь демоном?
Двухфазный коммит
saga
Я выгружаю список id в очередь (редис) и потихоньку их выгружаю. А потом по дате обновления следующую партию
можно попробовать через fdw https://github.com/rtkwlf/esfdw сам так не использовал, так что только предположение
Обсуждают сегодня