HTTP 服务开发与上线

功能说明

Tars平台支持HTTP服务的部署,使用@TarsHttpService注解即可将服务标记为HTTP服务。HTTP服务发布到平台后可以直接使用http请求来调用。

示例工程

tars-spring-boot-http-server

服务开发

工程目录

├── pom.xml
└── src
   └── main
       ├── java
       │   └── com.tecent.tars
       |       ├── App.java
       │       ├── client.testapp
       │       |   ├── HelloPrx.java
       │       |   └── HelloPrxCallback.java
       │       |
       |       └──http.server 
       │          └── HelloController.java
       └── resources
           └── hello.tars

依赖配置

在pom.xml文件中需要添加如下配置:

Spring Boot及Tars框架依赖

插件依赖

服务开发

使用插件生成服务端服务接口代码

服务端服务开发完成后,在客户端我们首先需要获得服务端服务的客户端接口代码。将服务端的hello.tars文件复制到resources目录下,并在工程根目录下,执行mvn tars:tars2java,即可得到HelloPrx.java。此时得到的是服务端服务的代理接口,并且提供了三种调用方式,分别为同步调用、异步调用和promise调用,具体内容如下:

编写Controller

之后,编写Controller类来实现控制器。新建HelloController.java,并使用@TarsHttpService注解开启Tars HTTP服务。

开启Tars服务

最后,在Spring Boot启动类App中添加@EnableTarsServer注解来开启Tars服务:

服务打包

通过spring-boot-maven-plugin,在根目录下执行mvn package即可打包为jar包进行部署。

服务发布

HTTP服务发布的的流程和Tars服务发布的流程类似,区别在于服务部署的时候,协议选择非TARS协议,具体设置如下图所示:

tars-deployment-http

服务调用

服务发布成功之后,即可通过http调用的方式来调用该服务,注意IP地址为公网IP,非设置的内网的IP

tars-http-call

Last updated

Was this helpful?