天天看點

基于thrift的微服務架構

基于thrift的微服務架構

支援正常的tcp/ip協定的rpc調用

1、 支援以servlet方式嵌入web容器(tomcat/weblogic/jboss之類)運作

2、 也可以直接用嵌入式jetty直接從jar包運作

支援js直接調用,post的json格式為:

以下格式無需手動拼寫,thrift生成的js用戶端會自動封裝及解析

傳回結果以json格式傳回:

本架構支援以下二種部署方式:

1、 jetty嵌入式模式,mvn package将在target目錄下生成可直接運作的thrift-service-framework.jar, 然後java -jar thrift-service-framework.jar

2、 将pom.xml中的<packaging>jar</packaging>中的jar改成war,同時注釋掉plug中的maven-shade-plugin,然後mvn package 生成war包,可部署到任何相容servlet 2.5+的web容器

注:方式1下,預設http端口為8080,如需修改,可在啟動時指定端口,例如:java -jar thrift-service-framework.jar -port=9090 , rpc端口在src/main/resources/spring-thrift.xml中修改

1、 js調用直接浏覽http://localhost:8080/thrift-service-framework/ ,點選頁面的call thrift按鈕,即可測試js方式直接調用

2、 src/test/java/com/cnblogs/yjmyzz/thrift/proxy/ThriftServiceClientTest.java 裡提供了rpc及http方式調用的測試用例