提供确定性会话垃圾回收,而不是默认的随机一种
项目描述
每当Odoo处理一个新的请求时,都会评估此语句: random.random() < 0.001 [1]
平均每1000次中会有1次返回 True 并触发会话垃圾回收:超过1周未活跃的会话将被删除 [2]
这种随机方法在某些情况下可能会成为问题。
在一个访问量大的Odoo网站上,将会创建许多会话。遍历所有这些会话需要一些时间,尤其是在缓慢/负载的文件系统上。随机发生的垃圾回收,用户会向你报告Odoo在某些随机操作上随机变慢的情况。他们无法重现这些情况,你也不能在Odoo日志中追踪它们,因为调用响应时间不包括Odoo在垃圾回收上花费的时间。
此外,在负载很高的服务器上,最好能够控制垃圾回收发生的时间。例如,有人可能只想每晚运行一次。
因此我们创建了此模块
以禁用默认的随机垃圾回收
使管理员能够将其替换为确定性方法
通过使用包含的计划任务;
或通过远程调用添加的公开方法 ir.autovacuum:gc_sessions()
目录
安装
您需要在本服务器范围内加载此模块
通过使用 --load=web,base_deterministic_session_gc 启动 Odoo
或者通过更新其配置文件
[options]
(...)
server_wide_modules = web,base_deterministic_session_gc
如果您想使用提供的确定性方法,还需要在数据库中安装它。
配置
您可以在 Odoo 配置文件中更改会话过期延迟
[options]
(...)
; 1 day = 60*60*24 seconds
session_expiry_delay = 86400
默认值为 7 天。
错误追踪器
错误在 GitHub 问题 上追踪。如果遇到问题,请检查您的错误是否已经报告。如果是您首先发现的,请提供详细且受欢迎的 反馈 以帮助我们解决问题。
请不要直接联系贡献者寻求支持或帮助解决技术问题。
鸣谢
贡献者
Nils Hamerlinck <nils@trobz.com>
维护者
此模块由 OCA 维护。
OCA,或 Odoo 社区协会,是一个非营利组织,其使命是支持 Odoo 功能的协作开发并推广其广泛应用。
此模块是 GitHub 上 OCA/server-tools 项目的组成部分。
欢迎您贡献力量。有关如何贡献的更多信息,请访问 https://odoo-community.org/page/Contribute。
项目详情
odoo13_addon_base_deterministic_session_gc-13.0.1.0.1.dev2-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 57ef0260d0762d8de816922c80309d796e56ce5f42673a162bce5557168c5ac4 |
|
MD5 | b45f8fc3b6da0e5e0dcba6e28e0c0192 |
|
BLAKE2b-256 | 6e7017809f28846c8cdaaffc7320e9edad7d5468857d67b77d90696554ca493c |