服务开发者基于edas服务发布

本文档为服务开发者提供了基于Aliware EDAS的项目开发全流程,涵盖从环境搭建到应用上线的详细步骤。适用范围为使用Java语言和HSF的后端开发者。内容包括开发资源申请、开发指南(环境配置、HSF服务开发)、使用指南(应用上架、部署、监控)和开发规范(代码、异常处理、日志和返回值)。文档强调了EDAS Agent在应用管控中的作用,并提供了代码示例和依赖配置。
摘要由CSDN通过智能技术生成

前言

概述

本文档主要介绍了服务开发者基于Aliware做项目开发时,从项目环境搭建,项目开发,项目上线及Aliware服务功能相关的使用说明,操作步骤及代码示例。

应用范围

服务开发者

后端开发语言为JAVA

需要使用RPCHSF)。

需要EADS提供的应用管理(上下架管理,动态扩容、缩容)。

需要应用服务监控服务(日志统一管理,运行环境监控,Jvm状态监控,请求链路分析)。

更新历史

版本

/更新日期

更新内容

V1.0.0

20170719

第一次发布

V1.0.4

20170725

修改Maven 私服配置 settings.xml文件,代码去掉行号

目录

前言................................................................................................................................. 1

概述.......................................................................................................................... 1

应用范围................................................................................................................... 1

更新历史................................................................................................................... 1

目录................................................................................................................................. 2

1.     开发资源的申请........................................................................................................ 4

1.1.     阿里云开发子账号的申请................................................................................ 4

1.2.     ECS的申请..................................................................................................... 4

1.3.     Agent的申请................................................................................................. 4

1.3.1.      EDAS Agent 简介............................................................................... 4

1.3.2.      安装 Agent......................................................................................... 5

2.     开发指南................................................................................................................... 9

2.1.     环境配置........................................................................................................ 9

2.1.1.      Maven 私服配置................................................................................. 9

2.1.2.      安装轻量配置中心.............................................................................. 10

2.2.     基于EDAS的HSF标准服务开发指南........................................................... 11

2.2.1.      基于Spring开发................................................................................ 11

2.2.2.      基于SpringBoot开发........................................................................ 25

2.3.     带有验证能力的HSF服务开发指南............................................................... 41

2.4.     申请调用其他HSF服务................................................................................ 41

2.5.     授权其他应用使用HSF服务......................................................................... 41

2.6.     开发规范....................................................................................................... 41

2.6.1.      工程结构规范..................................................................................... 41

2.6.2.      命名规范............................................................................................ 44

2.6.3.      POJO 类定义规范.............................................................................. 45

2.6.4.      HSF使用规范..................................................................................... 45

2.6.5.      异常处理规范..................................................................................... 46

2.6.6.      日志规范............................................................................................ 47

2.6.7.      返回值规范......................................................................................... 48

3.     使用指南................................................................................................................. 51

3.1.     上架和部署说明............................................................................................ 51

3.1.1.      登录................................................................................................... 51

3.1.2.      EDAS控制台入口............................................................................... 51

3.1.3.      EDAS控制台...................................................................................... 52

3.1.4.      创建应用............................................................................................ 53

3.1.5.      设置应用类型和网络类型.................................................................... 55

3.1.6.      部署应用............................................................................................ 55

3.1.7.      启动应用............................................................................................ 57

3.1.8.      查看启动日志..................................................................................... 58

3.2.     应用监控....................................................................................................... 59

3.2.1.      监控大盘............................................................................................ 59

3.2.2.      基础监控............................................................................................ 60

3.2.3.      服务监控............................................................................................ 61

3.3.     全自动化测试方案......................................................................................... 65

3.4.     全链路压测方案............................................................................................ 65

开发资源的申请

阿里云开发子账号的申请

ECS的申请

Agent的申请

EDAS Agent 简介

EDAS Agent(以下简称 Agent)是 安装在 ECS 上,用于 EDAS 服务集群与部署在相应 ECS 上的应用程序之间进行通信的 Daemon 程序。在运行的过程中主要承担以下的角色:

应用管理:包括应用部署、启动、停止等。

状态回报:包括应用存活状态、健康检查状态、Ali-Tomcat 容器状态等。

信息获取:如获取 ECS 和容器的监控信息。

Agent 除了完成以上基于应用的管控功能,还负责 EDAS 控制台与用户应用程序之间通信。简单的说,一个应用发布的服务是否在某台 ECS 上正确及时的发布,这个简单的信息获取就需要 Agent 的参与和协调。

说明: 上述 Agent 所涉及的功能对用户都是透明的,作为用户,您只需要安装 Agent 即可。

 

父目录pom.xml文件配置

<parent>
   <groupId>
org.springframework.boot</groupId>
   <artifactId>
spring-boot-starter-parent</artifactId>
   <version>
1.4.0.RELEASE</version>
</parent>

<properties>
   <spring-cloud-starter-pandora.version>
1.0</spring-cloud-starter-pandora.version>
   <spring-cloud-starter-hsf.version>
1.0</spring-cloud-starter-hsf.version>
   <spring-cloud-starter-sentinel.version>
1.0</spring-cloud-starter-sentinel.version>
</properties>

<dependencyManagement>
   <dependencies>
      <dependency>
         <groupId>
org.springframework.cloud</groupId>
         <artifactId>
spring-cloud-dependencies</artifactId>
         <version>
Camden.SR3</version>
         <type>
pom</type>
         <scope>
import</scope>
      </dependency>

      
<!-- 用户需要依赖的Api -->
     
<dependency>
         <groupId>
cn.com.flaginfo.edas</groupId>
         <artifactId>
pandora-hsf-boot-demo-api</artifactId>
         <version>
0.0.1-SNAPSHOT</version>
      </dependency>
     
     
<!-- Alibaba Aliware -->
      
<dependency>
         <groupId>
org.springframework.cloud</groupId>
         <artifactId>
spring-cloud-starter-pandora</artifactId>
         <version>
${spring-cloud-starter-pandora.version}</version>
      </dependency>
      <dependency>
         <groupId>
org.springframework.cloud</groupId>
         <artifactId>
spring-cloud-starter-hsf</artifactId>
         <version>
${spring-cloud-starter-hsf.version}</version>
      </dependency>
      <dependency>
         <groupId>
org.springframework.cloud</groupId>
         <artifactId>
spring-cloud-starter-sentinel</artifactId>
         <version>
${spring-cloud-starter-sentinel.version}</version>
      </dependency>

      <dependency>
         <groupId>
javax.servlet</groupId>
         <artifactId>
javax.servlet-api</artifactId>
         <version>
3.1.0</version>
      </dependency>

   </dependencies>
</dependencyManagement>

在项目consumerprovider工程的pom.xml中添加如下依赖

<dependencies>
  
<!-- 用户需要依赖的Api -->
  
<dependency>
      <groupId>
cn.com.flaginfo.edas</groupId>
      <artifactId>
pandora-hsf-boot-demo-api</artifactId>
   </dependency>

  
<!-- spring dependency -->
  
<dependency>
      <groupId>
org.springframework.boot</groupId>
      <artifactId>
spring-boot-starter-web</artifactId>
   </dependency>

  
<!-- Alibaba Aliware 依赖 -->
   <!-- pandora-boot启动依赖 -->
  
<dependency>
      <groupId>
org.springframework.cloud</groupId>
      <artifactId>
spring-cloud-starter-pandora</artifactId>
   </dependency>
   <dependency>
      <groupId>
org.springframework.cloud</groupId>
      <artifactId>
spring-cloud-starter-hsf</artifactId>
   </dependency>
   <dependency>
      <groupId>
org.springframework.cloud</groupId>
      <artifactId>
spring-cloud-starter-sentinel</artifactId>
   </dependency>
  
   <dependency>
      <groupId>
javax.servlet</groupId>
      <artifactId>
javax.servlet-api</artifactId>
   </dependency>

   <dependency>
      <groupId>
com.alibaba.edas.configcenter</groupId>
      <artifactId>
configcenter-client</artifactId>
      <version>
1.0.2</version>
   </dependency>

</dependencies>

<build>
   <plugins>
     
<!-- 该插件用于生成fat jar,并且主动排除taobao-hsf.sar这个jar包,该jar包在生产环境部署时会通过-D参数指定,所以打包时无需打包,避免资源浪费 -->
     
<plugin>
         <groupId>
com.taobao.pandora</groupId>
         <artifactId>
pandora-boot-maven-plugin</artifactId>
         <version>
2.1.6.3</version>
         <executions>
            <execution>
               <phase>
package</phase>
               <goals>
                  <goal>
repackage</goal>
               </goals>
            </execution>
         </executions>
      </plugin>
   </plugins>
</build>

application.properties配置

#服务名称
spring.application.name=pandora-hsf-boot-demo-consumer
#端口号
server.port=8082

启动代码

在项目consumerprovider

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Stestack

你的鼓励是我最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值