本节讲述了UDP协议场景的创建过程,包括创建工程、创建UDP协议相关的服务、并测试运行。通过本节你将了解到如下内容:

  1. 如何创建完整的UDP协议场景;
  2. 如何在Studio中测试运行开发的业务逻辑;
  3. 如何运行并测试UDP穿透;

本示例中通过SocketTool模拟UDP请求方与提供方,通过SocketTool的UDP Client发送请求消息,经过ESB穿透后SocketTool的UDP Server接收到请求消息,然后通过SocketTool的UDP Server发送响应消息,经过ESB穿透后SocketTool的UDP Clientr接收到响应消息。

项目源码如附件所示:udp.zip (opens new window)

# 创建工程

  1. 打开APIGateway Studio,在资源管理器中,点击右键,选择"创建 > ESB项目"菜单项,创建工程,如下图所示。
    image2018-10-10 17:56:4.png

  2. 在工程创建向导中,填写工程的基本信息,如工程名称等,这里我们创建一个名为"http"的工程,如下图所示。
    image2020-4-13 11:37:13.png

  3. 单击“下一步”,设置工程的引用库,这里使用缺省设置,如下图所示。
    image2020-4-9 17:29:9.png

  4. 单击“完成”,完成创建工程。创建工程后,资源管理器如下图所示。
    image2020-4-13 11:37:40.png

# 创建公共Module

  1. 在资源管理器中,选中创建好的项目,鼠标右键选择“创建 > 公共Module”,创建公共Module,如下图所示。
    image2020-4-13 11:38:28.png

  2. 在“公共Module”对话框中,填写Module名称等信息,如下图所示。 image2020-4-13 11:38:28.png

  3. 单击“完成”,公共Module创建完成,如下图所示。
    image2020-4-13 11:39:5.png

# 创建UDP Transport

  1. 在创建的ESB项目的“Transport”上,右键选择“创建 > UDP类型Transport”,如下图所示。
    image2020-4-13 11:39:54.png

  2. 在弹出的“

    创建UDP类型Transport

    ”界面,选择当前的工程、Module,并输入文件名及显示名称,如下图所示。
    image2020-4-13 11:38:28.png

  3. 单击“完成”,UDP Transport创建完成,如下图所示。
    image2020-4-13 11:40:41.png

  4. 在资源管理器中,双击创建的UDP Transport,打开UDP Transport编辑器,修改相关参数。如下所示。
    image2020-4-13 11:41:21.png

  5. UDP Transport配置完成后,单击工具栏中的图标保存。

# 创建UDP Endpoint

  1. 在创建的ESB项目的“Endpoint”上,右键选择“创建 > UDP类型Endpoint”,如下图所示。
    image2020-4-13 11:42:48.png

  2. 在弹出的“创建UDP类型Endpoint”界面,选择当前的工程、Module,并输入文件名及显示名称,如下图所示。
    image2020-4-13 11:43:1.png

  3. 单击“完成”,UDP Endpoint创建完成,如下图所示。
    image2020-4-13 11:43:23.png

  4. 在资源管理器中,双击创建的UDP Endpoint,打开UDP Endpoint编辑器,修改相关参数。如下所示。
    image2020-4-13 11:43:45.png

# 创建业务Module

  1. 在资源管理器中,选中创建好的项目,鼠标右键选择“创建 > 业务Module”,创建业务Module,如下图所示。
    image2020-4-13 15:25:11.png

  2. 在“业务Module”对话框中,填写Module名称等信息,如下图所示。
    image2020-4-13 15:26:24.png

  3. 单击“完成”,业务Module创建完成,如下图所示。
    image2020-4-13 15:26:58.png

# 创建UDP业务服务

  1. 在资源管理器中,在新建的“业务服务”上,鼠标右键选择“创建 > UDP业务服务”,创建 UDP业务服务,如下图所示。
    image2020-4-13 15:30:32.png

  2. 在打开的“创建UDP 业务服务”对话框中,输入类别信息,如下图所示。
    image2020-4-13 15:31:58.png

  3. 单击“完成”,在打开的“UDP业务服务”的编辑界面中,设置显示名称、Endpoint,如下图所示。
    image2020-4-13 15:44:13.png

  4. 单击工具栏的保存。

# 创建UDP代理服务

  1. 在资源管理器中,在“代理服务”上,鼠标右键选择“创建 > UDP代理服务”,创建UDP代理服务,如下图所示。
    image2020-4-13 15:45:37.png

  2. 在打开的“创建UDP代理服务”对话框中,输入类别信息,如下图所示。
    image2020-4-13 15:46:5.png

  3. 单击“完成”,在UDP代理服务的编辑界面中,设置UDP代理服务的配置,如下图所示。
    image2020-4-13 15:46:58.png

  4. 单击工具栏的保存,完成UDP代理服务的创建。

# 部署运

  1. 在资源管理器中,选中创建好的项目,鼠标右键单击“部署”,如下图所示。
    image2020-4-13 15:47:55.png

  2. 部署完成后,APIGateway Studio将公共Module和业务Module部署Studio内置的APIGateway ESBServer上,然后启动APIGateway ESBServer,如下图所示。
    image2020-4-13 15:48:33.png

  3. 在APIGateway Studio控制台,看到“APIGateway ESBServer started successfully.”日志字样,表示APIGateway ESBServer启动成功,如下图所示。
    worddav9616750718c46e1b9c5ea2349344eaa4.png

# 测试

1.通过SocketTool进行测试,创建UDPServer,监听端口对应UDP Endpoint配置的端口9001,如下图所示。
worddav46db7eb73355f882abd103a7e837b74d.png

创建UDP Client,对方IP设置为APIGateway ESBServer运行机器IP,对方端口对应UDPTransport配置的端口9000,如下图所示。
worddav72d29422941beebeed137d355cbbc87d.png

2.在UDP Client窗口发送请求,UDP Server窗口会接收到相应信息,如下图所示。
worddav8a334bb1a8236dbf862c80a6f4ba5125.png
worddav912ea10af79c4a5334f2f77fea0ce891.png

3.在UDP Server窗口发送响应,UDP Client窗口会接收到相应信息,如下图所示。
worddav912ea10af79c4a5334f2f77fea0ce891.png
worddavba958cf0becbfbbffc9c951be30d5170.png