天天看點

Jsonrpc項目綜述

一、項目描述

  項目需要有用戶端和伺服器兩個程式,用戶端負責發送請求,用戶端負責接收請求資料,查詢資料庫,給用戶端傳回結果。

  項目整體需要Jsonrpc架構進行資料傳輸,資料的decode和encode需要Jsoncpp庫,mysql資料庫操作需要mysql++庫,項目的編譯需要scons。總之,整個項目的難點在于Jsonrpc、Jsoncpp、mysql++、scons的學習、了解和使用。

  這個項目拖了很久,也是因為老師那裡不急,是以我就慢慢的做,突破一個一個的難點,終于把這個流程走通。過程中最難的地方在于Jsonrpc的了解(不僅僅是使用),網上的資料實在太少,最後還是結合api才勉強搞懂。其次是scons的使用,因為之前沒有使用過make等編譯工具,對其中的固定套路一竅不通,都需要從零開始查資料,不斷嘗試。Jsoncpp和mysql++沒有給我造成很大的困擾,因為我知道這兩個東西是什麼,了解上沒有困難,之需要解決一些具體的問題就行。

  Last but not least,這一切的基礎在于linux系統的使用,本學期開學前的完全不懂linux系統,現在已經突破了對linux系統的恐懼,總體結構也已經大緻了解,隻等在實踐中提高認識,還有vim已經用的得心應手。

  而且,做這個項目的整個過程也讓我體會到一個事實——我現在的基礎已經很牢固,已經有足夠的能力來突破任何一個問題,我的知識結構的知識面已經鋪開,現在給我任何一個問題我都不會驚慌失措,我已經基本掌握了計算機相關知識的基礎和學習方法。

  總之,這個被老師抛棄的項目給我帶來很大的收獲。

二、對Jsonrpc-cpp的了解

  Json-rpc是基于json的跨語言遠端調用協定,這是官方的定義,它隻是一個協定,而沒有任何的實作,它規定了用戶端和伺服器之間用json格式通信,它規定了用戶端發送的資料格式,伺服器端傳回的資料格式,某個固定的key對應的value代表什麼,隻有這些。而Jsonrpc-cpp,是用c++語言(及相應的核心庫)實作的一個架構,它完全遵守了Jsonrpc協定規定的内容,但是它定義了自己的函數,有自己的實作方式。

三、對Jsoncpp的了解

  Jsoncpp是c++對json資料操作的庫(隻能稱為庫),主要操作就是序列化(encode)和反序列化(decode)

四、對scons的了解

五、對mysql++的了解

繼續閱讀