当用户已经登录时,Security组件会每个reqyest继续从用户提供商重新加载数据.有没有办法避免这种情况?当您的用户提供程序不在本地数据库中时,例如,在Web服务中,这可能会使系统大大减慢.
在每一个请求我得到这个:
[2012-08-15 20:07:30] security.DEBUG: Read SecurityContext from the session [] [] [2012-08-15 20:07:30] security.DEBUG: Reloading user from user provider. [] []
根据您的需要,您可以根据您的需要,为每个请求刷新用户,以覆盖从给定的安全上下文中依赖的UserProviderInterface实现的refreshUser方法.
请参阅以下API文档:
UserProviderInterface.html#method_refreshUser
It is up to the implementation to decide if the user data should be totally reloaded (e.g. from the database),or if the UserInterface object can just be merged into some internal array of users / identity map.