一种应用程序运行的方法及站点接入设备的制造方法_2

文档序号:9263477阅读:来源:国知局
应的虚拟路径;或者
[0037]用于获取所述url字段数据的首字符数据,在所述首字符数据指示为目录标识字符数据,且在未获取到所述url字段数据中的第二个目录标识字符数据后,则截取所述首字符目录标识数据之后的全部字符数据作为所述请求运行动态网页asp.net应用程序对应的虚拟路径;或者
[0038]用于获取所述url字段数据的首字符数据,在所述首字符数据指示为不是目录标识字符数据,且在获取到所述url字段数据中的第一个目录标识字符数据后,则截取所述首字符数据至所述第一个目录标识字符数据之间的字符数据作为所述请求运行动态网页asp.net应用程序对应的虚拟路径。
[0039]进一步地,所述第二获取单元具体用于根据所述获取到的虚拟路径在网站存储模块查找与所述虚拟路径对应的运行所述动态网页asp.net应用程序的实例;其中,所述网站存储模块存储有虚拟路径与网站的对应关系;所述虚拟路径以哈希表的键的形式存储于所述网站存储模块中。
[0040]进一步地,所述驱动模块具体用于在查找到所述实例后,驱动所述实例的虚拟主机初始化动态网页请求aspnetworkerrequest,并驱动所述虚拟主机通知所述aspnetworkrequest处理所述http请求报文数据,使得所述aspnetworkerequest分析所述http请求报文数据,并将所述http请求报文数据委托给.net动态网页运行时system,web.httpruntime, processrequest进行处理,使得所述动态网页运行时httpruntime根据所述http请求报文数据驱动所述实例执行所述动态网页asp.net应用程序;其中,所述动态网页请求aspnetworkerrequest为.net动态网页请求system, web.hosting,httpworkerrequest的扩展,并定义了所述实例的动态网页asp.net层处理http请求报文数据的规则。
[0041]本发明的有益效果如下:
[0042]本发明的应用程序运行的方法及站点接入设备,采用在服务器iis外寄宿多个实例运行应用程序的方案,克服了当实例寄宿于服务器iis运行应用程序时,由于服务器iis属于不开源产品而导致的出现问题难以排查,调优空间不大的问题;或者使用.net http协议侦听器httplistener代替服务器iis来寄宿实例执行应用程序,但使用.net HTTP协议侦听器httplistener的程序需要管理员权限,用户体验不佳的问题;或者使实例寄宿httpruntime运行应用程序,httpruntime只能寄宿单个站点的问题。采用在服务器iis外寄宿多个实例运行应用程序的方案,使得应用程序得以高效运行。
【附图说明】
[0043]图1表示本发明实施例的应用程序运行方法的流程图;
[0044]图2表示本发明实施例的实例的动态网页asp.net层程序的启动处理流程图;
[0045]图3表示本发明实施例的虚拟路径的设置流程图;
[0046]图4表示本发明实施例的该网络服务器、实例、虚拟主机和站点设置信息之间的包含关系不意图;
[0047]图5表示本发明实施例的站点接入层对http请求报文数据的处理流程图;
[0048]图6表示本发明实施例的查找要运行动态网页asp.net应用程序的实例的方法流程图;
[0049]图7表示本发明实施例的根据url字段数据计算虚拟路径的方法流程图;
[0050]图8表示本发明实施例的动态网页asp.net层处理该http请求报文数据的流程图;
[0051]图9表示本发明实施例的站点接入设备结构示意图;
[0052]图10表示本发明实施例的站点接入设备中查找模块结构示意图。
【具体实施方式】
[0053]为使本发明的目的、技术方案和优点更加清楚,下面将结合附图及具体实施例对本发明进行详细描述。
[0054]1CP (Input Output Complet1n Ports,完成端口)模型是迄今为止最为复杂的一种输入/输出I/O模型,若一个应用程序同时需要管理为数众多的套接字socket,那么采用这种模型,往往可以达到最佳的系统性能,完成端口会充分利用Windows内核来进行1/0调度,是通信模型中性能最好的网络通信模型。因此网络通信使用完成端口技术,通过封装完成端口,驱动一次http请求,站点接入层管理动态网页应用程序实例使得单个进程寄宿多个动态网页应用程序实例并高效运行。基于以上,如图1所示,本发明的实施例提供一种应用程序运行的方法,该方法包括:
[0055]步骤11,从网络层接收超文本传输协议http请求报文数据;
[0056]步骤12,根据所述http请求报文数据查找运行动态网页asp.net应用程序的实例;
[0057]步骤13,在查找到所述实例后,驱动所述实例的动态网页asp.net层处理所述http请求报文数据。
[0058]下面将结合附图以及具体的实施例对本发明的应用程序运行的方法流程进行详细说明。
[0059]网络层监听端口,监听是否有http请求到达,当然在网络层监听端口之前,如图2所示,为实例的动态网页asp.net层程序的启动处理流程:
[0060]步骤21,使用指定的端口初始化网络层;
[0061]步骤22,设置要启动一个或者多个动态网页asp.net应用程序的虚拟路径、物理路径;
[0062]步骤23,网络层开始监听端口。网络层监听到有http请求报文数据达到时,首先使用完成端口技术封装该http请求报文数据,然后通知站点接入层处理该http请求报文数据。
[0063]其中,步骤22,设置要启动一个或者多个动态网页asp.net应用程序的虚拟路径、物理路径的步骤,如图3所示,包括如下步骤:
[0064]步骤31,创建asp.net应用程序中的应用程序域;
[0065]步骤32,创建虚拟主机;
[0066]步骤33,仓Il建asp.net应用程序实例,并把运行动态网页asp.net应用程序对应的虚拟路径和运行该动态网页asp.net应用程序的实例的对应关系存储在实例存储|吴块中;其中,该虚拟路径以哈希表键的形式存储于该实例存储模块中。
[0067]其中,如图4所示,为该网络服务器、实例、虚拟主机和应用程序设置信息之间的包含关系,由图中可看出,该网络服务器包括一个或者多个用于运行该动态网页asp.net应用程序的实例;实例中包含虚拟主机、应用程序设置信息;虚拟主机持有动态网页asp.net应用程序的运行环境、应用程序域的引用及应用程序设置信息。
[0068]如图5所示,在所述步骤23,网络层开始监听端口。网络层监听到有http请求报文数据达到时,首先使用完成端口技术封装该http请求报文数据,然后通知站点接入层处理该http请求报文数据之后,为站点接入层对http请求报文数据的处理流程:
[0069]步骤51,从网络层接收http请求报文数据;
[0070]步骤52,查找要运行动态网页asp.net应用程序的实例;
[0071]步骤53,驱动实例的虚拟主机处理该http请求报文数据,即驱动实例的动态网页asp.net层处理该http请求报文数据。
[0072]其中,如图6所示,步骤52,查找要运行动态网页asp.net应用程序的实例的步骤包括:
[0073]步骤61,分析该http请求报文数据并查找该http请求报文数据的请求行;
[0074]步骤62,分析该http请求报文数据中请求行的统一资源定位符url字段数据;
[0075]步骤63,
当前第2页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1