Я новичок в Aerospike.
Я хотел бы знать, что во всех возможных сценариях тайм-аута, как указано в этой ссылке:
https://discuss.aerospike.com/t/understanding-timeout-and-retry-policies/2852
Клиент можетне подключаться по указанному таймауту (timeout =).Тайм-аут, равный нулю, означает, что тайм-аут не установлен.
Клиент не получает ответ по указанному тайм-ауту (timeout =).
Время серверавывод транзакции во время ее собственной обработки (по умолчанию 1 секунда, если клиент не указывает время ожидания).Чтобы проверить это, убедитесь, что задержки транзакций сервера не являются узким местом.
Время ожидания клиента после M итераций повторных попыток, когда не было ошибки из-за сбоя узла или сбоя соединения.
Клиент не может получить действительный узел после N попыток (когда повторные попытки установлены от вашего клиента).
Клиент не может получитьдействительное соединение после X повторных попыток.Количество повторных попыток обычно является ограничивающим фактором, а не значением времени ожидания.Причина заключается в том, что если вы не можете получить соединение после повторных попыток R, вы никогда этого не сделаете, поэтому просто сделайте тайм-аут раньше.
Из всех упомянутых сценариев тайм-аута, при которых обстоятельства могутЯ был абсолютно уверен, что окончательный результат сделки не удалось?
Предлагает ли Aerospike что-то, например, откат транзакции, если клиент не отвечает?
В худшем случае, если я не могу быть уверен в конечном результате, как я смогузнать наверняка об окончательном состоянии сделки?
Заранее большое спасибо.
Редактировать: Мы нашли временное решение:
Держите карту[generation -> value read] для этой записи (возможно, фоновый поток, постоянно читающий запись и т. д.), а затем по тайм-аутам мы периодически проверяем карту (ключ = ожидаемое поколение), чтобы увидеть, действительно ли записанное значение действительноодин положил на карту.Если они одинаковы, это означает, что запись прошла успешно, иначе это означает, что запись не удалась.
Вы, ребята, думаете, что это необходимо сделать?Или есть другой способ?