Все зависит от того, сколько чтений у вас больше, чем записей.Ваши обновления будут дороже.Таким образом, выигрыш времени при чтении должен компенсировать это.
Ehcache обрабатывает одновременный доступ.Тем не менее, это атомарный, а не транзакционный.Поэтому, если вы получаете несколько значений из разных кешей, вы можете получать промежуточные обновления.Но это то же самое для базы данных.Кроме того, вы можете использовать XA, чтобы убедиться, что ваши записи синхронизированы с базой данных.