以下问题:
我有一个连接到Postgres数据库的Yesod Web应用程序(所有内容都托管在AWS Elastic Beanstalk上)。
我的客户想要定义自动发生事件的时间表(日,小时......)(例如发送消息)。例如:“每个星期三的消息A将在下午02:00发送,但如果服务器在那段时间内停机,则不会在03:00 PM之后发送”。例如,可以将定义保存到S3上的文本文件中。
我找到的一个lib是https://hackage.haskell.org/package/cron,它可以作为我需要的基础,但需要注意:如果服务器在触发作业的特定时刻关闭,则消息不会是服务器返回时发送。
我过去使用过DelayedJob(Ruby),并且计划的作业存储在数据库中以避免此问题。但是在Haskell中,我只能找到没有数据库持久性的解决方案。
Haskell有什么需要考虑的,或者我必须自己构建它,例如使用http://jdabbs.com/resquing-yesod/之类的东西作为起点)?