cache behave