我正在使用PostgreSQL在Heroku上托管的Dart / Aqueduct编写一个非常小的REST API。
与此API通信时,我需要获取所有数据并将其存储在本地应用程序中。该应用程序将在重新启动时询问API,如果任何数据库中的任何数据均已更改,则只能通过此API进行修改。
我的问题是:如何检查数据是否已修改?将其存储在渡槽通道中不可行,因为Heroku会根据需要启动服务器(并同时启动多个服务器),每次更改此修改的日期时间。
PostgreSQL无法提供此修改的日期时间(https://dba.stackexchange.com/questions/58214/getting-last-modification-date-of-a-postgresql-database-table)-那我该怎么办?是这样做的唯一方法是让一个单独的表存储此信息吗?可以更轻量级地完成此操作吗,因此在例如打电话给https://my-api.com/lastModified?我应该提供一个静态文件,每次修改数据时都应写入该文件吗?
也许存在一个智能,轻巧的解决方案! 干杯:)
答案 0 :(得分:1)
是的,请使用单独的表存储日期-ORM已经在执行此操作以跟踪迁移。我不确定在这种情况下轻量级意味着什么,但是这种方法不会遇到任何问题,而文件或内存中的存储根本无法工作。