brettt89 / silverstripe-garbage-collector
SilverStripe 垃圾回收模块
2.0.1
2024-09-13 02:30 UTC
Requires
- php: ~8.0
- silverstripe/framework: ^4.13 | ^5
Requires (Dev)
- phpunit/phpunit: ^9.6.13
- silverstripe/versioned: ^1.8 | ^2
- squizlabs/php_codesniffer: ^3
- symbiote/silverstripe-queuedjobs: ^4.7 | ^5
- tractorcow/silverstripe-fluent: ^5.0 | ^6 | ^7
Suggests
- symbiote/silverstripe-queuedjobs: For usage of the GarbageCollectorJob within your application
This package is auto-updated.
Last update: 2024-09-16 22:08:23 UTC
README
概述
SilverStripe 应用程序中定义和处理的垃圾回收模块。
安装
composer require brettt89/silverstripe-garbage-collector
基本用法
以下示例展示了如何为您的应用程序启用和配置 VersionedCollector 和 ChangeSetCollector。
--- Name: GarbageCollectors --- SilverStripe\GarbageCollector\Collectors\VersionedCollector: # Increase Versioned keep limit to 10 records keep_limit: 10 # Define base classes to collect versions for base_classes: - SilverStripe\CMS\Model\SiteTree SilverStripe\GarbageCollector\Collectors\ChangeSetCollector: # Reduce Changeset Lifetime to 10 days deletion_lifetime: 10 # Register collectors with service SilverStripe\GarbageCollector\GarbageCollectorService: collectors: - 'SilverStripe\GarbageCollector\Collectors\VersionedCollector' - 'SilverStripe\GarbageCollector\Collectors\ChangeSetCollector' #Queue a RecurringAllGarbageCollectorJob if there isn't one already. It will then re-queue itself to run once a day. Symbiote\QueuedJobs\DataObjects\QueuedJobDescriptor: extensions: - 'SilverStripe\GarbageCollector\Extensions\QueuedJobDescriptorExtension'
示例设置将在运行开发构建后每天运行所有垃圾回收器。它通过调用 GarbageCollectorService::inst()->process();
来实现。
您也可以决定用其他进程(带有 Crontab 的 BuildTask 调用 GarbageCollectorService::inst()->process();
)来执行此操作。
文档
垃圾回收基于移除/处理可能没有本地垃圾回收的记录和项目的想法。这应该可以扩展到与任何类型的数据集一起工作,只要存在相应的处理器。
组件
指南
报告问题
请 创建一个问题,报告您找到的任何错误或缺少的功能。
许可
本模块遵循 MIT 许可证
鸣谢
本项目的实现得益于围绕它的社区,特别是本文件中列出的杰出人士和项目。
贡献者
- Brett Tasker (https://github.com/brettt89)
- Mojmir Fendek (https://github.com/mfendeksilverstripe)