簡體   English   中英

使用Resque,如何將無法JSON序列化的對象傳遞給作業(如果它們不在數據庫中)?

[英]With Resque, how can you pass objects that are not JSON serializable to jobs if they aren't in your database?

我正在一項作業中創建IMAP對象,需要將其傳遞給Resque中的其他作業。 由於IMAP對象不可序列化,因此傳遞它的最佳方法是什么?

無法將其直接傳遞給Resque。 但是,您可以設置另一種持久性機制來存儲對象,直到工作人員執行作業為止。

您可以很輕松地在Ruby / Rails中設置一個memcached存儲,並將字符串鍵傳遞給作業。 作業執行時,它將從memcached反序列化並終止密鑰。

並不是推薦的做事方式(因為緩存通常不能保證對象直到訪問才存在),但是如果您對Resque和IMAP序列化有嚴格的依賴性,那么它可以作為一種解決方案。

由於TCP連接的繼承性質(跟蹤客戶端,服務器,時間等),因此無法緩存/序列化NET對象。

您有什么方法可以提取並序列化該對象中的數據,然后將其發送給其他作業?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM