webgame开发中配置存储的介绍「建议收藏」

webgame开发中配置存储的介绍「建议收藏」webgame世界的基础数值都是事先配置好的,在运行的时候可以随时读取,是属于非常重要和必不可少的部分,而且数据量也不少。这样的数据在开发中的存储也就变得重要了,需要保证效率、性能、安全等,一般的做法有使用xml文本文件保存、静态数组保存和数据库直接保存。 xml文本文件保存优点: 共享性强,几乎每种语言都可以读取和解析xml文件,方便多语言混合开发。 结构清晰,xml的结构很

大家好,又见面了,我是你们的朋友全栈君。

webgame世界的基础数值都是事先配置好的,在运行的时候可以随时读取,是属于非常重要和必不可少的部分,而且数据量也不少。这样的数据在开发中的存储也就变得重要了,需要保证效率、性能、安全等,一般的做法有使用xml文本文件保存、静态数组保存和数据库直接保存。
 
xml文本文件保存
优点:

 共享性强,几乎每种语言都可以读取和解析xml文件,方便多语言混合开发。

 结构清晰,xml的结构很严谨,层次分明一目了然。

 灵活应用,xml可以灵活的定义结构。

 扩展性强,xml可以随时扩展结构。
缺点:

 转化较差,xml有自己的格式标准,跟其他数据结构不同,如常用的key和value的形式就不一定能转化。

 效率不高,xml相比key和value的存储,效率大大不如。
 
静态数组保存
优点:

 效率很高,因为静态数组是在程序启动的时候就已经加载了,在内存操作速度都很快。

 操作方便,每种语言对数组都有很方便的api。

 转化较强,数组是key和value的形式,可以很方便的转化成其他数据结构。
缺点:

 缓存有限,因为内存不能全部都用来存储配置,只能是用很小的一部分。

 交互不便,和其他语言交互必须要转化,其他语言的数组结构一样但是格式定义不一样需要转化。
 
数据库保存
优点:

 安全稳定,数据库本身就是一个服务,有策略来保证数据的安全和稳定。

 性能强大,强壮的事物管理,可并行,日志等。

 管理方便,相比其他方式,数据库管理是最方便的,有数据库客户端支持。

 共享性强,几乎每种语言都提供数据库操作的api,方便多语言混合开发。
缺点:

 消耗较大,数据库服务本身就很庞大,运行需要消耗内存、cpu等。

 效率不高,数据库查询出来的数据需要转化成数组等才可以操作。
 
每种方式都各有优缺点,看起来好像还有点互补,其实在实际的开发中可以根据业务的情况来决定选择合适的方式,甚至是混合使用,没有也不需要规定一定是用哪种,只要合适就好。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/133925.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • VMware16NAT模式配置固定IP[通俗易懂]

    VMware16NAT模式配置固定IP[通俗易懂]文章目录前言一、NAT配置固定IP二、重启网卡结尾前言为什么要配置固定IP呀?这个很容易解释啊,因为配置集群要设置固定IP(主结点需要管理子结点,通过固定IP识别机器),因为你访问虚拟机方便(不固定IP访问前还需要先查下虚拟机当前分配IP,比较麻烦)等等。配置固定IP采用哪种网络配置方式呢,NAT,桥接?仅主机反正是不行的,不能联网啊。NAT也叫网络地址转换,通常它的名称为VMnet8,通过nat的连接方式可以使得虚拟机和真实机的网卡在不同的网段中,从而实现联网。而bridge也叫桥接,通常它的名称

    2022年6月29日
    70
  • Thinkpad x201i 拆机清理风扇「建议收藏」

    Thinkpad x201i 拆机清理风扇「建议收藏」Thinkpadx201i拆机清理风扇教程笔记本散热风扇使用时间长了就累积很多灰尘,堵塞出风口,从而大幅降低散热效果。因此有必要对其清理。要彻底清理风扇灰尘,需要拆机方可。首先要把笔记本的电池取下。电池取下后,我们就可以开始拆卸内存了,首先要把内存外壳拆下。拆下内存盖后,我们只要把两边的卡扣松动,轻轻一拔即可把内存取下。这款笔记本的硬盘仓很隐蔽,不过在D面还是有明显的图标提示,拧下螺丝和卡扣,即可看到硬盘。硬盘盖拆下来之后,只需用力的拔出黑带即可把硬盘取下。…

    2022年6月27日
    96
  • scrapy安装教程_玻璃幕墙安装介绍

    scrapy安装教程_玻璃幕墙安装介绍在写之前我们先来了解一下什么是Scrapy?Scrapy是用纯Python实现一个为了爬取网站数据、提取结构性数据而编写的应用框架,用途非常广泛框架的力量,用户只需要定制开发几个模块就可以轻松的实现一个爬虫,用来抓取网页内容以及各种图片,非常之方便Scrapy使用了Twisted[‘twɪstɪd](其主要对手是Tornado)异步网络框架来处理网络通讯,可以加快我们的下载速度,不…

    2026年1月18日
    5
  • Nginx + Tomcat 搭建负载均衡

    Nginx + Tomcat 搭建负载均衡Nginx + Tomcat 搭建负载均衡

    2022年4月22日
    35
  • 使用一个运放滤三次谐波 二阶有源带通滤波器的电路设计及波形效果

    使用一个运放滤三次谐波 二阶有源带通滤波器的电路设计及波形效果本文主要讲无限增益多路反馈有源带通滤波器的实现,工程实作,非理论知识,关于其他方法简略提,不做细究

    2022年5月2日
    103
  • ERROR 2003 (HY000): Can't connect to MySQL server on '10.16.115.101' (111)

    ERROR 2003 (HY000): Can't connect to MySQL server on '10.16.115.101' (111)

    2022年1月6日
    56

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号