System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及服务器部署领域,尤其涉及算法服务部署方法及架构。
技术介绍
1、随着信息技术的发展,处理现实中的问题的算法越来越多,且算法版本的迭代越来越快,算法要部署在服务器上才能为更多用户提供服务,新算法或算法迭代,都要将算法部署在用作服务器的计算机上,部署次数增多,部署工作本身需要进行很多复杂配置,需要专业部署人员才能完成。
2、例如,现在常用的kubernetes能够管理容器化的应用程序,提供内部的负载均衡机制,自动分配任务到不同的容器中,根据需要对容器的资源进行扩展和缩减,但kubernetes的部署异常复杂,掌握kubernetes也需要较长时间的学习;更为关键的是,kubernetes作为通用型自动化运维系统,它无法支持消息级的负载均衡,只能以tcp连接为单位进行调度,但作为后台运行的算法服务,在为其他系统提供服务时,对端往往都是以多线程、长连接的形式进行交互;另外,在搭建kubernetes集群时,集群内部的容器之间可以固定ip组网,但kubernetes自身的主从节点之间还是得人为的指定ip和端口,一旦网络环境发生变化,kubernetes自身的主从配置需要人工的进行重新调整;因此kubernetes并不适合消息级的负载均衡以及网络环境易发生改变的场景,当然,消息级的负载均衡,消息队列(zeromq、rabbitmq、activemq、kafka等)也能够支持,但消息队列在应对多变的部署方式时(单机、局域网、跨局域网、公网),处理起来会比较繁琐,也无法应对网络环境易发生改变的场景;尽管域名解析的方式能
3、为此,需要一种架构能够支持消息级的负载均衡、支持上述提到的多种部署方式、也能够应对易变的网络环境,对应的部署方法能够解决传统算法部署时比较繁琐的问题。
技术实现思路
1、本专利技术的目的在于针对现有技术的不足提供算法服务部署方法及架构,旨在解决现有技术部署算法服务时繁琐的问题。
2、本专利技术通过以下技术方案来实现上述目的:
3、一种算法服务部署方法,包括:
4、服务进程部署步骤:部署服务进程,配置所述服务进程监听第一tcp端口和第一udp端口,为所述服务进程设置算法调度规则,建立服务进程与其他服务进程的通信连接,并向其他服务进程注册自身支持的算法进程;
5、算法进程部署步骤:部署算法进程,检查所述算法进程是否已配置所述第一tcp端口,若是,则通过所述tcp端口与所述服务进程建立tcp连接,否则,对部署算法进程的服务器的udp端口进行扫描找到所述第一udp端口,通过与服务进程进行udp通信获取服务进程的tcp端口和ip地址,并与服务进程建立tcp连接;
6、所述算法进程与所述服务进程建立tcp连接后,向所述服务进程注册算法能力,所述算法能力为算法能够处理的问题。
7、进一步的,所述服务进程部署步骤中,所述算法调度规则包括:
8、服务进程接收计算请求后,根据请求的类型,选择对应的算法进程的类型,再选择当前空闲算力最大的算法进程对所述计算请求进行处理。
9、进一步的,所述服务进程部署步骤中,所述建立服务进程与其他服务进程的通信连接的过程包括:
10、为所述服务进程配置唯一标识符,由所述服务进程向其他服务进程发送所述唯一标识符并接收其他服务进程发送的唯一标识符,由唯一标识符较小的服务进程主动与唯一标识符相邻较大的服务进程建立通信连接。
11、进一步的,服务进程向其他服务进程发送所述唯一标识符的方式包括:
12、服务进程通过局域网互联时,将唯一标识符加入udp数据包,通过组播的方式向其他服务进程发送所述udp数据包;
13、服务进程通过公网互联时,将唯一标识符加入tcp数据包,再将tcp数据包发送到公网,通过公网建立服务进程之间的通信连接。
14、进一步的,当所述算法进程与所述服务进程的连接异常中断,先检查所述算法进程是否被指定了tcp端口,若是,则按照预定时间间隔向指定的tcp端口对应的服务器发起重连请求,直到成功建立tcp连接,否则,立即向异常中断前的服务进程发送建立tcp连接的申请,若建立连接失败,对部署算法进程的服务器的udp端口进行扫描找到所述第一udp端口,通过与服务进程进行udp通信获取服务进程的tcp端口和ip地址,并与服务进程建立tcp连接。
15、一种算法服务单机部署架构,包括:
16、服务器,
17、在所述服务器上部署服务进程,配置所述服务进程监听第一tcp端口和第一udp端口,为所述服务进程设置算法调度规则;
18、在所述服务器上部署算法进程,检查所述算法进程是否已配置所述第一tcp端口,若是,则通过所述tcp端口与所述服务进程建立tcp连接,否则,对所述服务器的udp端口进行扫描找到所述第一udp端口,通过与服务进程进行udp通信获取服务进程的tcp端口和ip地址,并与服务进程建立tcp连接;
19、所述算法进程与所述服务进程建立tcp连接后,向所述服务进程注册算法能力,所述算法能力为算法能够处理的问题。
20、一种算法服务局域网部署架构,包括:
21、同一局域网中的至少两台服务器;
22、在所述服务器上部署服务进程,配置所述服务进程监听第一tcp端口和第一udp端口,为所述服务进程设置算法调度规则,为所述服务进程配置唯一标识符,通过组播的方式向其他服务器上的服务进程发送所述唯一标识符,由唯一标识符较小的服务进程主动与唯一标识符相邻较大的服务进程建立通信连接,并注册自身支持的算法进程;
23、在所述服务器上部署算法进程,检查所述算法进程是否已配置所述第一tcp端口,若是,则通过所述tcp端口与所述服务进程建立tcp连接,否则,对所述服务器的udp端口进行扫描找到所述第一udp端口,通过与服务进程进行udp通信获取服务进程的tcp端口和ip地址,并与服务进程建立tcp连接;
24、所述算法进程与所述服务进程建立tcp连接后,向所述服务进程注册算法能力,所述算法能力为算法能够处理的问题。
25、一种算法服务公网部署架构,包括:
26、至少两台连接公网的用作部署算法服务的算法服务器;
27、至少一台连接公网的用作调度所述算法服务器的调度服务器;
28、所述调度服务器配置有所述算法服务器的tcp端口,所述算法服务器配置有所述调度服务器的tcp端口;
29、在所述算法服务器上部署服务进程,配置所述服务进程监听第一tcp端口和第一udp端口,为所述服务进程设置算法调度规则,所述算法服务器上的所述服务进程通过所述调度服务器建立通信连接,并向调度服务器注册自身支持的算法进程;
30、在所述算法服务器上部署算法进程,检查所述算法进程是否已配本文档来自技高网...
【技术保护点】
1.一种算法服务部署方法,其特征在于,包括:
2.根据权利要求1所述的算法服务部署方法,其特征在于,所述服务进程部署步骤中,所述算法调度规则包括:
3.根据权利要求1所述的算法服务部署方法,其特征在于,所述服务进程部署步骤中,所述建立服务进程与其他服务进程的通信连接的过程包括:
4.根据权利要求3所述的算法服务部署方法,其特征在于,服务进程向其他服务进程发送所述唯一标识符的方式包括:
5.根据权利要求1所述的算法服务部署方法,其特征在于,包括:
6.一种算法服务单机部署架构,其特征在于,包括:
7.一种算法服务局域网部署架构,其特征在于,包括:
8.一种算法服务公网部署架构,其特征在于,包括:
9.一种算法服务分布式部署架构,其特征在于,包括:
【技术特征摘要】
1.一种算法服务部署方法,其特征在于,包括:
2.根据权利要求1所述的算法服务部署方法,其特征在于,所述服务进程部署步骤中,所述算法调度规则包括:
3.根据权利要求1所述的算法服务部署方法,其特征在于,所述服务进程部署步骤中,所述建立服务进程与其他服务进程的通信连接的过程包括:
4.根据权利要求3所述的算法服务部署方法,其特征在于,服务...
【专利技术属性】
技术研发人员:赖时伍,王亚兵,许金金,李宗南,苗应亮,
申请(专利权)人:盛视科技股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。