这里是回购:https://github.com/webostin/sf-case-study/tree/master/movie-invalidator
平台Symfony。我们有电影实体。我们有缓存电影分页和电影本身的复杂缓存系统。我们有前端面板和后端面板。 我们有附加到电影的用户实体。我们还有Admin Entity。
我们需要软删除电影,同时重置缓存并发送电子邮件。我们必须在三种(或将来更多)上下文中使用它:
此具体示例中的最佳做法是什么。我找到了3个解决方案:实现每个separetly(不好),写一个事件订阅者并在我想要禁用Movie,编写服务和使用Service来禁用Movie时触发事件。这是最佳可读和正确解决方案的问题。如果您有任何
,请提供您的解决方案答案 0 :(得分:0)
标记要在第一步中删除影片。在这种情况下,您不需要卸载缓存(您将在界面中看到警告消息)。在第二步中,管理员确认删除并添加到cron的队列中。第三步是删除cron,发送电子邮件并清除缓存。通过这种方式,整个负载都在cron上。