部署后,活动模型序列化程序在生产上突然停止工作

问题描述

我有一个带有Active模型序列化程序的Rails 6应用程序。定义了一些序列化器,用于以定义的自定义json格式输出结果。我使用AWS ECS容器将代码部署到生产环境。认生产配置使用开箱即用的文件存储来缓存所有认生产设置。

最近我注意到通过迁移向表中添加列或向序列化器类添加属性时,我注意到了。部署后的一段时间,应用程序不会以序列化程序类以定义的格式输出对象。相反,它只是输出具有所有属性的json计划中的对象。这导致Web前端崩溃,因为它预期结果具有对象根属性自定义格式。似乎序列化程序类停止工作,并且完全忽略了序列化。我必须使用完全相同的代码进行另一次部署才能解决此问题,以便它可以正确地序列化对象。

ECS中有2个实例。我注意到发生此问题时,它会间歇性地返回正确的格式,因此我猜它可能已经击中了很好的实例,但结果不一致。我还尝试了从ECR中提取docker映像并在本地运行它们,并且所有代码都正确无误。对于部署,在部署新代码之前,有一个仅用于迁移的新容器。

我是Rails应用程序的新手。我不知道是什么引起了这个问题,以及如何防止这种情况发生。也许我需要在每个容器中使用像Redis这样的集中式缓存存储,而不是本地文件系统。有人遇到过这个问题吗?非常感谢您的帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)