ste*_*pan 5 java session google-app-engine google-cloud-datastore google-cloud-platform
我注意到索引的_expires
属性_ah_SESSION
.查询过期的会话时,这肯定会很方便.但这似乎有一个缺点.该_expires
属性包含单调递增的值.这意味着此属性的索引记录很可能最终出现在单个平板电脑服务器上.我担心这种平板电脑服务器很容易被经常更新会话数据的应用程序重载.有没有办法告诉App Engine不要索引_expires
属性?也许就像添加规则一样appengine-web.xml
,例如:
<session-index-expiration>false</session-index-expiration>
Run Code Online (Sandbox Code Playgroud)
据我所知,回答我的问题是"不".我正在考虑提交功能请求.但也许我错过了一些东西.您的意见将非常感谢.
更新1:我提交了一个功能请求.请考虑通过"主演"投票给它:https://issuetracker.google.com/issues/71583968
更新2: Google注意到功能请求,"目前正在调查解决方案".在问题跟踪器讨论中,有一篇帖子说可能会阻止_expires
通过datastore-indexes.xml
配置文件索引属性.但是,由于此文件似乎只处理声明自定义索引,我无法看到如何使用它来禁用单个属性索引.有任何想法吗?
PS:我最初认为,_ah_SESSION
在每次请求仅仅更新到期时间戳之后,实体会自动重写,这有点普遍存在.但是这是错误的.根据SessionManager的实际实现,仅当会话至少25%到期时才会强制执行此类重写.这显着降低了索引_expires
财产引起争用的风险.至少对于主要使用会话来跟踪登录/注销用户的应用程序.
归档时间: |
|
查看次数: |
480 次 |
最近记录: |