MyThrift輕量級(jí)RPC服務(wù)框架
http://git.oschina.net/qiangzigege/MyThrift
基于以下組件打造的一款輕量級(jí)RPC服務(wù)框架:thrift(facebook出品)、commons-pool(socket連接池)、自研服務(wù)治理框架(zookeeper).
提出問(wèn)題:
各種存儲(chǔ)越來(lái)越多(redis,mysql,hdfs,hbase,mq),
讓web開(kāi)發(fā)人員自己訪問(wèn)存儲(chǔ),并保證性能,是一件高要求的事情。
造成的結(jié)果就是軟件開(kāi)發(fā)進(jìn)度緩慢,性能低下,各種bug.
分析問(wèn)題:
RPC框架:考慮到本人看過(guò)thrift的源碼,尤其是針對(duì)網(wǎng)絡(luò)模塊非常熟悉,并在實(shí)際生產(chǎn)環(huán)境中使用過(guò),thrift性能不錯(cuò)。
TCP/IP:有過(guò)2年的TCP/IP報(bào)文分析經(jīng)驗(yàn),從鏈路層到應(yīng)用層都很熟悉。
ZooKeeper:在之前的MySQL-Binlog項(xiàng)目中攢出了一些使用經(jīng)驗(yàn),同時(shí)積極吸收Motan等兄弟軟件的優(yōu)秀理念部分。
連接池:使用commons-pool連接池組件。
解決問(wèn)題:
糅合thrift,zookeeper,commons-pool打造一款輕量級(jí)、性能高、上手容易的rpc調(diào)用框架,
使得架構(gòu)師和后臺(tái)開(kāi)發(fā)人員可以將各種復(fù)雜存儲(chǔ)的IO訪問(wèn)對(duì)外暴露為服務(wù)(其實(shí)就是跨機(jī)器的普通函數(shù)調(diào)用)
這樣web開(kāi)發(fā)人員可以專注于業(yè)務(wù)邏輯,加速產(chǎn)品迭代,對(duì)企業(yè)帶來(lái)的好處不用多說(shuō)!
