一种数据访问方法和装置制造方法及图纸

技术编号:27146275 阅读:172 留言:0更新日期:2021-01-27 21:59
本发明专利技术实施例提供了一种数据访问方法及装置,其中,所述的方法包括:基于数据访问协议生成访问请求,所述访问请求包含访问逻辑;将所述访问请求发送至服务器;接收所述服务器执行所述访问逻辑后返回的存储数据。使得可以通过将服务器运行的访问逻辑在访问工具的本地部署,需要访问服务器时,发送访问逻辑到服务器执行,避免访问工具代码污染服务器代码,而且,可以通过访问对象进行访问的方式,实现访问工具对服务器关联的所有数据存储节点进行方便快速访问操作。方便快速访问操作。方便快速访问操作。

【技术实现步骤摘要】
一种数据访问方法和装置


[0001]本专利技术涉及数据管理
,特别是涉及一种数据访问方法和一种数据访问装置。

技术介绍

[0002]随着网络游戏用户群体不断扩大,热门网络游戏的服务器中的用户数据不断增加和数据存储服务访问负载不断增大,游戏数据存储服务的架构设计也是日益复杂,不断朝多存储节点集群、数据分片存储等方向发展。游戏服务器常用的数据存储服务有Mysql、Mongo、Memcache和Redis等,其中Mysql和MongoDB主要存储持久化用户数据,Memcache和Redis主要存储缓存数据。
[0003]目前,大型网络游戏服务器普遍都会使用多种类型的存储服务,以将这些存储服务应用到不同业务中,比如用户存储游戏数据会保存在MySQL或MongoDB等数据库中;而玩家在服务器中的一些常用的记录数据,如用户登录身份验证会话ID、从数据库中加载的用户数据、服务器临时计算数据等,通常会缓存在Memcache或Redis等内存型存储服务中,以便游戏服务器随时调用这些数据,提高运行效率。而且,为了分摊访问负载的压力,每个存储服务都会根据负载情况拆分数据,存储在多个节点中,比如,MySQL中不同业务的存储数据保存在不同数据库中,不同数据库可以存储在不同的MySQL服务节点上,相同数据库也可以分成多个服务节点,不同账号段的玩家存储数据划分在不同服务节点;缓存服务如Memcache、Redis数据存储方式是以键值对的方式存储,为了分摊单个节点存储压力,同样是可以指定不同业务的数据存储到不同服务节点中,并通过存储键的哈希值映射,将这些数据划分到不同节点中存储。因此,在部署一组游戏服务器时经常会需要连带部署许多存储数据节点。
[0004]在游戏开发和测试环节,开发和测试人员要直接访问游戏服务器的存储数据,普遍做法是先确定要访问的数据是存在存储服务中的哪个节点,通过该节点对应的访问工具指定连接到该存储节点查找所需要的数据,访问者如果不确定数据存储在哪一个节点上,还需要逐个节点遍历访问,如果遇到有些存储节点没有开放远程连接访问权限,访问工具需要在存储节点本地运行,这时要访问数据还必须先登陆节点所在的机器。以上操作方式当遇到服务器中存储数据节点数量很多时,对于开发和测试人员进行游戏数据调试测试的过程会带来很多不便,在访问数据的过程中可能需要频繁切换连接到不同存储节点,甚至登陆不同机器,且跨不同类型存储节点访问还需要切换访问工具,操作繁琐。目前尚没有一种完美的数据访问方法可以很好地克服上述问题。

技术实现思路

[0005]鉴于上述问题,提出了本专利技术实施例以便提供一种克服上述问题或者至少部分地解决上述问题的一种数据访问方法和相应的一种数据访问装置。
[0006]本专利技术实施例公开了一种数据访问方法,所述方法包括:
[0007]基于数据访问协议生成访问请求,所述访问请求包含访问逻辑;
[0008]将所述访问请求发送至服务器;
[0009]接收所述服务器执行所述访问逻辑后返回的存储数据。
[0010]可选地,所述基于数据访问协议生成访问请求,包括:
[0011]接收针对服务器的访问操作;
[0012]确定与所述访问操作对应的访问逻辑;
[0013]基于数据访问协议生成携带所述访问逻辑的访问请求。
[0014]可选地,所述访问请求还包含变量参数,所述基于数据访问协议生成访问请求,包括:
[0015]接收针对服务器的选择操作,所述选择操作携带存储服务标识;
[0016]确定与所述存储服务标识对应的变量参数;
[0017]基于数据访问协议生成携带所述变量参数的访问请求。
[0018]可选地,在所述基于数据访问协议生成访问请求的步骤之前,还包括:
[0019]响应于针对服务器的登录操作,确定访问账号和密码;
[0020]根据所述访问账号和密码生成登录请求;
[0021]将所述登录请求发送至所述服务器;
[0022]在所述服务器验证所述访问账号和密码成功后,建立与所述服务器的连接。
[0023]可选地,所述访问对象部署于应用程序,所述响应于针对服务器的登录操作,确定访问账号和密码,包括:
[0024]通过所述应用程序提供图形用户界面;
[0025]响应作用于所述图形用户界面上的输入操作,确定访问账号和密码。
[0026]可选地,所述访问对象部署于Web站点,所述响应于针对服务器的登录操作,确定访问账号和密码,包括:
[0027]登录所述Web站点对应的Http服务器;
[0028]响应于针对服务器的登录操作,通过所述Http服务器从预设数据库中确定与所述服务器对应的访问账号和密码。
[0029]可选地,所述响应于针对服务器的登录操作,通过所述Http服务器从预设数据库中确定与所述服务器对应的访问账号和密码,包括:
[0030]响应于针对服务器的登录操作,向所述Http服务器发送第一登录请求;
[0031]通过所述Http服务器确定空闲的访问对象,并从所述预设数据库中确定与所述空闲的访问对象对应的访问账号和密码。
[0032]本专利技术实施例还公开了一种数据访问方法,所述方法包括:
[0033]生成数据访问协议;
[0034]接收访问对象发送的基于所述数据访问协议的访问请求,所述访问请求包含访问逻辑;
[0035]执行所述访问逻辑得到存储数据;
[0036]将所述存储数据返回至所述访问对象。
[0037]可选地,所述执行所述访问逻辑得到存储数据,包括:
[0038]根据所述访问逻辑初始化运行环境;
[0039]在初始化后的所述运行环境下,执行所述访问逻辑得到存储数据。
[0040]可选地,所述访问请求还包含变量参数,所述执行所述访问逻辑得到存储数据,包括:
[0041]确定与所述变量参数对应的存储服务接口;
[0042]调用所述存储服务接口执行所述访问逻辑得到存储数据。
[0043]可选地,在所述接收访问对象发送的基于所述数据访问协议的访问请求的步骤之前,还包括:
[0044]生成账号白名单;
[0045]接收所述访问对象发送的包含访问账号和密码的登录请求;
[0046]若根据所述账号白名单验证所述访问账号和密码成功,则建立与所述访问对象的连接。
[0047]本专利技术实施例还公开了一种数据访问装置,所述装置包括:
[0048]请求生成模块,用于基于数据访问协议生成访问请求,所述访问请求包含访问逻辑;
[0049]请求发送模块,用于将所述访问请求发送至服务器;
[0050]数据接收模块,用于接收所述服务器执行所述访问逻辑后返回的存储数据。
[0051]本专利技术实施例还公开了一种数据访问装置,所述装置包括:
[0052]协议生成模块,用于生成数据访问协议;
[0053]请求接收模块,用于接收本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据访问方法,其特征在于,所述方法包括:基于数据访问协议生成访问请求,所述访问请求包含访问逻辑;将所述访问请求发送至服务器;接收所述服务器执行所述访问逻辑后返回的存储数据。2.根据权利要求1所述的方法,其特征在于,所述基于数据访问协议生成访问请求,包括:接收针对服务器的访问操作;确定与所述访问操作对应的访问逻辑;基于数据访问协议生成携带所述访问逻辑的访问请求。3.根据权利要求1所述的方法,其特征在于,所述访问请求还包含变量参数,所述基于数据访问协议生成访问请求,包括:接收针对服务器的选择操作,所述选择操作携带存储服务标识;确定与所述存储服务标识对应的变量参数;基于数据访问协议生成携带所述变量参数的访问请求。4.根据权利要求1所述的方法,其特征在于,在所述基于数据访问协议生成访问请求的步骤之前,还包括:响应于针对服务器的登录操作,确定访问账号和密码;根据所述访问账号和密码生成登录请求;将所述登录请求发送至所述服务器;在所述服务器验证所述访问账号和密码成功后,建立与所述服务器的连接。5.根据权利要求4所述的方法,其特征在于,所述访问对象部署于应用程序,所述响应于针对服务器的登录操作,确定访问账号和密码,包括:通过所述应用程序提供图形用户界面;响应作用于所述图形用户界面上的输入操作,确定访问账号和密码。6.根据权利要求5所述的方法,其特征在于,所述访问对象部署于Web站点,所述响应于针对服务器的登录操作,确定访问账号和密码,包括:登录所述Web站点对应的Http服务器;响应于针对服务器的登录操作,通过所述Http服务器从预设数据库中确定与所述服务器对应的访问账号和密码。7.根据权利要求6所述的方法,其特征在于,所述响应于针对服务器的登录操作,通过所述Http服务器从预设数据库中确定与所述服务器对应的访问账号和密码,包括:响应于针对服务器的登录操作,向所述Http服务器发送第一登录请求;通过所述Http服务器确定空闲的访问对象,并从所述预设数据库中确定与所述空闲的访问对象对应的访问账号和密码。8.一种数据访问方法,其特征...

【专利技术属性】
技术研发人员:吴炜峰
申请(专利权)人:网易杭州网络有限公司
类型:发明
国别省市:

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

1