一种在线选座的方法、系统及设备与流程

文档序号:12119744阅读:646来源:国知局
一种在线选座的方法、系统及设备与流程

本发明涉及在线选座技术领域,尤其涉及一种在线选座的方法、系统及设备。



背景技术:

目前大部分票务系统采用的在线选座技术方案包括:

第一种:基于flash的分区显示座位点击单个点的座位选择。该方案采用flash技术进行场馆图片的渲染及场馆区域坐标、座位坐标的换算,根据坐标在图片上构建出对应的座位点进行显示。在用户进入座位选择页面时首先对场馆的图片进行加载,并将区域进行绘制,页面显示出各个区域,点击某个图片区域后进入该区域的座位选择页面,此时对该图片下的座位点进行加载,区域座位加载完毕后用户点击对应的坐标点进行座位的选择。

第二种:基于svg全场馆加载座位选择方案。该方案采用HTML5SVG技术,进行SVG图片的加载,用户在进入座位选择页面时读取所有座位信息进行显示。

发明人在研究的过程中发现,现有方案存在的问题和缺点如下:

1、基于flash的选座方案,依赖第三方组件,客户电脑浏览器必须安装adobe flash插件,如果浏览器不安装adobe flash插件则该方案不可执行,从而导致客户无法使用座位选择功能。易操作性较差,在座位选择时一次点击只能选择一个座位,操作较为繁琐,影响处理用户选择座位的速度。

2、基于SVG全场馆加载座位时会对web服务器、数据库服务器造成很大压力,由于数据量较大,用户在进入座位选择页面时会出现浏览器卡死、崩溃、响应缓慢,用户操作长时间处于座位加载页面等情况,影响用户体验,从而导致交易失败。

3、单纯的将静态资源缓存到CDN,并从CDN获取座位静态资源,当座位销售状态发生变化后客户端无法及时更新,导致用户重复购买或购买错误的情况发生。



技术实现要素:

为了解决上述技术问题,本发明提供了一种在线选座的方法、系统及设备,降低了服务器与数据库压力,提高了用户在购买多个座位时的选座速度与体验。

本发明一方面提供了一种在线选座的方法,包括:

接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识;

将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件;

将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。

进一步的,所述接收携带座位区域标识的SVG图像,包括:

获取场馆的座位平面图;将所述座位平面图转换为SVG图像;

在所述SVG图像的XML节点中标记座位区域标识。

进一步的,所述解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识,包括:

识别所述SVG图像中的座位区域标记;

将存储的唯一座位区域标识写入SVG图像中的座位区域XML节点中,生成SVG静态数据。

进一步的,所述将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件,包括:

采用SVG中的标签创建SVG座位图形,并在SVG座位图形中标记座位节点;

将每个座位节点添加到SVG图像的座位区域标识中对应的节点中,生成包含座位信息的SVG静态座位资源文件。

进一步的,所述将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示,包括:

定时生成所述SVG静态座位资源文件并定时上传CDN缓存;

使用javascript对CDN缓存中的SVG静态座位资源文件进行解析,获取所有唯一座位区域标识,并进行分组;

获取唯一座位区域标识下的座位节点分布;根据座位节点分布在界面中展示座位的显示状态,并设置每个座位的鼠标监听事件。

进一步的,所述设置每个座位的鼠标监听事件包括但不限于:

设置鼠标的拖动并发请求事件,取消事件以及缩放事件。

进一步的,将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示之后,还包括:

接收选座请求,所述选座请求中携带的用户端属性信息;

CDN系统根据所述用户端属性信息实时将用户的请求重新导向离用户端最近的服务器中。

本发明另一方面提供了一种在线选座的系统,包括:

第一接收模块,用于接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识;

生成模块,用于将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件;

展示模块,用于将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。

进一步的,所述第一接收模块,包括:

获取单元,用于获取场馆的座位平面图;将所述座位平面图转换为SVG图像;

标记单元,用于在所述SVG图像的XML节点中标记座位区域标识;

识别单元,用于识别所述SVG图像中的座位区域标记;

写入单元,用于将存储的唯一座位区域标识写入SVG图像中的座位区域XML节点中,生成SVG静态数据。

进一步的,所述生成模块,包括:

创建单元,用于采用SVG中的标签创建SVG座位图形,并在SVG座位图形中标记座位节点;

生成单元,用于将每个座位节点添加到SVG图像的座位区域标识中对应的节点中,生成包含座位信息的SVG静态座位资源文件。

进一步的,所述展示模块,包括:

上传单元,用于定时生成所述SVG静态座位资源文件并定时上传CDN缓存;

解析单元,用于使用javascript对CDN缓存中的SVG静态座位资源文件进行解析,获取所有唯一座位区域标识,并进行分组;

展示单元,用于获取唯一座位区域标识下的座位节点分布;根据座位节点分布在界面中展示座位的显示状态,并设置每个座位的鼠标监听事件。

进一步的,所述设置每个座位的鼠标监听事件包括但不限于:

设置鼠标的拖动并发请求事件,取消事件以及缩放事件。

进一步的,还包括:

第二接收模块,用于接收选座请求,所述选座请求中携带的用户端属性信息;

导向模块,用于通过CDN系统根据所述用户端属性信息实时将用户的请求重新导向离用户端最近的服务器中。

本发明还提供了一种在线选座的设备,其特征在于,包括前述任一项所述的在线选座的系统。

本发明通过接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识;将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件;将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。本发明将SVG静态座位资源文件进行CDN缓存,降低了服务器对用户每次请求的处理次数,降低了服务器与数据库压力,用户请求导向最近的服务节点,更快的获取内容,提高了用户访问网站的响应速度。根据区域分组异步加载动态座位状态数据,对客户端座位状态进行更新,解决了CND静态资源无法及时更新状态的问题,通过多次异步请求解决了数据量较大的问题。将SVG静态座位资源与动态数据进行异步加载,解决了大的体育场馆在线选座卡死,加载速度慢,用户体验差的问题。

附图说明

图1为根据本发明的一种在线选座的方法的实施例一的流程图;

图2为根据本发明的一种在线选座的系统的实施例二的示意图;

图3为根据本发明的第一接收模块的实施例二的示意图;

图4为根据本发明的生成模块的实施例二的示意图;

图5为根据本发明的展示模块的实施例二的示意图;

图6为根据本发明的在线选座的设备的实施例三的结构框图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

实施例一

参照图1,图1示出了本发明提供的一种在线选座的方法一实施例的流程图。包括:步骤S110、步骤S120和步骤S130。

在步骤S110中,接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识。

进一步的,所述接收携带座位区域标识的SVG图像,包括:获取场馆的座位平面图;将所述座位平面图转换为SVG图像;在所述SVG图像的XML节点中标记座位区域标识。

其中,由于SVG文件内容实际为xml格式,在XML节点中标记出利于票务系统识别的实际座位区域(例如在节点<path>中添加属性bound=’true’),并上传到服务器。

进一步的,所述解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识,包括:识别所述SVG图像中的座位区域标记;将存储的唯一座位区域标识写入SVG图像中的座位区域XML节点中,生成SVG静态数据。

在步骤S120中,将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件。

包括:采用SVG中的标签创建SVG座位图形,并在SVG座位图形中标记座位节点;将每个座位节点添加到SVG图像的座位区域标识中对应的节点中,生成包含座位信息的SVG静态座位资源文件。

一优选实施例,采用SVG中的圆标签<circle>进行座位圆点的创建,在座位圆点中标记座位节点,并将每个座位节点添加到SVG图像的座位区域节点下,并重新生成包含座位信息的SVG静态座位资源文件后保存在服务器中。

在步骤S130中,将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。

包括:定时生成所述SVG静态座位资源文件并定时上传CDN缓存;使用javascript对CDN缓存中的SVG静态座位资源文件进行解析,获取所有唯一座位区域标识,并进行分组;获取唯一座位区域标识下的座位节点分布;根据座位节点分布在界面中展示座位的显示状态,并设置每个座位的鼠标监听事件。

其中,定时生成所述SVG静态座位资源文件并定时上传CDN缓存;使用javascript对SVG静态座位资源文件进行解析,获取所有座位区域的唯一标识,并进行分组,例如,可定义N为区域总数量,Y为浏览器允许的并发请求数(同一时间点向服务器发出的请求数),G为区域分组的数量,区域分组的数量最大为Y。根据座位区域的唯一标识向服务器发出获取该座位区域下座位的状态的请求。根据返回结果分区域设置页面座位的显示状态,并设置每个座位点的监听事件,设置用户鼠标左键,右键的监听事件。

由于场馆座位不轻易发生改变,操作不频繁,系统的定时检测程序会每天凌晨检测该场馆下区域、座位是否发生变化,如果发生变化则重新生成SVG静态座位资源文件,票务系统多台服务器之间设置文件共享,并将生成好的文件上传CDN缓存。CDN技术的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。

进一步的,所述设置每个座位的鼠标监听事件包括但不限于:

设置鼠标的拖动并发请求事件,取消事件以及缩放事件。

具体包括但不限于,用户端根据实际购买情况进行座位选择。当用户一直点击鼠标左键进行拖动则触发鼠标左键点击拖动事件,将用户拖动区域的座位进行选中,并添加到用户购物车。还包括同一鼠标拖动区域选择两次则将取消已选中的座位事件。使用鼠标滚轮进行整个场馆或场馆的某个区域进行放大缩小操作事件。对某个区域进行放大缩小操作时会以用户鼠标当前点的坐标为中轴进行放大缩小事件等。

进一步的,将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示之后,还包括:

接收选座请求,所述选座请求中携带的用户端属性信息。

其中,用户进行在线选座,优选采用javascript ajax异步加载技术。

CDN系统根据所述用户端属性信息实时将用户的请求重新导向离用户端最近的服务器中。

本发明实施例一提供的技术方案,通过接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识;将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件;将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。其中SVG静态座位资源文件的生成并进行CDN缓存,降低了服务器对用户每次请求的处理次数,降低了服务器与数据库压力,用户请求导向最近的服务节点,更快的获取内容,提高了用户访问网站的响应速度。根据区域分组异步加载动态座位状态数据,对客户端座位状态进行更新,解决了CND静态资源无法及时更新状态的问题,通过多次异步请求解决了数据量较大的问题。将SVG静态座位资源与动态数据进行异步加载,解决了大的体育场馆在线选座卡死,加载速度慢,用户体验差的问题。鼠标拖动式的区域座位选择,提高了用户在购买多个座位时的选座速度与体验。

实施例二

参照图2,图2示出了本发明提供的一种在线选座的系统200一实施例的结构图。包括:

第一接收模块21,用于接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识。

生成模块22,用于将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件。

展示模块23,用于将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。

进一步的,参照图3,所述第一接收模块21,包括:

获取单元211,用于获取场馆的座位平面图;将所述座位平面图转换为SVG图像。

标记单元212,用于在所述SVG图像的XML节点中标记座位区域标识。

其中,由于SVG文件内容实际为xml格式,在XML节点中标记出利于票务系统识别的实际座位区域(例如在节点<path>中添加属性bound=’true’),并上传到服务器。

识别单元213,用于识别所述SVG图像中的座位区域标记。

写入单元214,用于将存储的唯一座位区域标识写入SVG图像中的座位区域XML节点中,生成SVG静态数据。

进一步的,参照图4,所述生成模块22,包括:

创建单元221,用于采用SVG中的标签创建SVG座位图形,并在SVG座位图形中标记座位节点;

生成单元222,用于将每个座位节点添加到SVG图像的座位区域标识中对应的节点中,生成包含座位信息的SVG静态座位资源文件。

一优选实施例,采用SVG中的圆标签<circle>进行座位圆点的创建,在座位圆点中标记座位节点,并将每个座位节点添加到SVG图像的座位区域节点下,并重新生成包含座位信息的SVG静态座位资源文件后保存在服务器中。

进一步的,参照图5,所述展示模块23,包括:

上传单元231,用于定时生成所述SVG静态座位资源文件并定时上传CDN缓存。

解析单元232,用于使用javascript对CDN缓存中的SVG静态座位资源文件进行解析,获取所有唯一座位区域标识,并进行分组。

展示单元233,用于获取唯一座位区域标识下的座位节点分布;根据座位节点分布在界面中展示座位的显示状态,并设置每个座位的鼠标监听事件。

其中,定时生成所述SVG静态座位资源文件并定时上传CDN缓存;使用javascript对SVG静态座位资源文件进行解析,获取所有座位区域的唯一标识,并进行分组,例如,可定义N为区域总数量,Y为浏览器允许的并发请求数(同一时间点向服务器发出的请求数),G为区域分组的数量,区域分组的数量最大为Y。根据座位区域的唯一标识向服务器发出获取该座位区域下座位的状态的请求。根据返回结果分区域设置页面座位的显示状态,并设置每个座位点的监听事件,设置用户鼠标左键,右键的监听事件。

由于场馆座位不轻易发生改变,操作不频繁,系统的定时检测程序会每天凌晨检测该场馆下区域、座位是否发生变化,如果发生变化则重新生成SVG静态座位资源文件,票务系统多台服务器之间设置文件共享,并将生成好的文件上传CDN缓存。CDN技术的全称是Content Delivery Network,即内容分发网络。其基本思路是尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定。通过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,CDN系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得所需内容,解决Internet网络拥挤的状况,提高用户访问网站的响应速度。

进一步的,所述设置每个座位的鼠标监听事件包括但不限于:

设置鼠标的拖动并发请求事件,取消事件以及缩放事件。

具体包括但不限于,用户端根据实际购买情况进行座位选择。当用户一直点击鼠标左键进行拖动则触发鼠标左键点击拖动事件,将用户拖动区域的座位进行选中,并添加到用户购物车。还包括同一鼠标拖动区域选择两次则将取消已选中的座位事件。使用鼠标滚轮进行整个场馆或场馆的某个区域进行放大缩小操作事件。对某个区域进行放大缩小操作时会以用户鼠标当前点的坐标为中轴进行放大缩小事件等。

进一步的,还包括:

第二接收模块(图中未示),用于接收选座请求,所述选座请求中携带的用户端属性信息。其中,用户进行在线选座,优选采用javascript ajax异步加载技术。

导向模块(图中未示),用于通过CDN系统根据所述用户端属性信息实时将用户的请求重新导向离用户端最近的服务器中。

本发明实施例二具体实现的功能和处理方式参见实施例一方法实施例描述的具体步骤。

由于本实施例二的系统所实现的处理及功能基本相应于前述图1所示的方法的实施例、原理和实例,故本实施例的描述中未详尽之处,可以参见前述实施例中的相关说明,在此不做赘述。

本发明实施例二提供的技术方案,通过第一接收模块接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识;生成模块将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件;展示模块将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。其中SVG静态座位资源文件的生成并进行CDN缓存,降低了服务器对用户每次请求的处理次数,降低了服务器与数据库压力,用户请求导向最近的服务节点,更快的获取内容,提高了用户访问网站的响应速度。根据区域分组异步加载动态座位状态数据,对客户端座位状态进行更新,解决了CND静态资源无法及时更新状态的问题,通过多次异步请求解决了数据量较大的问题。将SVG静态座位资源与动态数据进行异步加载,解决了大的体育场馆在线选座卡死,加载速度慢,用户体验差的问题。鼠标拖动式的区域座位选择,提高了用户在购买多个座位时的选座速度与体验。

实施例三

参照图6,图6示出了本发明提供的一种在线选座的设备300一实施例的结构图,包括实施例二中任一项所述的在线选座的系统200。

本发明实施例三通过接收携带座位区域标识的SVG图像;解析出所述SVG图像的座位区域,并在所述座位区域中添加唯一座位区域标识;将创建的座位节点添加到所述座位区域标识中对应的节点中,生成SVG静态座位资源文件;将所述SVG静态座位资源文件定时上传CDN缓存并在界面中展示。本发明将SVG静态座位资源文件进行CDN缓存,降低了服务器对用户每次请求的处理次数,降低了服务器与数据库压力,用户请求导向最近的服务节点,更快的获取内容,提高了用户访问网站的响应速度。根据区域分组异步加载动态座位状态数据,对客户端座位状态进行更新,解决了CND静态资源无法及时更新状态的问题,通过多次异步请求解决了数据量较大的问题。将SVG静态座位资源与动态数据进行异步加载,解决了大的体育场馆在线选座卡死,加载速度慢,用户体验差的问题。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的装置,可通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

需要指出,根据实施的需要,可将本申请中描述的各个步骤/部件拆分为更多步骤/部件,也可将两个或多个步骤/部件或者步骤/部件的部分操作组合成新的步骤/部件,以实现本发明的目的。

上述根据本发明的方法可在硬件、固件中实现,或者被实现为可存储在记录介质(诸如CD ROM、RAM、软盘、硬盘或磁光盘)中的软件或计算机代码,或者被实现通过网络下载的原始存储在远程记录介质或非暂时机器可读介质中并将被存储在本地记录介质中的计算机代码,从而在此描述的方法可被存储在使用通用计算机、专用处理器或者可编程或专用硬件(诸如ASIC或FPGA)的记录介质上的这样的软件处理。可以理解,计算机、处理器、微处理器控制器或可编程硬件包括可存储或接收软件或计算机代码的存储组件(例如,RAM、ROM、闪存等),当所述软件或计算机代码被计算机、处理器或硬件访问且执行时,实现在此描述的处理方法。此外,当通用计算机访问用于实现在此示出的处理的代码时,代码的执行将通用计算机转换为用于执行在此示出的处理的专用计算机。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1