dubbo的序列化問題

2021-08-21 19:09:25 字數 834 閱讀 9601

當兩個系統之間存在引數傳遞的時候,如果傳遞的引數是個物件,它必須實現序列化,而且如果這個物件的屬性還是乙個物件的話,那麼相應的另外乙個物件也是需要序列化。

例子:

呼叫系統在呼叫快取服務的時候,通過工廠方法傳遞乙個redisservice,這無意間就形成了引數傳遞,不僅redisservice需要實現序列化,而redisservice內封裝的redistemplate也要實現序列化,我們當然是不希望去改動redistemplate的,所以在使用dubbo時,應該注意這種引數上的傳遞。

另:對於快取服務的設計思考

結構如下:

有api去提供統一的介面,快取服務去實現這個介面而呼叫系統去呼叫介面。

但是在使用redis的時候,一般情況下是要訪問物件的,那這個物件是要放在api裡面,還是複製兩份分別放在呼叫系統和快取服務裡面呢?

我認為這兩種都不行,物件應該只存放在呼叫系統裡面,畢竟物件是只屬於呼叫系統的,如果為了使用快取而把物件放在api或者快取服務裡面,這樣耦合度都太高了,而且每當有新的呼叫系統需要用到快取,都得去改api或者快取服務的**。

如果只在物件只存在於呼叫系統,那麼快取服務又怎麼去存物件呢?

我想到的是,呼叫系統與快取服務之間僅僅傳遞字串。

如果呼叫系統需要存物件,可以先在自己的系統裡面把物件序列化成字串,傳遞給快取服務去存。

當呼叫系統需要拿物件,直接從快取服務裡面拿字串,再自己去反序列化。

序列化問題

對於ajax來說,只能接收字串,那麼我們在後台的關鍵問題是,如何才能將我們要傳入的資料序列化,使之成為ajax可以接收的資料型別呢?json模組是乙個序列化的辦法,然而json只能序列化python的三大資料型別,元組,列表,字典,對於其他的資料型別,json並不能為我們序列化,那麼我們應該怎麼辦呢...

序列化問題

package cn.edu360 import j a.io.created by zx on 2017 6 25.class maptask extends serializable def m2 line string array string object sertask created b...

序列化(序列化)

原書上翻譯為序列化,msdn翻譯為序列化 作用 當需要儲存,或者網路傳輸 remoting時,資料 物件或值 需要序列化 類似於打包傳輸檔案。system.serializableattribute 序列化是指儲存和獲取磁碟檔案 記憶體或其他地方中的物件。在序列化時,所有的例項資料都儲存到儲存介質上...