標籤:

HSF的發布以及調用

HSF是一個分散式的遠程服務調用框架,他是附屬在你的應用里的一個組件,一個RPC組件(遠程過程調用——Remote Procedure Call,是一種通過網路從遠程計算機程序上請求服務,而不需要了解底層網路技術的協議。在OSI網路通信模型中,RPC跨越了傳輸層和應用層。RPC使得開發分散式應用更加容易),當然HSF完全的內容肯定不止這些。 HSF(High-speed Service Framework),高速服務框架,是阿里系主要採用的服務框架,其目的是作為橋樑聯通不同的業務系統,解耦系統之間的實現依賴。其高速體現在底層的非阻塞I/O以及優秀的序列化機制上,實現了同步和非同步調用方式,並且有一套軟負載體系,實現分散式應用。

廢話的原理已經說完了接下來我們來發布一個功能。首先我們需要引入jar包。我們使用maven進行jar包引入。

<dependency>

<groupId>com.taobao</groupId>

<artifactId>hsf-notify-client</artifactId>

<version>1.8.15</version>

</dependency>

<dependency>

<groupId>commons-httpclient</groupId>

<artifactId>commons-httpclient</artifactId>

</dependency>

<dependency>

<groupId>com.taobao.hsf</groupId>

<artifactId>hsf.app.spring</artifactId>

<scope>provided</scope>

</dependency>

接下來我們使用spring容器注入bean

<bean id="serverDataRepairService" class="實現類"/>

<bean class="com.taobao.hsf.app.spring.util.HSFSpringProviderBean" init-method="init">

<property name="serviceName" value="ServerDataRepairService"/>

<property name="serviceInterface" value="定義發布的介面類"/>

<property name="serviceVersion" value="${版本信息}"/>

<property name="serviceGroup" value="${分組信息}"/>

<property name="target" ref="serverDataRepairService"/>

<property name="clientTimeout" value="${超時時間}"/>

</bean>

然後對應的再實現類中編寫代碼。

如何調用發布的hsf介面呢?

bean id="ServerDataRepairService" class="定義發布的介面類">

<property name="appName" value="${應用名}"/>

<property name="account" value="${註冊賬號}"/>

<property name="accessKey" value="${秘鑰}"/>

<property name="hsfVersion" value="${版本信息}"/>

然後就可以insert對應的jar使用@Autowire進行引用注入。


推薦閱讀:

Hadoop計算框架之MapReduce
利用DB實現分散式鎖的思路
集群資源調度系統設計架構總結
FastDFS分散式文件系統安裝與使用
閱讀筆記:Scaling Memcache at Facebook

TAG:分散式系統 |