Sofa接入网关
说明
- 此篇文章是sofa用户使用sofa插件支持,以及自己的sofa服务接入soul网关的教程。
- 接入前,请正确的启动
soul-admin以及搭建环境 Ok。
引入网关对sofa支持 的插件
- 在网关的
pom.xml文件中增加如下依赖: - sofa版本换成你的,注册中心的jar包换成你的,以下是参考。
<dependency>
<groupId>com.alipay.sofa</groupId>
<artifactId>sofa-rpc-all</artifactId>
<version>5.7.6</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-client</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-framework</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>org.apache.curator</groupId>
<artifactId>curator-recipes</artifactId>
<version>4.0.1</version>
</dependency>
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-plugin-sofa</artifactId>
<version>${last.version}</version>
</dependency>
- 重启网关服务。
sofa服务接入网关,可以参考:soul-examples-sofa
-
springboot
- 引入以下依赖
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-spring-boot-starter-client-sofa</artifactId>
<version>${soul.version}</version>
</dependency>
-
注册中心详细接入配置请参考:注册中心接入
-
spring
- 引入以下依赖 :
<dependency>
<groupId>org.dromara</groupId>
<artifactId>soul-client-sofa</artifactId>
<version>${project.version}</version>
</dependency>
-
在你的 bean定义的xml文件中新增如下 :
<bean id ="sofaServiceBeanPostProcessor" class ="org.dromara.soul.client.sofa.SofaServiceBeanPostProcessor">
<constructor-arg ref="soulRegisterCenterConfig"/>
</bean>
<bean id="soulRegisterCenterConfig" class="org.dromara.soul.register.common.config.SoulRegisterCenterConfig">
<property name="registerType" value="http"/>
<property name="serverList" value="http://localhost:9095"/>
<property name="props">
<map>
<entry key="contextPath" value="/你的contextPath"/>
<entry key="appName" value="你的名字"/>
<entry key="ifFull" value="false"/>
</map>
</property>
</bean>
sofa 插件设置
-
首先在
soul-admin插件管理中,把sofa插件设置为开启。 -
其次在
sofa插件中配置你的注册地址或者其他注册中心的地址.
{"protocol":"zookeeper","register":"127.0.0.1:2181"}
接口注册到网关
-
你sofa服务实现类的,方法上加上 @SoulSofaClient 注解,表示该接口方法注册到网关。
-
启动你的提供者,输出日志
sofa client register success大功告成,你的sofa接口已经发布到 soul网关.如果还有不懂的,可以参考soul-test-sofa项目。