TGViewer
Spring АйО Spring АйО @spring_aio · 10.9K subscribers
Post #993 6.41K
🧵 Введение в модели согласованности

Согласованность – это по сути контракт, описывающий семантику видимости изменений в общем ресурсе. Без модели вы не знаете, баг это или допустимое поведение системы.

Примеры моделей:

– Linearizability: запись включается сразу по реальному времени, после завершения её обязаны видеть все
– Serializable: транзакции атомарны, выглядят как выполненные согласно Prоgram Order, но не обязаны уважать реальное время
– Sequential Consistency: суперсет для Linearizability, где действия происходят лишь согласно Program Order, но не Real Time Clock.
– Causal: все процессы видят общий порядок только там, где есть причинность. Однако порядок независимых действий может интерпретироваться процессами по-разному.
– PRAM: каждый процесс видят «в его порядке», между процессами порядок может отличаться

Комментарий от Михаила Поливаха:
Это статья хоть и теоретическая, но понимание моделей консистетности крайне важно для понимания семантики happens-before в Java, и к тому же для понимания, например, как и почему уровни изоляции транзакций работают так, как работают.


Выбор модели консистентности для программы – это часто трейд-офф между предсказуемостью и производительностью. Например, поддержать Serializable гораздо сложнее, чем поддержать Causal.

📚 Подробнее тут: https://habr.com/ru/companies/spring_aio/articles/1006474/
  • 🔥 15
  • 👍 7
  • ❤ 4
More from @spring_aio
  1. Oct 3, 2026⚡️⚡️Строки кода стремятся подешеветь до цены токена. Что остается ценным? Про это — трек «…
  2. Oct 2, 2026🙅‍♂️ Не каждый AI-вызов должен генерировать текст Иногда от модели нужен не красивый отве…
  3. Oct 1, 2026JEP 544: JVM будет сохранять машинный код между запусками JEP 544 (Ahead-of-Time Code Comp…
  4. Sep 30, 2026🍃 Переписываем всё на Rust, JavaScript — кошмар, AI против Vaadin | Spring АйО Подкаст №7…
  5. Sep 29, 2026⚡️ AI-плагин уже в OpenIDE Pro Вышли новые версии OpenIDE и OpenIDE Pro: AI-плагин теперь…
  6. Sep 28, 2026🧑‍💻 Скрытая возможность конфигурации Spring Boot, о которой мало говорят Представим, что…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →