基于Gin框架的高并发网关SIP代理方法和装置制造方法及图纸

技术编号:34766391 阅读:20 留言:0更新日期:2022-08-31 19:18
本申请提供了一种基于Gin框架的高并发网关SIP代理方法和装置,涉及计算机技术领域。该方法将Gin框架应用到网关服务中;在进行SIP会话控制时向本域的功能实体提供HTTP式访问接口;功能实体通过指定请求方法携带JSON格式参数访问对应端口,并得到JSON格式的应答结果。可以看到,本申请实施例将Gin框架应用到网关服务中,可以充分利用Gin框架多协程高并发,高性能输入输出以及快速异常处理等优点,能够提高网关服务的响应效率和访问速度,并提升网关服务处理请求Request的鲁棒性。服务处理请求Request的鲁棒性。服务处理请求Request的鲁棒性。

【技术实现步骤摘要】
基于Gin框架的高并发网关SIP代理方法和装置


[0001]本申请涉及计算机
,尤其涉及一种基于Gin框架的高并发网关SIP代理方法和装置。

技术介绍

[0002]随着计算机和通信技术的迅速发展,新一代基于IP的服务的SIP(Session Initiation Protocol,会话初始协议)应运而生。SIP是适合各种媒体内容而实现多用户会话的协议,现已成为互联网工作任务组的规范。SIP是一种基于文本的协议,用来创建、改变或者终止一个或多个参与者参加的会话的应用层控制信令协议。SIP主要支持建立和终止多媒体通信功能。
[0003]对于连接SIP域和非SIP域的网关而言,其要承载所有的SIP会话控制,接口访问量较大。传统的基于TCP(Transmission Control Protocol,传输控制协议)的通讯方式对访问控制管理较弱,不能很好的实现高并发,而且数据格式通常采用XML(eXtensibleMarkupLanguage,可扩展的标识语言)格式,不够简洁,因此亟需解决这一技术问题。

技术实现思路

[0004]鉴于上述问题,提出了本申请以便提供一种克服上述问题或者至少部分地解决上述问题的基于Gin框架的高并发网关SIP代理方法和装置。所述技术方案如下:
[0005]第一方面,提供了一种基于Gin框架的高并发网关SIP代理方法,包括:
[0006]将Gin框架应用到网关服务中;其中Gin框架是使用Golang语言实现的HTTP Web框架,能够支持JSON;Golang语言是一种静态强类型、编译型、并发型,具有垃圾回收功能的编程语言;
[0007]在进行SIP会话控制时向本域的功能实体提供HTTP式访问接口;
[0008]功能实体通过指定请求方法携带JSON格式参数访问对应端口,并得到JSON格式的应答结果。
[0009]在一种可能的实现方式中,所述指定请求方法包括GET、POST、PUT、DELETE、OPTION中的任意一种方法。
[0010]在一种可能的实现方式中,所述功能实体通过指定请求方法携带JSON格式参数访问对应端口,包括:
[0011]使用Gin框架的Default方法创建一个路由,通过HTTP方法绑定路由规则和路由函数;
[0012]将请求Request和应答Response均封装到Gin框架的Context的上下文环境,并启动路由的Run方法监听端口;其中请求Request包含通过指定请求方法携带JSON格式参数访问对应端口。
[0013]在一种可能的实现方式中,所述方法还包括:
[0014]在进行SIP会话控制时根据访问请求获取对应的业务控制逻辑;
[0015]获取所述访问请求的发起方的信息和所述访问请求中使用业务的业务方的信息;
[0016]在所述业务控制逻辑的控制下所述发起方和所述业务方进行交互,完成业务交付。
[0017]在一种可能的实现方式中,所述在进行SIP会话控制时根据访问请求获取对应的业务控制逻辑,包括:
[0018]在进行SIP会话控制时解析访问请求得到业务标识;
[0019]加载所述业务标识对应的JSON格式的业务过程描述信息;
[0020]对所述业务过程描述信息进行解析得到业务控制逻辑。
[0021]在一种可能的实现方式中,加载所述业务标识对应的JSON格式的业务过程描述信息,包括:
[0022]与业务过程描述数据库交互获得所述业务标识对应的JSON格式的业务过程描述信息。
[0023]第二方面,提供了一种基于Gin框架的高并发网关SIP代理装置,包括:
[0024]应用模块,用于将Gin框架应用到网关服务中;其中Gin框架是使用Golang语言实现的HTTP Web框架,能够支持JSON;Golang语言是一种静态强类型、编译型、并发型,具有垃圾回收功能的编程语言;
[0025]提供模块,用于在进行SIP会话控制时向本域的功能实体提供HTTP式访问接口;
[0026]处理模块,用于功能实体通过指定请求方法携带JSON格式参数访问对应端口,并得到JSON格式的应答结果。
[0027]在一种可能的实现方式中,所述处理模块还用于:
[0028]使用Gin框架的Default方法创建一个路由,通过HTTP方法绑定路由规则和路由函数;
[0029]将请求Request和应答Response均封装到Gin框架的Context的上下文环境,并启动路由的Run方法监听端口;其中请求Request包含通过指定请求方法携带JSON格式参数访问对应端口。
[0030]在一种可能的实现方式中,所述处理模块还用于:
[0031]在进行SIP会话控制时根据访问请求获取对应的业务控制逻辑;
[0032]获取所述访问请求的发起方的信息和所述访问请求中使用业务的业务方的信息;
[0033]在所述业务控制逻辑的控制下所述发起方和所述业务方进行交互,完成业务交付。
[0034]在一种可能的实现方式中,所述处理模块还用于:
[0035]在进行SIP会话控制时解析访问请求得到业务标识;
[0036]加载所述业务标识对应的JSON格式的业务过程描述信息;
[0037]对所述业务过程描述信息进行解析得到业务控制逻辑。
[0038]借由上述技术方案,本申请实施例提供的基于Gin框架的高并发网关SIP代理方法和装置,将Gin框架应用到网关服务中;其中Gin框架是使用Golang语言实现的HTTP Web框架,能够支持JSON;Golang语言是一种静态强类型、编译型、并发型,具有垃圾回收功能的编程语言;在进行SIP会话控制时向本域的功能实体提供HTTP式访问接口;功能实体通过指定
请求方法携带JSON格式参数访问对应端口,并得到JSON格式的应答结果。可以看到,本申请实施例将Gin框架应用到网关服务中,可以充分利用Gin框架多协程高并发,高性能输入输出以及快速异常处理等优点,能够提高网关服务的响应效率和访问速度,并提升网关服务处理请求Request的鲁棒性。
附图说明
[0039]为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例描述中所需要使用的附图作简单地介绍。
[0040]图1示出了根据本申请实施例的基于Gin框架的高并发网关SIP代理方法的流程图;
[0041]图2示出了根据本申请另一实施例的基于Gin框架的高并发网关SIP代理方法的流程图;
[0042]图3示出了根据本申请实施例的基于Gin框架的高并发网关SIP代理装置的结构图。
具体实施方式
[0043]下面将参照附图更详细地描述本申请的示例性实施例。虽然附图中显示了本申请的示例性实施例,然而应当理解,可以以各种形式实现本申请而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本申请,并且能够本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种基于Gin框架的高并发网关SIP代理方法,其特征在于,包括:将Gin框架应用到网关服务中;其中Gin框架是使用Golang语言实现的HTTP Web框架,能够支持JSON;Golang语言是一种静态强类型、编译型、并发型,具有垃圾回收功能的编程语言;在进行SIP会话控制时向本域的功能实体提供HTTP式访问接口;功能实体通过指定请求方法携带JSON格式参数访问对应端口,并得到JSON格式的应答结果。2.根据权利要求1所述的基于Gin框架的高并发网关SIP代理方法,其特征在于,所述指定请求方法包括GET、POST、PUT、DELETE、OPTION中的任意一种方法。3.根据权利要求1或2所述的基于Gin框架的高并发网关SIP代理方法,其特征在于,所述功能实体通过指定请求方法携带JSON格式参数访问对应端口,包括:使用Gin框架的Default方法创建一个路由,通过HTTP方法绑定路由规则和路由函数;将请求Request和应答Response均封装到Gin框架的Context的上下文环境,并启动路由的Run方法监听端口;其中请求Request包含通过指定请求方法携带JSON格式参数访问对应端口。4.根据权利要求1或2所述的基于Gin框架的高并发网关SIP代理方法,其特征在于,还包括:在进行SIP会话控制时根据访问请求获取对应的业务控制逻辑;获取所述访问请求的发起方的信息和所述访问请求中使用业务的业务方的信息;在所述业务控制逻辑的控制下所述发起方和所述业务方进行交互,完成业务交付。5.根据权利要求4所述的基于Gin框架的高并发网关SIP代理方法,其特征在于,所述在进行SIP会话控制时根据访问请求获取对应的业务控制逻辑,包括:在进行SIP会话控制时解析访问请求得到业务标识;加载所述业务标识对应的JSON格式的业务过程描述信息;对所述业务过程描述信息进行解析得到业务控制逻辑。6.根据权利要...

【专利技术属性】
技术研发人员:兰雨晴刘一凡余丹王丹星乔孟阳
申请(专利权)人:慧之安信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1