分布式服务框架HSF学习
HSF提供的是分布式服务开发框架,taobao内部使用较多,总体来说其提供的功能及一些实现基础:
1.标准Service方式的RPC
1)、Service定义:基于OSGI的Service定义方式
2)、TCP/IP通信:
IO方式:nio,采用mina框架
连接方式:长连接
服务器端有限定大小的连接池
WebService方式
3)、序列化:Hessian序列化机制
2.软件负载体系
3.模块化、动态化
4.服务治理
这里简单介绍下其使用:
首先要将HSF功能加进工程,是maven的话,在pom.xml里要依赖HSF:
- <dependency>
- <groupId>com.taobao.hsf</groupId>
- <artifactId>hsf.connector.spring</artifactId>
- <version>xxx</version>
- </dependency>
而对于服务框架肯定是有服务提供者和消费者两种角色,在提供者方要做的工作包括:
1. 将interface的代码打成Jar包,放进maven仓库中,供使用者下载使用,而具体代码实现则不需要放进jar包中,使用者只能调用,无法看见具体实现。
2.在对应的HSF的配置文件里,将提供的服务提供出来(基于spring的bean配置):
- <bean id="xxxServiceImpl" class="xxx.xxxServiceImpl" />
- <bean id="xxxServiceProvider" class="com.taobao.hsf.app.spring.util.HSFSpringProviderBean" init-method="init">
- <property name="serviceInterface">
- <value>xxx.xxxService</value>
- </property>
- <property name="target">
- <ref bean="xxxServiceImpl" />
- </property>
- <property name="serviceName">
- <value>xxxService</value>
- </property>
- <property name="serviceVersion">
- <value>xxx</value>
- </property>
- <property name="serviceGroup">
- <value>HSF</value>
- </property>
- </bean>
服务提供成功后,在HSF服务管理中心可以查看到这个HSF服务。
而在消费者方要做的工作:
- <bean name="xxxService" class="com.taobao.hsf.app.spring.util.HSFSpringConsumerBean" init-method="init">
- <property name="interfaceName" value="xxx.xxxService" />
- <property name="version" value="xxx" />
- </bean>
这样这个service就可以使用了。
HSF的缺点是其要使用指定的JBoss等容器,还需要在JBoss等容器中加入sar包扩展,对用户运行环境的侵入性大,如果你要运行在Weblogic或Websphere等其它容器上,需要自行扩展容器以兼容HSF的ClassLoader加载。 taobao有类似的其他框架Dubbo,介绍见
http://www.iteye.com/magazines/103
分布式服务框架HSF学习的更多相关文章
- 分布式服务框架HSF
最近在读阿里巴巴中台战略思想与架构这本书,so和大家分享一些我get到的东东. HSF是阿里巴巴内部的分布式服务框架,这个大家都很熟悉了,先上一张HSF的工作原理图: 这个图说明了HSF框架中每个组件 ...
- 阿里巴巴分布式服务框架HSF
HSF称之为高速服务框架HSF(High-speed Service Framework),是在阿里巴巴广泛使用的分布式RPC服务框架. HSF连通不同的业务系统,解耦系统间的实现依赖.HSF从分布式 ...
- 阿里巴巴分布式服务框架dubbo学习笔记
Dubbo是什么? Dubbo是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及SOA服务治理方案.简单的说,dubbo就是个服务框架,如果没有分布式的需求,其实是不需要用的 ...
- 分布式服务框架选型:面对Dubbo,阿里巴巴为什么选择了HSF?
转载:http://www.sohu.com/a/141490021_268033 阿里巴巴集团内部使用的分布式服务框架 HSF(High Speed Framework,也有人戏称“好舒服”)已经被 ...
- 003-读书笔记-企业IT架构转型之道-阿里巴巴中台战略思想与架构实战-分布式服务框架的选择
3.1.淘宝平台“服务化”历程 大约2007年,淘宝500人团队,维护一个war包,200多个功能模块. 1)项目团队协同成本高,业务响应越来越慢 2)应用复杂度超出人的认知负载. 3)错误难于隔离[ ...
- 高性能的分布式服务框架 Dubbo
我思故我在,提问启迪思考! 1. 什么是Dubbo? 官网:http://dubbo.io/,DUBBO是一个分布式服务框架,致力于提供高性能和透明化的RPC远程服务调用方案,以及作为SOA服务治理的 ...
- 阿里巴巴分布式服务框架 Dubbo 介绍
Dubbo是阿里巴巴内部的SOA服务化治理方案的核心框架,每天为2000+ 个服务提供3,000,000,000+ 次访问量支持,并被广泛应用于阿里巴巴集团的各成员站点.Dubbo自2011年开源后, ...
- 阿里分布式服务框架Dubbo的架构总结
Dubbo是Alibaba开源的分布式服务框架,它最大的特点是按照分层的方式来架构,使用这种方式可以使各个层之间解耦合(或者最大限度地松耦合).从服务模型的角度来看,Dubbo采用的是一种非常简单的模 ...
- 分布式服务框架XXL-RPC
<分布式服务框架XXL-RPC> 一.简介 1.1 概述 XXL-RPC 是一个分布式服务框架,提供稳定高性能的RPC远程服务调用功能.拥有"高性能.分布式.注册中心. ...
随机推荐
- mysql中explain看性能
select distinct col_name from table where a=X and b=Y and date(time)='xx-xx-xx';执行时间 27.9772 秒 expla ...
- c# 将页面导出到word(含图片及控件)
/// <summary> /// 创建word /// <param name="filePath">文件路径 </param> /// &l ...
- NSBundle 的使用
NSBundle 读取图片 plist text NSBundle *mainbundle=[NSBundle mainBundle]; //使mainBundle 对象获取图片的路径 NSStrin ...
- navicat 连接oracle
Navicat远程连接oracle数据库数据库需要设置一下oci.dll. 下面介绍如何进行设置. 工具/原料 Navicat Pre instantclient-basiclite-nt-12. ...
- Landsat8免费下载地址
一.国外 Landsat8提供免费下载,在USGS上有两个网站,下面介绍的这个网站操作比较方便.这里大赞美国的USGS和NASA机构,不但提供免费下载的数据,而且下载网站制作和维护的非常便捷.废话少说 ...
- 尝试自己建立以alpine 为基础的docker基础镜像和组件镜像
安装ubuntu14.04 然后 #获取root权限 sudo su #安装docker apt-get install docker #准备基础镜像 docker pull alpine docke ...
- Yii cookie 的使用方法
设置cookie: //首先新建cookie$cookie = new CHttpCookie('mycookie', 'this is my cookie');//定义cookie的有效期$cook ...
- console.log在线调试
前端开发人员工作有时候会用到console.log,PC端直接能打开开发者工具.但是移动端就不太方便了,为此提供一种简单的方法,只需2步: 1.打开http://jsconsole.com/ 输入: ...
- 飞翔的圆(Flappy Bird)游戏源码
这个源码是一个不错的休闲类的游戏源码,飞翔的圆(Flappy Bird)游戏源码V1.0,本项目是一个仿Flappy Bird的小游戏,只不过是把Flappy Bird里面的鸟替换成了简单的圆.感兴趣 ...
- 利用DIV+CSS制作网页过程中常用的基本概念及标签使
CSS主要用于对HTML文件功能的补充及扩展,其作用就是对HTML文件中各种排版进行设置,达到对网页中字体.颜色.背景.图片等的控制,使网页能够完全依照设计者的想法来显示. CSS可以控制网页的显示, ...