CN111414208A - 应用程序的启动方法、装置及设备 - Google Patents

应用程序的启动方法、装置及设备 Download PDF

Info

Publication number
CN111414208A
CN111414208A CN202010175356.4A CN202010175356A CN111414208A CN 111414208 A CN111414208 A CN 111414208A CN 202010175356 A CN202010175356 A CN 202010175356A CN 111414208 A CN111414208 A CN 111414208A
Authority
CN
China
Prior art keywords
domain name
protocol
target
server
protocol type
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010175356.4A
Other languages
English (en)
Other versions
CN111414208B (zh
Inventor
任利琴
张弛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority to CN202010175356.4A priority Critical patent/CN111414208B/zh
Publication of CN111414208A publication Critical patent/CN111414208A/zh
Application granted granted Critical
Publication of CN111414208B publication Critical patent/CN111414208B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/143Termination or inactivation of sessions, e.g. event-controlled end of session
    • H04L67/145Termination or inactivation of sessions, e.g. event-controlled end of session avoiding end of session, e.g. keep-alive, heartbeats, resumption message or wake-up for inactive or interrupted session
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/51Discovery or management thereof, e.g. service location protocol [SLP] or web services

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Cardiology (AREA)
  • General Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer And Data Communications (AREA)

Abstract

本申请公开了一种应用程序的启动方法、装置及设备,涉及网络技术领域。本申请公开的技术方案包括:获取应用程序的启动请求,启动请求包括服务器的域名信息,从多种候选协议类型中确定目标协议类型,根据服务器的域名信息,采用目标协议类型对应的协议与服务器建立第一网络连接。上述过程中,通过将多种候选协议类型中适用于当前网络环境的协议类型确定为目标协议类型,并采用该目标协议类型对应的协议与服务器建立网络连接,能够提高网络连接建立成功的概率,从而提高应用程序的在线率。

Description

应用程序的启动方法、装置及设备
技术领域
本申请涉及互联网技术领域,尤其涉及一种应用程序的启动方法、装置及设备。
背景技术
随着移动互联网技术的发展,移动应用程序(Application,APP)支持的业务类型越来越多,例如:直播类业务、即时通信(Instant Messaging,IM)类业务、推送(PUSH)类业务、云控类业务等。
移动APP支持的业务类型对网络依赖越大,就越需要保证移动APP的网络连通性。目前,为了满足各种业务稳定健壮的需求,移动APP启动过程中,需要与服务器建立长连接。移动APP启动完成后,使用该长连接对这些业务进行网络传输。
然而,实际应用中,移动APP启动过程中,经常会发生长连接建立失败的问题,导致移动APP的在线率较低。
发明内容
本申请提供一种应用程序的启动方法、装置及设备,用以提高应用程序的在线率。
第一方面,本申请实施例提供一种应用程序的启动方法,包括:
获取应用程序的启动请求,所述启动请求包括服务器的域名信息;
从多种候选协议类型中确定目标协议类型;
根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
第二方面,本申请实施例提供一种应用程序的启动装置,包括:
获取模块,用于获取应用程序的启动请求,所述启动请求包括服务器的域名信息;
协议选择模块,用于从多种候选协议类型中确定目标协议类型;
连接建立模块,用于根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
第三方面,本申请实施例提供一种电子设备,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面任一项所述的方法。
第四方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行第一方面任一项所述的方法。
本申请实施例提供的应用程序的启动方法、装置及设备,该方法包括:获取应用程序的启动请求,启动请求包括服务器的域名信息,从多种候选协议类型中确定目标协议类型,根据服务器的域名信息,采用目标协议类型对应的协议与服务器建立第一网络连接。上述过程中,通过将多种候选协议类型中适用于当前网络环境的协议类型确定为目标协议类型,并采用该目标协议类型对应的协议与服务器建立网络连接,能够提高网络连接建立成功的概率,并提高应用程序启动成功的概率,从而提高应用程序的在线率。
上述可选方式所具有的其他效果将在下文中结合具体实施例加以说明。
附图说明
附图用于更好地理解本方案,不构成对本申请的限定。其中:
图1为本申请实施例适用的一种网络架构的示意图;
图2A和图2B示例了两种可能的启动应用程序的方式;
图3为本申请一个实施例提供的应用程序的启动方法的流程示意图;
图4为本申请实施例提供的网络协议轮询策略的示意图;
图5为本申请另一个实施例提供的应用程序的启动方法的流程示意图;
图6为本申请又一个实施例提供的应用程序的启动方法的流程示意图;
图7为本申请实施例提供的域名解析过程的示意图;
图8为本申请又一个实施例提供的应用程序的启动方法的流程示意图;
图9为本申请实施例提供的业务请求队列的处理过程的示意图;
图10为本申请一个实施例提供的应用程序的启动装置的结构示意图;
图11为本申请另一个实施例提供的应用程序的启动装置的结构示意图;
图12为本申请实施例提供的电子设备的结构示意图。
具体实施方式
以下结合附图对本申请的示范性实施例做出说明,其中包括本申请实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本申请的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
图1为本申请实施例适用的一种网络架构的示意图,如图1所示,该网络架构包括至少一个终端设备和至少一个服务器。终端设备安装有移动应用程序(APP)。终端设备也称为终端(Terminal)、用户设备(user equipment,简称UE)、接入终端、用户单元、移动设备、用户终端、无线通信设备、用户代理或用户装置。终端设备可以是个人数字处理(personaldigital assistant,简称PDA)设备、智能电视、具有无线通信功能的手持设备(例如智能手机、平板电脑)、计算设备(例如个人电脑(personal computer,简称PC)、车载设备以及可穿戴设备等。
服务器为具有数据存储和/或数据处理功能的电子设备。服务器可以为集中式服务器,还可以为分布式服务器。服务器还可以为云端服务器。
终端设备中安装有应用程序,终端设备可以作为应用程序的客户端。用户启动应用程序,可以使得终端设备与服务器建立网络连接。图2A和图2B示例了两种可能的启动应用程序的方式。以终端设备是手机为例。一种启动方式中,如图2A中的(a)所示,用户可以在手机桌面上点击应用程序的图标(假设用户点击的图标为搜索引擎应用的图标),触发启动应用程序,使得手机显示如图2A中的(b)所示的应用程序主界面。
另一种启动方式中,如图2B中的(a)所示,用户在手机桌面上点击应用程序的图标(假设用户点击的图标为搜索引擎应用的图标)后,使得手机显示如图2B中的(b)所示的登录界面。用户在登录界面中输入用户登录信息,并点击登录按钮后,触发启动应用程序,使得手机显示如图2B中的(c)所示的应用程序主界面。
能够理解,图2A和图2B中仅是针对应用程序启动方式进行示意,附图各个界面中显示的内容仅为示例性说明,而不构成限定。另外,用户还可以采用其他的启动应用程序的方式(例如语音指令启动等),本实施例对此也不作限定。
为了便于后续理解,下面针对本申请实施例中涉及的几个概念进行解释和说明。
长连接:是指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。
短连接:短连接是指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。
应用程序的在线率:用于衡量应用程序启动成功的概率。通常可以采用如下公式获取:在线率=应用程序启动成功的次数/应用程序启动总次数。在线率的优化可以直接提高应用程序支持的各项业务的网络连接稳定性。在线率的提高还可以减少掉线等异常的发生,使用户体验更加流程。
域名(Domain Name):又称网域,是由一串用点分隔的名字组成的Internet上某一台计算机或计算机组的名称,用于在数据传输时对计算机的定位标识(有时也指地理位置)。
端口号:服务器端可以有很多端口,为了对端口进行区分,将每个端口进行了编号,这就是端口号。端口号只有整数,范围是从0到65535。服务器的不同进程提供的服务可以对应不同的端口号。客户端利用端口号,可以访问到服务器中与该端口号对应的服务。
实际应用中,为了满足应用程序所支持的各种业务稳定健壮的需求,应用程序在启动过程中,需要与服务器建立长连接。应用程序启动完成后,使用该长连接对这些业务的数据进行网络传输,以避免频繁的短连接建立过程对网络资源造成浪费。然而,应用程序的启动过程中,经常会发生长连接建立失败的问题,导致应用程序的在线率较低。
为了解决上述技术问题,本申请实施例提供一种应用程序的启动方法。该方法可以应用于如图1所示的终端设备中。在应用程序启动过程中,通过从多种候选协议类型中选择网络连接建立成功概率较高的目标协议类型,采用目标协议类型对应的协议与服务器建立长连接,保证长连接大概率建立成功,从而提高应用程序的在线率。
下面结合几个具体的实施例对本申请的技术方案进行详细描述。下面几个实施例可以相互结合,对于相同或者相似的内容在某些实施例中可能不再重复描述。
图3为本申请一个实施例提供的应用程序的启动方法的流程示意图。本实施例的方法可由图1中的终端设备执行。如图3所示,本实施例的方法包括:
S301:获取应用程序的启动请求,启动请求包括服务器的域名信息。
其中,本实施例的应用程序可以是终端设备中安装的、需要与服务器建立网络连接的任意应用程序。
终端设备检测到用户输入的用于启动应用程序的操作或指令时,获取到应用程序的启动请求。例如,用户操作(例如点击、双击、触摸等)应用程序的图标时,终端设备获取到应用程序的启动请求。又例如,用户向终端设备输入用于启动应用程序的语音指令时,终端设备获取到应用程序的启动请求。
启动请求中包括服务器的域名信息。服务器的域名信息用于标识待连接的服务器。可选的,启动请求中还可以包括服务器的端口号。
S302:从多种候选协议类型中确定目标协议类型。
现有技术中,终端设备与服务器建立网络连接时采用传输控制协议(Transmission Control Protocol,TCP)协议。TCP是一种面向连接的、可靠的、基于字节流的传输层通信协议。然而实际应用中,有些网络环境中可能并不适合使用TCP协议建立网络连接,因此导致网络连接建立失败。
本实施例中,候选协议类型是指终端设备与服务器事先约定好的可用于建立网络连接的协议的类型。候选协议类型可以有多种。可选的,多种候选协议类型可以包括下述中的至少两种:GRPC、QUIC、Http2、TCP+TLS。
其中,GRPC是一种高性能、开源的通用远程过程调用(remote procedure call,RPC)框架。QUIC(Quick UDP Internet Connection,快速UDP互联网连接)是一种基于UDP的低时延的互联网传输层协议。Http2(原名HTTP/2.0)即超文本传输协议2.0,是下一代HTTP协议。TLS(Transport Layer Security,安全传输层协议)用于在两个通信应用程序之间提供保密性和数据完整性。
目标协议类型是指终端设备从多种候选协议类型中确定出的用于与服务器建立网络连接的协议类型。即,目标协议类型是多种候选协议类型中的一种。具体的,目标协议类型是多种候选协议类型中适用于当前网络环境的协议类型,或者说,目标协议类型是多种候选协议类型中能够大概率保证网络连接建立成功的协议类型。
示例性的,终端设备从多种候选协议类型中选择出目标协议类型,可以有多种实施方式。例如,可以采用网络协议轮询策略,针对多种候选协议类型分别与服务器尝试建立网络连接,将网络连接建立成功时对应的候选协议类型确定为目标协议类型。再例如,可以事先约定网络环境与候选协议类型之间的对应关系。用户在不同的网络环境启动应用程序时,采用与当前网络环境对应的候选协议类型作为目标协议类型。
一种可能的实施方式中,可以采用网络协议轮询策略,依次采用每种候选协议类型对应的协议与所述服务器建立第二网络连接,将所述第二网络连接首次建立成功时采用的候选协议类型作为目标协议类型。
其中,第二网络连接可以为短连接。示例性的,先采用GRPC协议与服务器尝试建立短连接,若短连接建立成功,则将GRPC作为目标协议类型,无需对后续的候选协议类型进行轮询。若短连接建立失败,则采用QUIC协议与服务器尝试连接短连接,以此类推。
通过网络协议轮询策略,可以保证确定出的目标协议类型是能够使得网络连接建立成功的协议类型,从而提高网络连接建立成功的概率。
可选的,可以为每种候选协议类型设置超时时长。例如,超时时长可以设置为5s。在采用某种候选协议与服务器尝试建立短连接时,若等待5s后短连接未建立成功,则认为本次短连接建立失败,开始轮询下一种候选协议。采用上述方式,通过设置合适的超时时长,可以保证在较短的时间内确定出合适的目标协议类型,避免较长的轮询耗时。
可选的,每种候选协议类型对应有优先级。所述多种候选协议类型对应的优先级的顺序与所述多种候选协议类型对应的网络连接成功概率正相关。例如,若某个候选协议类型对应的网络连接成功概率越大,则该候选协议类型的优先级越高,则在轮询过程中,可以优先尝试该候选协议类型。
可选的,本实施例中,在对多种候选协议类型进行轮询之前,还可以根据历史数据或者多种候选协议类型对应的测试数据,统计出多种候选协议类型对应的网络连接成功概率。进而,按照网络连接成功概率由大到小的顺序,确定出多种候选协议类型对应的优先级的顺序。
可选的,本实施例中,在对多种候选协议类型进行轮询之前,还可以根据各种候选协议类型对应的连接特性,确定出各种候选协议类型对应的网络连接成功概率。例如,连接特性包括但不限于如下特征:可靠、加密、多路复用、头部压缩、拥塞控制、跨语言跨平台交互、建连时长等。能够理解,一种候选协议类型对应支持的连接特征越丰富,则该候选协议类型对应的网络连接成功概率越大。进而,按照网络连接成功概率由大到小的顺序,确定出多种候选协议类型对应的优先级的顺序。
一个示例中,上述多种候选协议类型的优先级顺序如下:GRPC、QUIC、Http2、TCP+TLS。例如:GRPC支持的连接特性包括:可靠、加密、多路复用、头部压缩、拥塞控制、跨语言跨平台高效交互、多种类型流式RPC等。QUIC支持的连接特性包括:可靠、加密、多路复用、头部压缩、拥塞控制、建连时长极短(0RTT-1RTT)等。Http2支持的连接特性包括:可靠、加密、多路复用(可并发多个请求)、头部压缩、拥塞控制等。TCP+TLS支持的连接特性包括:可靠、加密等。按照上述各种候选协议类型支持的连接特性的丰富性,可以确定出上述各种候选协议类型对应的网络连接成功概率由大到小的顺序为:GRPC、QUIC、Http2、TCP+TLS。因此,可以将上述顺序确定为优先级顺序。
通过对每种协议类型设置优先级,并按照优先级的顺序对各候选协议类型进行轮询尝试,使得能够在较短的时间内确定出目标协议类型,从而提高目标协议类型的确定效率。
S303:根据服务器的域名信息,采用目标协议类型对应的协议与服务器建立第一网络连接。
其中,第一网络连接可以为长连接或者短连接。
能够理解,确定出目标协议类型之后,可以根据服务器的域名信息,采用目标协议类型对应的协议与服务器建立网络连接。由于目标协议类型是终端设备确定出的适用于当前网络环境的协议类型,或者,目标协议类型是多种候选协议类型中能够大概率保证网络连接建立成功的协议类型,因此,采用目标协议类型对应的协议与服务器建立网络连接,能够提高网络连接建立成功的概率。
示例性的,图4为本申请实施例提供的网络协议轮询策略的示意图。如图4所示,假设多种候选协议类型的优先级顺序如下:GRPC、QUIC、Http2、TCP+TLS。
相应的,参见图4,当终端设备获取到应用程序的启动请求后,获取多种候选协议对应的优先级顺序,按照多种候选协议类型各自对应的优先级的顺序,先采用GRPC协议与服务器尝试建立短连接。若采用GRPC协议短连接建立成功,则将GRPC作为目标协议类型,无需对后续的候选协议类型进行轮询。若采用GRPC协议短连接建立失败,则采用QUIC协议与服务器尝试连接短连接。若采用QUIC协议短连接建立成功,则将QUIC作为目标协议类型,无需对后续的候选协议类型进行轮询。若采用QUIC协议短连接建立失败,则采用Http2协议与服务器尝试连接短连接。若采用Http2协议短连接建立成功,则将Http2作为目标协议类型,无需对后续的候选协议类型进行轮询。若采用Http2协议短连接建立失败,则采用TCP+TLS协议与服务器尝试连接短连接。上述协议轮询过程中,将首次短连接建立成功时对应的候选协议类型确定为目标协议类型。进而,采用目标协议类型与服务器建立长连接。
能够理解,通过对TCP/IP五层协议(物理层、数据链路层、网络层、传输层及应用层)中传输层与应用层对应的4种协议GRPC、QUIC、Http2、TCP+TLS进行轮询尝试连接,可以保证选择出的目标协议类型为适用于当前环境的协议类型,或者说,可以保证选择出的目标协议类型为大概率使网络连接建立成功的协议类型。
本实施例提供的应用程序的启动方法,在启动应用程序过程中,终端设备通过将多种候选协议类型中适用于当前网络环境的协议类型确定为目标协议类型,并采用该目标协议类型对应的协议与服务器建立网络连接,与现有技术中每次启动应用程序都默认采用TCP协议相比,能够提高网络连接建立成功的概率,以及提高应用程序启动成功的概率,从而提高应用程序的在线率。
图5为本申请另一个实施例提供的应用程序的启动方法的流程示意图。如图5所示,本实施例的方法可以包括:
S501:获取应用程序的启动请求,所述启动请求包括用户的登录信息以及服务器的域名信息。
本实施例中S501的具体实施方式与图3所示实施例中的S301类似,重复内容不作赘述。
本实施例的启动请求中还可以包括用户的登录信息。用户的登录信息用于标识登录该应用程序的用户。例如:用户的登录信息可以包括下述中的一种或者多种:登录账号、登录密码、昵称、ID、用户名等。
实际应用中,用户在启动应用程序时,可以存在两种启动方式。一种是登录启动,即在启动应用程序的同时还指定登录账号。其中,指定登录账号可以包括如下情况中的任一:情况1:如图2B中的(b)所示,用户输入登录账号的相关信息。情况2:用户在历史登录账号中选择一个登录账号。情况3:用户默认将最近一次登录账号作为当前登录账号。另一种是不登录启动,即在启动应用程序的同时不指定登录账号。例如:用户可以采用游客身份或者匿名身份启动应用程序。该情况下,终端设备可以为用户生成一个游客账号或者匿名账号。能够理解,本实施例中的用户的登录信息可以为上述的指定登录账号,还可以为上述的游客账号或者匿名账号。
S502:判断缓存中是否存在与用户的登录信息对应的历史协议类型。若不存在,则执行S503;若存在,则执行S505。
S503:从多种候选协议类型中确定目标协议类型。
S504:将所述用户的登录信息以及所述目标协议类型存储至缓存中。
S505:将所述历史协议类型作为目标协议类型。
大多数应用场景中,同一用户较大概率在相同的网络环境中使用某一应用程序。因此,根据上述实施例的网络协议轮询策略,用户多次使用同一应用程序时所确定出的目标协议类型可能是相同的。例如,用户经常在家中使用应用程序1,则用户在每次在家中启动应用程序1时,轮询策略确定出的目标协议类型均为GRPC。
为了避免用户在每次启动应用程序时,都对上述的多个候选协议类型进行轮询尝试。本实施例中,可以将用户的登录信息与轮询确定出的目标协议类型进行存储。这样,当用户下次在启动应用程序时,可以直接从缓存中获取之前采用的历史协议类型作为目标协议类型,提高目标协议类型的选择效率,从而降低应用程序的启动时延。
示例性的,在用户首次启动应用程序时,由于缓存中不存在与用户的登录信息对应的历史协议类型,因此,执行S503,即采用网络协议轮询策略在多种候选协议类型中确定出适用于当前网络环境的目标协议类型。能够理解,S503的实施方式与图3中的S302类似,此处不作赘述。在确定出目标协议类型后,将用户的登录信息以及目标协议类型存储至缓存中。
这样,在用户下次启动应用程序时,可以优先从缓存中获取与用户的登录信息对应的历史协议类型,并将历史协议类型作为目标协议类型,避免重复进行网络协议轮询过程。能够理解,由于缓存中存储的历史协议类型也是通过网络协议轮询策略从多个候选协议类型中确定出的,因此,S505中,将历史协议类型作为目标协议类型,也能够保证目标协议类型是多种候选协议类型中的一种。
S506:根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
本实施例提供的应用程序启动方法中,当缓存中存在与用户的登录信息对应的历史协议类型时,优先将历史协议类型作为目标协议类型,只有在缓存中不存在与用户的登录信息对应的历史协议类型时,才采用网络协议轮询策略从多个候选协议类型中确定目标协议类型,能够避免重复进行网络协议轮询过程,提高目标协议类型的选择效率,从而降低应用程序的启动时延。
图6为本申请又一个实施例提供的应用程序的启动方法的流程示意图。如图6所示,本实施例的方法可以包括:
S601:获取应用程序的启动请求,所述启动请求包括服务器的域名信息。
S602:从多种候选协议类型中确定目标协议类型。
本实施例中,S601和S602的具体实施方式可以参见图3至图5所示实施例的详细描述,此处不作赘述。
S603:采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址。
本实施例中,目标IP地址是指待连接的服务器的网际互联协议(InternetProtocol,IP)地址。根据服务器的域名信息确定目标IP地址的过程也可以称为域名解析过程。域名解析过程可以由终端设备查询域名***(Domain Name System,DNS)来实现。DNS是因特网的一项核心服务,它作为可以将域名和IP地址相互映射的一个分布式数据库,能够使人更方便的访问互联网,而不用去记住能够被机器直接读取的IP地址。
现有技术的域名解析过程,通常由终端查询***默认的域名解析库(Local DNS)对服务器的域名信息进行解析。由于默认的域名解析库中的存储的数据有限,可能会存在域名信息解析失败导致无法获取到目标IP地址的问题,从而使得网络连接无法建立。
本实施例中,通过使用多个域名解析库对域名信息进行解析,保证解析到准确的目标IP地址。可选的,所述多个域名解析库可以包括下述中的至少两个:第三方域名解析库(例如BDDNS)、HTTP域名解析库(HTTPDNS)、***默认的域名解析库(Local DNS)。其中,BDDNS是一种公共DNS互联网基础服务,面向的是大众上网用户,属于免费的DNS解析服务。HTTPDNS是使用HTTP协议向DNS服务器的80端口进行请求,代替传统的DNS协议向DNS服务器的53端口进行请求。也就是使用Http协议去进行DNS解析请求,将服务器返回的解析结果(域名对应的服务器IP),直接向该IP发起对应的API服务请求。
上述的各种域名解析库都有自己的独特的实现方式,但每个解析库都有自己的利弊,通过采用上述多种域名解析库对域名信息进行解析,与现有技术中仅采用***默认的域名解析库(Local DNS)相比,能够保证对域名信息解析得到正确的目标IP地址。
可选的,为了进一步保证解析过程中在较短时间内获取正确的目标IP地址,本实施例中还可以为上述多个解析库设置优先级。所述多个域名解析库对应的优先级的顺序与所述多个域名解析库对应的解析成功概率正相关。例如,若某个域名解析库对应的解析成功概率越大,则该域名解析库对应的优先级越高,在解析过程中,可以优先尝试使用该域名解析库对域名进行解析。
可选的,本实施例中,在采用多个域名解析库对域名进行解析之前,还可以根据历史数据或者多个域名解析库对应的测试数据,统计出多个域名解析库对应的解析成功概率。进而,按照解析成功概率由大到小的顺序,确定出多个域名解析库对应的优先级的顺序。
可选的,本实施例中,在采用多个域名解析库对域名进行解析之前,还可以根据各个域名解析库的解析性能,确定出各个域名解析库对应的解析成功率。能够理解,一个域名解析库对应的解析性能越高,则该域名解析库对应的解析成功概率越大。进而,按照解析成功概率由大到小的顺序,确定出多个域名解析库对应的优先级的顺序。
一种可能的排序方式为:BDDNS、HTTPDNS、Local DNS。按照上述优先级的顺序,依次采用上述3个域名解析库对所述域名信息进行解析,将首次解析得到的IP地址作为所述目标IP地址。
通过对各所述域名解析库设置优先级,并按照优先级的顺序采用各域名解析库进行尝试解析,使得能够在较短的时间内解析得到目标IP地址,提高域名解析的效率。
可选的,采用多个域名解析库进行尝试解析过程中,可以为每个域名解析库设置超时时间。例如,超时时间可以设置为5s。在采用某个域名解析库尝试对域名信息进行解析时,若等待5s后未解析成功,则认为本次解析失败,开始重试下一种域名解析库。采用上述方式,通过设置合适的超时时长,可以保证在较短的时间内解析得到目标IP地址,避免较长的轮询耗时。
S604:根据所述目标IP地址,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
能够理解,解析得到目标IP地址后,可以根据该目标IP地址,采用目标协议类型对应的协议与服务器建立长连接。其中,这部分可以通过socket交互实现。本实施例对此不作赘述。
作为一个示例,图7为本申请实施例提供的域名解析过程的示意图。假设多个域名解析库的优先级顺序为:BDDNS、HTTPDNS、Local DNS。如图7所示,先采用BDDNS对域名信息进行解析,如果解析得到IP地址,则将解析到的IP地址作为目标IP地址,无需采用其他解析库进行尝试。如果解析不到IP地址,则采用HTTPDNS对域名信息进行解析,如果解析得到IP地址,则将解析得到的IP地址作为目标IP地址。如果解析不到IP地址,则采用Local DNS对域名信息进行解析。解析得到目标IP地址后,可以根据该目标IP地址,与服务器建立网络连接。
本实施例中,通过采用多种域名解析库对域名信息进行解析,与现有技术中仅采用***默认的域名解析库(Local DNS)相比,能够保证域名信息能够解析得到正确的目标IP地址,从而提高网络连接建立成功的概率,以及提高应用程序启动成功的概率,从而提高应用程序的在线率。
图8为本申请又一个实施例提供的应用程序的启动方法的流程示意图。本实施例给出了域名解析过程的又一种实施方式。如图8所示,本实施例的方法包括:
S801:判断缓存中是否存在与所述域名信息对应的历史IP地址。若不存在,则执行S802和S803。若存在,则执行S804。
S802:采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址。
S803:判断所述目标IP地址是否连通,若连通,则将所述域名信息以及所述目标IP地址存储至所述缓存。
S804:将所述历史IP地址确定为所述目标IP地址。
为了避免用户在每次启动应用程序时,都对域名信息进行重复解析。本实施例中,可以将域名信息与解析得到的目标IP地址进行存储。这样,当用户下次在启动应用程序时,可以直接从缓存中获取之前解析得到的目标IP地址,提高IP地址的解析效率,从而降低应用程序的启动时延。
示例性的,在用户首次启动应用程序时,由于缓存中不存在与域名信息对应的历史IP地址,因此,执行S802,即采用多个域名解析库对所述服务器的域名信息进行尝试解析,得到目标IP地址。能够理解,S802的实施方式与图6中的S603类似,此处不作赘述。在解析得到目标IP地址后,将域名信息以及目标IP地址存储至缓存中。这样,在用户下次启动应用程序时,可以优先从缓存中获取与域名信息对应的历史IP地址,并将历史IP地址作为目标IP地址,避免重复进行域名解析过程。
实际应用场景中,域名解析过程可能会受到当前网络环境的影响。网络环境可以包括下述中的至少一种:网络信号强度、网络连接模式(2G、3G、4G、5G、6G、wiki等)、地理位置等。
因此,本实施例的一种可能的实施方式中,在S803中,确定解析到的目标IP地址连通的情况下,还可以将当前的网络环境信息也存储到缓存中,即,将域名信息、网络环境信息、以及目标IP地址存储至缓存。这样,用户在后续启动应用程序时,在S801中,可以判断缓存中是否存在与域名信息和当前的网络环境信息对应的目标IP地址。从而保证从缓存中获取到的目标IP地址的准确性。
本实施例提供的应用程序启动方法中,当缓存中存在与域名信息对应的历史IP地址时,优先将历史IP地址作为目标IP地址,只有在缓存中不存在与域名信息对应的历史IP地址时,才采用多个域名解析库对域名信息进行解析,能够避免重复进行域名解析过程,提高域名解析效率,从而降低应用程序的启动时延。
在上述各实施例的基础上,终端设备与网络设备建立长连接之后,还可以包括:根据业务请求队列,向所述服务器发送业务请求。
其中,应用程序可能支持多种业务类型。不同的业务类型可能并行运行,即不同的业务类型可能同时向服务器发送业务请求。因此,可以为应用程序设置业务请求队列。业务请求队列中包括多个业务请求,每个业务请求对应有业务优先级,所述业务请求队列中的多个业务请求按照各自对应的业务优先级排序。
具体的,可以根据业务***特性,为不同的业务请求配置业务优先级。当业务请求被加入业务请求队列时,按照业务优先级对业务请求队列中的业务请求进行排序。这样,只有在高优先级的业务请求得到结果后才会处理低优先级的业务请求,保障业务逻辑的稳定性。
可选的,登录请求对应的业务优先级高于其他业务请求对应的业务优先级。也就是说,当业务请求队列中包括登录请求时,登录请求排在其他业务请求的前面。
可选的,登录请求有且只能请求一次。也就是说,当业务请求队列中包括登录请求时,业务请求队列中只能存在一个登录请求。
实际应用中,还可以设置不同业务请求之间的约束。示例性的,登录请求必须在其他业务请求之前发起,等待登录请求成功后,才能进行其他的业务请求。一个示例中,在发起业务请求之前都判断应用程序的登录状态,如果未登录则先将登录请求添加到业务请求队列的队首,然后将登录请求发送出去。另一个示例中,所有业务逻辑都监听登录请求的回调,只有在监听到登录请求的回调后,才能处理相应的业务逻辑。
图9为本申请实施例提供的业务请求队列的处理过程的示意图。如图9所示,业务请求队列中包括:业务请求P0、业务请求P1、业务请求P2、业务请求P3等。其中,业务请求P0为登录请求。只有当业务请求P0发送成功时,才会发送业务请求队列中的其他业务请求。其他业务请求可以并行处理,还可以串行处理。
可选的,本实施例中,还可以设置不同线程之间的约束,使得只有在网络连接建立线程创建成功后,才创建其他的业务相关线程。例如,在需要创建业务请求发送/接收线程时,先判断网络连接建立线程的状态,在确定网络连接建立线程创建成功后,才创建业务请求发送/接收线程。可选的,还可以为各个线程设置超时时间,避免线程创建过程中的长时间等待。
本实施例中,通过设计不同业务请求的优先级,只有在高优先级的业务请求得到结果后才会处理低优先级的业务请求,保障业务逻辑的稳定性。并且,通过使登录请求的业务优先级高于其他业务请求的业务优先级,可以避免由于登录请求未发送导致的其他业务请求失败的问题,从而保证应用程序的正常启动,提高应用程序的在线率。
图10为本申请一个实施例提供的应用程序的启动装置的结构示意图。本实施例的装置可以为软件和/或硬件的形式。该装置可以设置在图1所示的终端设备中。如图9所示,本实施例的应用程序的启动装置100,包括:获取模块101、协议选择模块102、连接建立模块103。其中,
获取模块101,用于获取应用程序的启动请求,所述启动请求包括服务器的域名信息;
协议选择模块102,用于从多种候选协议类型中确定目标协议类型;
连接建立模块103,用于根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
一种可能的实现方式中,所述协议选择模块102具体用于:依次采用每种候选协议类型对应的协议与所述服务器建立第二网络连接,将所述第二网络连接首次建立成功时采用的候选协议类型作为目标协议类型。
一种可能的实现方式中,每种候选协议类型对应有优先级,所述多种候选协议类型对应的优先级的顺序与所述多种候选协议类型对应的网络连接成功概率正相关;所述协议选择模块102具体用于:按照所述多种候选协议类型各自对应的优先级的顺序,依次采用每种候选协议类型对应的协议与所述服务器建立第二网络连接。
一种可能的实现方式中,所述协议选择模块102还用于:判断缓存中是否存在与所述用户的登录信息对应的历史协议类型;若所述缓存中存在与所述用户的登录信息对应的历史协议类型,则将所述历史协议类型作为目标协议类型;所述协议选择模块102具体用于:若所述缓存中不存在与所述用户的登录信息对应的历史协议类型,则从多种候选协议类型中确定目标协议类型。
一种可能的实现方式中,所述协议选择模块102还用于:将所述用户的登录信息以及所述目标协议类型存储至所述缓存中。
一种可能的实现方式中,所述多种候选协议类型包括下述中的至少两种:GRPC、QUIC、Http2、TCP+TLS。
一种可能的实现方式中,所述连接建立模块103具体用于:采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址;根据所述目标IP地址,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
一种可能的实现方式中,每个所述域名解析库对应有优先级,所述多个域名解析库对应的优先级的顺序与所述多个域名解析库对应的解析成功概率正相关;所述连接建立模块103具体用于:按照所述多个域名解析库各自对应的优先级的顺序,依次采用所述多个域名解析库对所述域名信息进行解析,将首次解析得到的IP地址作为所述目标IP地址。
一种可能的实现方式中,所述连接建立模块103还用于:判断缓存中是否存在与所述域名信息对应的历史IP地址;若所述缓存中存在与所述域名信息对应的历史IP地址,则将所述历史IP地址确定为所述目标IP地址;所述连接建立模块103具体用于:若所述缓存中不存在与所述域名信息对应的历史IP地址,则采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址。
一种可能的实现方式中,所述连接建立模块103还用于:判断所述目标IP地址是否连通,若连通,则将所述域名信息以及所述目标IP地址存储至所述缓存。
图11为本申请另一个实施例提供的应用程序的启动装置的结构示意图。在图10所示实施例的基础上,如图11所示,本实施例的应用程序的启动装置100,还可以包括:业务处理模块104。
所述业务处理模块104,用于根据业务请求队列,向所述服务器发送业务请求,所述业务请求队列中包括多个业务请求,每个业务请求对应有业务优先级,所述业务请求队列中的多个业务请求按照各自对应的业务优先级排序。
一种可能的实现方式中,所述业务请求队列中包括登录请求,所述登录请求对应的业务优先级高于其他业务请求对应的业务优先级。
本申请实施例提供的应用程序的启动装置,可用于执行上述任一方法实施例的技术方案,其实现原理和技术效果类似,此处不作赘述。
根据本申请的实施例,本申请还提供了一种电子设备和一种可读存储介质。
如图12所示,是根据本申请实施例的应用程序的启动方法的电子设备的框图。电子设备旨在表示各种形式的数字计算机,诸如,膝上型计算机、台式计算机、工作台、个人数字助理、服务器、刀片式服务器、大型计算机、和其它适合的计算机。电子设备还可以表示各种形式的移动装置,诸如,个人数字处理、蜂窝电话、智能电话、可穿戴设备和其它类似的计算装置。本文所示的部件、它们的连接和关系、以及它们的功能仅仅作为示例,并且不意在限制本文中描述的和/或者要求的本申请的实现。
如图12所示,该电子设备包括:一个或多个处理器701、存储器702,以及用于连接各部件的接口,包括高速接口和低速接口。各个部件利用不同的总线互相连接,并且可以被安装在公共主板上或者根据需要以其它方式安装。处理器可以对在电子设备内执行的指令进行处理,包括存储在存储器中或者存储器上以在外部输入/输出装置(诸如,耦合至接口的显示设备)上显示GUI的图形信息的指令。在其它实施方式中,若需要,可以将多个处理器和/或多条总线与多个存储器和多个存储器一起使用。同样,可以连接多个电子设备,各个设备提供部分必要的操作(例如,作为服务器阵列、一组刀片式服务器、或者多处理器***)。图12中以一个处理器701为例。
存储器702即为本申请所提供的非瞬时计算机可读存储介质。其中,所述存储器存储有可由至少一个处理器执行的指令,以使所述至少一个处理器执行本申请所提供的应用程序的启动方法。本申请的非瞬时计算机可读存储介质存储计算机指令,该计算机指令用于使计算机执行本申请所提供的应用程序的启动方法。
存储器702作为一种非瞬时计算机可读存储介质,可用于存储非瞬时软件程序、非瞬时计算机可执行程序以及模块,如本申请实施例中的应用程序的启动方法对应的程序指令/模块(例如,附图10所示的获取模块101、协议选择模块102、连接建立模块103,以及附图11中的业务处理模块104)。处理器701通过运行存储在存储器702中的非瞬时软件程序、指令以及模块,从而执行服务器或者终端设备的各种功能应用以及数据处理,即实现上述方法实施例中的应用程序的启动方法。
存储器702可以包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需要的应用程序;存储数据区可存储电子设备的使用所创建的数据等。此外,存储器702可以包括高速随机存取存储器,还可以包括非瞬时存储器,例如至少一个磁盘存储器件、闪存器件、或其他非瞬时固态存储器件。在一些实施例中,存储器702可选包括相对于处理器701远程设置的存储器,这些远程存储器可以通过网络连接至电子设备。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
电子设备还可以包括:输入装置703和输出装置704。处理器701、存储器702、输入装置703和输出装置704可以通过总线或者其他方式连接,图12中以通过总线连接为例。
输入装置703可接收输入的数字或字符信息,以及产生与电子设备的用户设置以及功能控制有关的键信号输入,例如触摸屏、小键盘、鼠标、轨迹板、触摸板、指示杆、一个或者多个鼠标按钮、轨迹球、操纵杆等输入装置。输出装置704可以包括显示设备、辅助照明装置(例如,LED)和触觉反馈装置(例如,振动电机)等。该显示设备可以包括但不限于,液晶显示器(LCD)、发光二极管(LED)显示器和等离子体显示器。在一些实施方式中,显示设备可以是触摸屏。
此处描述的***和技术的各种实施方式可以在数字电子电路***、集成电路***、专用ASIC(专用集成电路)、计算机硬件、固件、软件、和/或它们的组合中实现。这些各种实施方式可以包括:实施在一个或者多个计算机程序中,该一个或者多个计算机程序可在包括至少一个可编程处理器的可编程***上执行和/或解释,该可编程处理器可以是专用或者通用可编程处理器,可以从存储***、至少一个输入装置、和至少一个输出装置接收数据和指令,并且将数据和指令传输至该存储***、该至少一个输入装置、和该至少一个输出装置。
这些计算程序(也称作程序、软件、软件应用、或者代码)包括可编程处理器的机器指令,并且可以利用高级过程和/或面向对象的编程语言、和/或汇编/机器语言来实施这些计算程序。如本文使用的,术语“机器可读介质”和“计算机可读介质”指的是用于将机器指令和/或数据提供给可编程处理器的任何计算机程序产品、设备、和/或装置(例如,磁盘、光盘、存储器、可编程逻辑装置(PLD)),包括,接收作为机器可读信号的机器指令的机器可读介质。术语“机器可读信号”指的是用于将机器指令和/或数据提供给可编程处理器的任何信号。
为了提供与用户的交互,可以在计算机上实施此处描述的***和技术,该计算机具有:用于向用户显示信息的显示装置(例如,CRT(阴极射线管)或者LCD(液晶显示器)监视器);以及键盘和指向装置(例如,鼠标或者轨迹球),用户可以通过该键盘和该指向装置来将输入提供给计算机。其它种类的装置还可以用于提供与用户的交互;例如,提供给用户的反馈可以是任何形式的传感反馈(例如,视觉反馈、听觉反馈、或者触觉反馈);并且可以用任何形式(包括声输入、语音输入或者、触觉输入)来接收来自用户的输入。
可以将此处描述的***和技术实施在包括后台部件的计算***(例如,作为数据服务器)、或者包括中间件部件的计算***(例如,应用服务器)、或者包括前端部件的计算***(例如,具有图形用户界面或者网络浏览器的用户计算机,用户可以通过该图形用户界面或者该网络浏览器来与此处描述的***和技术的实施方式交互)、或者包括这种后台部件、中间件部件、或者前端部件的任何组合的计算***中。可以通过任何形式或者介质的数字数据通信(例如,通信网络)来将***的部件相互连接。通信网络的示例包括:局域网(LAN)、广域网(WAN)和互联网。
计算机***可以包括客户端和服务器。客户端和服务器一般远离彼此并且通常通过通信网络进行交互。通过在相应的计算机上运行并且彼此具有客户端-服务器关系的计算机程序来产生客户端和服务器的关系。
应该理解,可以使用上面所示的各种形式的流程,重新排序、增加或删除步骤。例如,本发申请中记载的各步骤可以并行地执行也可以顺序地执行也可以不同的次序执行,只要能够实现本申请公开的技术方案所期望的结果,本文在此不进行限制。
上述具体实施方式,并不构成对本申请保护范围的限制。本领域技术人员应该明白的是,根据设计要求和其他因素,可以进行各种修改、组合、子组合和替代。任何在本申请的精神和原则之内所作的修改、等同替换和改进等,均应包含在本申请保护范围之内。

Claims (15)

1.一种应用程序的启动方法,其特征在于,包括:
获取应用程序的启动请求,所述启动请求包括服务器的域名信息;
从多种候选协议类型中确定目标协议类型;
根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
2.根据权利要求1所述的方法,其特征在于,所述从多种候选协议类型中确定目标协议类型,包括:
依次采用每种候选协议类型对应的协议与所述服务器建立第二网络连接,将所述第二网络连接首次建立成功时采用的候选协议类型作为目标协议类型。
3.根据权利要求2所述的方法,其特征在于,每种候选协议类型对应有优先级,所述多种候选协议类型对应的优先级的顺序与所述多种候选协议类型对应的网络连接成功概率正相关;所述依次采用每种候选协议类型对应的协议与所述服务器建立第二网络连接,包括:
按照所述多种候选协议类型各自对应的优先级的顺序,依次采用每种候选协议类型对应的协议与所述服务器建立第二网络连接。
4.根据权利要求1所述的方法,其特征在于,所述方法还包括:
判断缓存中是否存在与所述用户的登录信息对应的历史协议类型;
若所述缓存中存在与所述用户的登录信息对应的历史协议类型,则将所述历史协议类型作为目标协议类型;
所述从多种候选协议类型中确定目标协议类型,包括:
若所述缓存中不存在与所述用户的登录信息对应的历史协议类型,则从多种候选协议类型中确定目标协议类型。
5.根据权利要求4所述的方法,其特征在于,所述从多种候选协议类型中确定目标协议类型之后,还包括:
将所述用户的登录信息以及所述目标协议类型存储至所述缓存中。
6.根据权利要求1所述的方法,其特征在于,所述多种候选协议类型包括下述中的至少两种:远程过程调用协议GRPC、快速UDP互联网连接协议QUIC、超文本传输协议Http2、传输控制协议TCP和安全传输层协议TLS。
7.根据权利要求1至6任一项所述的方法,其特征在于,所述根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接,包括:
采用多个域名解析库对所述服务器的域名信息进行解析,得到目标网际互连协议IP地址;
根据所述目标IP地址,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
8.根据权利要求7所述的方法,其特征在于,每个所述域名解析库对应有优先级,所述多个域名解析库对应的优先级的顺序与所述多个域名解析库对应的解析成功概率正相关;所述采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址,包括:
按照所述多个域名解析库各自对应的优先级的顺序,依次采用所述多个域名解析库对所述域名信息进行解析,将首次解析得到的IP地址作为所述目标IP地址。
9.根据权利要求7所述的方法,其特征在于,所述方法还包括:
判断缓存中是否存在与所述域名信息对应的历史IP地址;
若所述缓存中存在与所述域名信息对应的历史IP地址,则将所述历史IP地址确定为所述目标IP地址;
所述采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址,包括:
若所述缓存中不存在与所述域名信息对应的历史IP地址,则采用多个域名解析库对所述服务器的域名信息进行解析,得到目标IP地址。
10.根据权利要求9所述的方法,其特征在于,所述将首次解析得到的IP地址作为所述目标IP地址之后,还包括:
判断所述目标IP地址是否连通,若连通,则将所述域名信息以及所述目标IP地址存储至所述缓存。
11.根据权利要求1至6任一项所述的方法,其特征在于,所述根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接之后,还包括:
根据业务请求队列,向所述服务器发送业务请求,所述业务请求队列中包括多个业务请求,每个业务请求对应有业务优先级,所述业务请求队列中的多个业务请求按照各自对应的业务优先级排序。
12.根据权利要求11所述的方法,其特征在于,所述业务请求队列中包括登录请求,所述登录请求对应的业务优先级高于其他业务请求对应的业务优先级。
13.一种应用程序的启动装置,其特征在于,包括:
获取模块,用于获取应用程序的启动请求,所述启动请求包括服务器的域名信息;
协议选择模块,用于从多种候选协议类型中确定目标协议类型;
连接建立模块,用于根据所述服务器的域名信息,采用所述目标协议类型对应的协议与所述服务器建立第一网络连接。
14.一种电子设备,其特征在于,包括:
至少一个处理器;以及
与所述至少一个处理器通信连接的存储器;其中,
所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行权利要求1至12中任一项所述的方法。
15.一种存储有计算机指令的非瞬时计算机可读存储介质,其特征在于,所述计算机指令用于使所述计算机执行权利要求1至12中任一项所述的方法。
CN202010175356.4A 2020-03-13 2020-03-13 应用程序的启动方法、装置及设备 Active CN111414208B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010175356.4A CN111414208B (zh) 2020-03-13 2020-03-13 应用程序的启动方法、装置及设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010175356.4A CN111414208B (zh) 2020-03-13 2020-03-13 应用程序的启动方法、装置及设备

Publications (2)

Publication Number Publication Date
CN111414208A true CN111414208A (zh) 2020-07-14
CN111414208B CN111414208B (zh) 2023-08-01

Family

ID=71491055

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010175356.4A Active CN111414208B (zh) 2020-03-13 2020-03-13 应用程序的启动方法、装置及设备

Country Status (1)

Country Link
CN (1) CN111414208B (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112039884A (zh) * 2020-08-31 2020-12-04 浪潮云信息技术股份公司 一种快速互联协议quic在分布式数据库***中的应用
CN112383617A (zh) * 2020-11-12 2021-02-19 百度在线网络技术(北京)有限公司 进行长连接的方法、装置、终端设备以及介质
CN113726922A (zh) * 2021-09-01 2021-11-30 北京百度网讯科技有限公司 一种网络应用层连接协议确定方法、装置及电子设备
CN114124891A (zh) * 2021-10-25 2022-03-01 青岛海尔科技有限公司 网络请求的处理方法和装置、存储介质及电子装置
CN114422574A (zh) * 2022-02-10 2022-04-29 Oppo广东移动通信有限公司 连接建立方法、装置、电子设备和计算机可读存储介质
CN114826916A (zh) * 2021-01-28 2022-07-29 阿里巴巴集团控股有限公司 数据传输方法、设备、***及计算机存储介质
CN116248631A (zh) * 2022-12-02 2023-06-09 中国互联网络信息中心 一种DoQ优先级设置方法和***
CN116760878A (zh) * 2023-08-21 2023-09-15 每日互动股份有限公司 一种网络连接和传输的处理方法、装置、设备及介质

Citations (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1863196A (zh) * 2005-05-11 2006-11-15 中国科学院计算技术研究所 多协议域名解析服务的服务代理方法
CN101815104A (zh) * 2010-03-19 2010-08-25 中兴通讯股份有限公司 网络协议地址反馈方法以及域名解析服务器
CN102129437A (zh) * 2010-01-12 2011-07-20 腾讯科技(北京)有限公司 域名匹配方法、浏览器
US20120295617A1 (en) * 2011-05-18 2012-11-22 Qualcomm Incorporated Selectively extending a waiting period before an originating user equipment fails a call based on network information of one or more target user equipments
CN103297564A (zh) * 2013-07-03 2013-09-11 深圳市共进电子股份有限公司 一种自动切换外部代理服务器地址的方法
CN103781148A (zh) * 2014-02-25 2014-05-07 重庆邮电大学 车载自组织网络中基于链路感知的稳定成簇路由方法
JP2014103553A (ja) * 2012-11-20 2014-06-05 Toshiba Corp 通信装置、通信方法およびプログラム
CN104065761A (zh) * 2011-09-29 2014-09-24 北京奇虎科技有限公司 应用服务器选取方法和网络连接方法
CN104700512A (zh) * 2013-12-06 2015-06-10 航天信息股份有限公司 采用dhcp与dns协议快速配置服务器与网络税控器集群的方法
CN105227686A (zh) * 2014-06-20 2016-01-06 中国电信股份有限公司 云主机域名的动态配置方法和***
US20160041880A1 (en) * 2014-08-06 2016-02-11 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US20160054965A1 (en) * 2014-08-21 2016-02-25 Canon Kabushiki Kaisha Image forming apparatus including short-distance wireless communication unit, method of controlling the same, and storage medium
CN105657777A (zh) * 2016-03-14 2016-06-08 西安电子科技大学 基于链路质量和节点转发能力的路由协议设计方法
CN105959155A (zh) * 2016-06-24 2016-09-21 维沃移动通信有限公司 一种电子邮箱的连接方法及移动终端
CN106028062A (zh) * 2016-06-24 2016-10-12 乐视控股(北京)有限公司 一种视频应用程序控制方法及视频应用程序控制***
CN106331215A (zh) * 2016-08-30 2017-01-11 常州化龙网络科技股份有限公司 数据请求的处理***及其处理方法
CN106453011A (zh) * 2016-11-30 2017-02-22 海信集团有限公司 智能家居设备的网络连接方法及智能家居网关
CN106534390A (zh) * 2017-01-24 2017-03-22 网宿科技股份有限公司 权威域名***服务器数据的存储和管理方法及***
CN106856575A (zh) * 2015-12-09 2017-06-16 中国电信股份有限公司 Iptv终端的自动配置方法、服务器以及iptv***
CN107547295A (zh) * 2017-05-10 2018-01-05 新华三信息安全技术有限公司 一种域名缓存表项的老化方法及装置
CN107547468A (zh) * 2016-06-23 2018-01-05 广州市动景计算机科技有限公司 网络协议切换装置、方法及终端
CN107645543A (zh) * 2017-09-04 2018-01-30 北京新流万联网络技术有限公司 应用于缓存服务器http非80缓存端口服务的方法和***
CN107682465A (zh) * 2017-06-24 2018-02-09 平安科技(深圳)有限公司 域名解析装置、方法及计算机可读存储介质
CN107748717A (zh) * 2017-09-26 2018-03-02 深圳市牛鼎丰科技有限公司 接口自动化测试方法、装置、存储介质和计算机设备
CN108123814A (zh) * 2016-11-28 2018-06-05 大唐移动通信设备有限公司 一种为小基站分配网络参数的方法及装置
CN108366277A (zh) * 2018-03-30 2018-08-03 武汉斗鱼网络科技有限公司 一种弹幕服务器连接方法、客户端及可读存储介质
CN108449771A (zh) * 2018-06-29 2018-08-24 Oppo(重庆)智能科技有限公司 网络切换方法、装置、终端及存储介质
CN109120482A (zh) * 2018-09-28 2019-01-01 北京小米移动软件有限公司 监控应用程序使用流量的方法及装置
CN109218275A (zh) * 2017-07-07 2019-01-15 北京小米移动软件有限公司 应用交互方法及装置
US20190036985A1 (en) * 2017-07-26 2019-01-31 T-Mobile Usa, Inc. Server-managed notifications for maintaining registered state
CN109495598A (zh) * 2018-10-23 2019-03-19 新华三技术有限公司合肥分公司 域名***参数选择方法及相关装置
CN109547508A (zh) * 2017-09-21 2019-03-29 阿里巴巴集团控股有限公司 一种实现资源访问的方法、装置及***
CN109600458A (zh) * 2019-02-22 2019-04-09 北京知道创宇信息技术股份有限公司 网站访问方法及装置
CN109640348A (zh) * 2019-01-08 2019-04-16 中国联合网络通信集团有限公司 多业务mec网络架构、多业务数据流的处理方法及装置
US20190124010A1 (en) * 2017-10-23 2019-04-25 Citrix Systems, Inc. Systems and methods for first packet application classification
CN109768882A (zh) * 2018-12-21 2019-05-17 杭州全维技术股份有限公司 一种基于网络设备的自动组网***及其故障自排查方法
CN109769043A (zh) * 2019-03-14 2019-05-17 中国工商银行股份有限公司 域名解析方法、装置及***
CN110086797A (zh) * 2019-04-22 2019-08-02 北京开广信息技术有限公司 媒体流的实时接收方法及客户端
CN110213596A (zh) * 2018-03-28 2019-09-06 腾讯科技(深圳)有限公司 直播切换方法、装置、计算机设备和存储介质
CN110224996A (zh) * 2019-05-20 2019-09-10 深圳壹账通智能科技有限公司 应用程序的网络访问方法、装置、计算机设备和存储介质
CN110247999A (zh) * 2019-07-11 2019-09-17 广东美的制冷设备有限公司 域名解析方法、域名解析装置、家电设备和存储介质
CN110636072A (zh) * 2019-09-26 2019-12-31 腾讯科技(深圳)有限公司 一种目标域名的调度方法、装置、设备及存储介质
CN110650138A (zh) * 2019-09-23 2020-01-03 深圳前海微众银行股份有限公司 服务器管理方法、装置、设备及计算机可读存储介质

Patent Citations (43)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1863196A (zh) * 2005-05-11 2006-11-15 中国科学院计算技术研究所 多协议域名解析服务的服务代理方法
CN102129437A (zh) * 2010-01-12 2011-07-20 腾讯科技(北京)有限公司 域名匹配方法、浏览器
CN101815104A (zh) * 2010-03-19 2010-08-25 中兴通讯股份有限公司 网络协议地址反馈方法以及域名解析服务器
US20120295617A1 (en) * 2011-05-18 2012-11-22 Qualcomm Incorporated Selectively extending a waiting period before an originating user equipment fails a call based on network information of one or more target user equipments
CN104065761A (zh) * 2011-09-29 2014-09-24 北京奇虎科技有限公司 应用服务器选取方法和网络连接方法
JP2014103553A (ja) * 2012-11-20 2014-06-05 Toshiba Corp 通信装置、通信方法およびプログラム
CN103297564A (zh) * 2013-07-03 2013-09-11 深圳市共进电子股份有限公司 一种自动切换外部代理服务器地址的方法
CN104700512A (zh) * 2013-12-06 2015-06-10 航天信息股份有限公司 采用dhcp与dns协议快速配置服务器与网络税控器集群的方法
CN103781148A (zh) * 2014-02-25 2014-05-07 重庆邮电大学 车载自组织网络中基于链路感知的稳定成簇路由方法
CN105227686A (zh) * 2014-06-20 2016-01-06 中国电信股份有限公司 云主机域名的动态配置方法和***
US20160041880A1 (en) * 2014-08-06 2016-02-11 Commvault Systems, Inc. Efficient application recovery in an information management system based on a pseudo-storage-device driver
US20160054965A1 (en) * 2014-08-21 2016-02-25 Canon Kabushiki Kaisha Image forming apparatus including short-distance wireless communication unit, method of controlling the same, and storage medium
CN106856575A (zh) * 2015-12-09 2017-06-16 中国电信股份有限公司 Iptv终端的自动配置方法、服务器以及iptv***
CN105657777A (zh) * 2016-03-14 2016-06-08 西安电子科技大学 基于链路质量和节点转发能力的路由协议设计方法
CN107547468A (zh) * 2016-06-23 2018-01-05 广州市动景计算机科技有限公司 网络协议切换装置、方法及终端
CN106028062A (zh) * 2016-06-24 2016-10-12 乐视控股(北京)有限公司 一种视频应用程序控制方法及视频应用程序控制***
CN105959155A (zh) * 2016-06-24 2016-09-21 维沃移动通信有限公司 一种电子邮箱的连接方法及移动终端
CN106331215A (zh) * 2016-08-30 2017-01-11 常州化龙网络科技股份有限公司 数据请求的处理***及其处理方法
CN108123814A (zh) * 2016-11-28 2018-06-05 大唐移动通信设备有限公司 一种为小基站分配网络参数的方法及装置
CN106453011A (zh) * 2016-11-30 2017-02-22 海信集团有限公司 智能家居设备的网络连接方法及智能家居网关
CN106534390A (zh) * 2017-01-24 2017-03-22 网宿科技股份有限公司 权威域名***服务器数据的存储和管理方法及***
CN107547295A (zh) * 2017-05-10 2018-01-05 新华三信息安全技术有限公司 一种域名缓存表项的老化方法及装置
CN107682465A (zh) * 2017-06-24 2018-02-09 平安科技(深圳)有限公司 域名解析装置、方法及计算机可读存储介质
CN109218275A (zh) * 2017-07-07 2019-01-15 北京小米移动软件有限公司 应用交互方法及装置
US20190036985A1 (en) * 2017-07-26 2019-01-31 T-Mobile Usa, Inc. Server-managed notifications for maintaining registered state
CN107645543A (zh) * 2017-09-04 2018-01-30 北京新流万联网络技术有限公司 应用于缓存服务器http非80缓存端口服务的方法和***
CN109547508A (zh) * 2017-09-21 2019-03-29 阿里巴巴集团控股有限公司 一种实现资源访问的方法、装置及***
CN107748717A (zh) * 2017-09-26 2018-03-02 深圳市牛鼎丰科技有限公司 接口自动化测试方法、装置、存储介质和计算机设备
US20190124010A1 (en) * 2017-10-23 2019-04-25 Citrix Systems, Inc. Systems and methods for first packet application classification
CN110213596A (zh) * 2018-03-28 2019-09-06 腾讯科技(深圳)有限公司 直播切换方法、装置、计算机设备和存储介质
CN108366277A (zh) * 2018-03-30 2018-08-03 武汉斗鱼网络科技有限公司 一种弹幕服务器连接方法、客户端及可读存储介质
CN108449771A (zh) * 2018-06-29 2018-08-24 Oppo(重庆)智能科技有限公司 网络切换方法、装置、终端及存储介质
CN109120482A (zh) * 2018-09-28 2019-01-01 北京小米移动软件有限公司 监控应用程序使用流量的方法及装置
CN109495598A (zh) * 2018-10-23 2019-03-19 新华三技术有限公司合肥分公司 域名***参数选择方法及相关装置
CN109768882A (zh) * 2018-12-21 2019-05-17 杭州全维技术股份有限公司 一种基于网络设备的自动组网***及其故障自排查方法
CN109640348A (zh) * 2019-01-08 2019-04-16 中国联合网络通信集团有限公司 多业务mec网络架构、多业务数据流的处理方法及装置
CN109600458A (zh) * 2019-02-22 2019-04-09 北京知道创宇信息技术股份有限公司 网站访问方法及装置
CN109769043A (zh) * 2019-03-14 2019-05-17 中国工商银行股份有限公司 域名解析方法、装置及***
CN110086797A (zh) * 2019-04-22 2019-08-02 北京开广信息技术有限公司 媒体流的实时接收方法及客户端
CN110224996A (zh) * 2019-05-20 2019-09-10 深圳壹账通智能科技有限公司 应用程序的网络访问方法、装置、计算机设备和存储介质
CN110247999A (zh) * 2019-07-11 2019-09-17 广东美的制冷设备有限公司 域名解析方法、域名解析装置、家电设备和存储介质
CN110650138A (zh) * 2019-09-23 2020-01-03 深圳前海微众银行股份有限公司 服务器管理方法、装置、设备及计算机可读存储介质
CN110636072A (zh) * 2019-09-26 2019-12-31 腾讯科技(深圳)有限公司 一种目标域名的调度方法、装置、设备及存储介质

Cited By (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112039884B (zh) * 2020-08-31 2022-05-31 浪潮云信息技术股份公司 快速互联协议quic在分布式数据库***中的应用方法
CN112039884A (zh) * 2020-08-31 2020-12-04 浪潮云信息技术股份公司 一种快速互联协议quic在分布式数据库***中的应用
CN112383617A (zh) * 2020-11-12 2021-02-19 百度在线网络技术(北京)有限公司 进行长连接的方法、装置、终端设备以及介质
CN112383617B (zh) * 2020-11-12 2024-05-24 百度在线网络技术(北京)有限公司 进行长连接的方法、装置、终端设备以及介质
CN114826916A (zh) * 2021-01-28 2022-07-29 阿里巴巴集团控股有限公司 数据传输方法、设备、***及计算机存储介质
CN113726922B (zh) * 2021-09-01 2023-10-31 北京百度网讯科技有限公司 一种网络应用层连接协议确定方法、装置及电子设备
CN113726922A (zh) * 2021-09-01 2021-11-30 北京百度网讯科技有限公司 一种网络应用层连接协议确定方法、装置及电子设备
CN114124891A (zh) * 2021-10-25 2022-03-01 青岛海尔科技有限公司 网络请求的处理方法和装置、存储介质及电子装置
CN114124891B (zh) * 2021-10-25 2023-12-19 青岛海尔科技有限公司 网络请求的处理方法和装置、存储介质及电子装置
CN114422574A (zh) * 2022-02-10 2022-04-29 Oppo广东移动通信有限公司 连接建立方法、装置、电子设备和计算机可读存储介质
CN114422574B (zh) * 2022-02-10 2024-05-03 Oppo广东移动通信有限公司 连接建立方法、装置、电子设备和计算机可读存储介质
CN116248631A (zh) * 2022-12-02 2023-06-09 中国互联网络信息中心 一种DoQ优先级设置方法和***
CN116248631B (zh) * 2022-12-02 2024-05-14 中国互联网络信息中心 一种DoQ优先级设置方法和***
CN116760878A (zh) * 2023-08-21 2023-09-15 每日互动股份有限公司 一种网络连接和传输的处理方法、装置、设备及介质
CN116760878B (zh) * 2023-08-21 2023-12-01 每日互动股份有限公司 一种网络连接和传输的处理方法、装置、设备及介质

Also Published As

Publication number Publication date
CN111414208B (zh) 2023-08-01

Similar Documents

Publication Publication Date Title
CN111414208B (zh) 应用程序的启动方法、装置及设备
US9749143B2 (en) Web real-time communication call transferring method and apparatus
US10142425B2 (en) Session reliability for a redirected USB device
US9244817B2 (en) Remote debugging in a cloud computing environment
US20150067031A1 (en) Business transaction correlation with client request monitoring data
US10182126B2 (en) Multilevel redirection in a virtual desktop infrastructure environment
US10257316B2 (en) Monitoring of node.js applications
US9253128B2 (en) Instant messaging with browser collaboration
US11632361B2 (en) Combined authentication and connection establishment for a communication channel
CN109951546B (zh) 基于智能合约的事务请求处理方法、装置、设备和介质
US10067862B2 (en) Tracking asynchronous entry points for an application
US11843642B1 (en) Serverless signaling in peer-to-peer session initialization
US20130111002A1 (en) Systems and methods for establishing a virtual local area network
EP2974159B1 (en) Method, device and system for voice communication
CN112152828A (zh) 一种游戏加速方法、装置、vpn终端及存储介质
US20170126844A1 (en) Server architecture and protocol development
WO2018145574A1 (zh) 一种信息处理方法及装置、终端、服务器、存储介质
JP7299268B2 (ja) ピアツーピア接続方法、装置、電子デバイス、記憶媒体、及びプログラム
CN114390239B (zh) 通信方法、装置、***、电子设备以及存储介质
US9219783B2 (en) Synchronizing machines in groups
CN108848175B (zh) 一种创建tcp连接的方法及装置
CN113765972A (zh) 数据请求响应方法、装置、***、服务器和存储介质
WO2023240560A1 (zh) 支持多协议栈的蓝牙通信方法、装置、电子设备及介质
CN112118576B (zh) 通过无线热点进行连网的方法和装置
CN117714731A (zh) 动态加载方法、装置

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant