If we want to do on own application that need to read only but we can not modify, instance of a persistent class. A read-only cache can be used for this type of implementation to full fill the requirement. This is the simplest and optimal performing strategy. It is even safe for use in a cluster.
<class name="eg.Immutable" mutable="false">
<cache usage="read-only"/>
....
</class>