Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 在Node.js中存储静态数据的更快方法_Javascript_Mysql_Node.js_Database - Fatal编程技术网

Javascript 在Node.js中存储静态数据的更快方法

Javascript 在Node.js中存储静态数据的更快方法,javascript,mysql,node.js,database,Javascript,Mysql,Node.js,Database,我写了一个小游戏,有实体的静态数据 一个实体的示例数据(服务器工作时此数据从未更改) 我有大约5000个实体,我的游戏是在SPA客户端和REST API node.js服务器上用MySQL数据库编写的 存储静态数据更快的方法是: 存储在MySql数据库中 或 像json或js模块(数组)一样存储,并在服务器启动数组时加载(json时) 出于安全原因,服务器使用JWT令牌。您有几个相当独立的决定要做: 您应该在服务器启动时加载此数据,还是在每次需要时加载 是否应该在加载数据后将其缓存在内存中,这样

我写了一个小游戏,有实体的静态数据

一个实体的示例数据(服务器工作时此数据从未更改)

我有大约5000个实体,我的游戏是在SPA客户端和REST API node.js服务器上用MySQL数据库编写的

存储静态数据更快的方法是:

  • 存储在MySql数据库中
  • 像json或js模块(数组)一样存储,并在服务器启动数组时加载(json时)

  • 出于安全原因,服务器使用JWT令牌。

    您有几个相当独立的决定要做:

  • 您应该在服务器启动时加载此数据,还是在每次需要时加载

  • 是否应该在加载数据后将其缓存在内存中,这样就不必再次获取它

  • 您应该将其存储在数据库中还是JSON文件中

  • 这些都是相当独立的决定

    如果数据不大(看起来很小),则在服务器运行时数据不会更改,并且您在服务器请求期间经常需要数据,那么自然会加载一次数据并从中缓存,这样您就不必再次加载数据。这将在一定程度上提高服务器性能。因此,如果这些条件是真的,那么答案很可能是“是”的。二,


    无论您是将其存储在数据库中还是JSON文件中,都与您在更改数据时希望如何管理这些数据有关。这个问题实际上与服务器性能无关,而是与服务器的维护和配置以及最方便的方式有关。

    我是新来的,如果你给我否决票,请告诉我我写了什么不好,很抱歉出现了这个问题。你为什么担心加载静态数据的性能?不管你把它放在哪里,您应该能够在服务器启动时加载它一次,从数据库加载和从JSON文件加载之间的细微差别应该对您网站的任何客户都没有任何区别。我考虑使用加载在js数组中的数据,存储在mysqldatabase中,并在api有请求时加载。我也可以在服务器启动时从mysql加载到阵列,但更快的是当请求选择数据库或使用js阵列时?如果数据在服务器运行时从未更改,并且您需要它不止一次,而且它的内存使用量并不是个大问题,那么您应该将它缓存在服务器上,无论它来自何处。无论何时,只要您可以避免对频繁点击的路由进行数据库调用,这都会提高性能。将从数据库加载每个路由与启动时从JSON加载进行比较,这不是一个公平的比较,也不是一个好问题。这就像比较苹果和桔子。问题是您是否应该在启动和缓存时加载,无论它是来自数据库还是JSON文件。无论您希望数据库中的数据还是可能与性能无关的JSON文件中的数据,服务器配置都是一个单独的问题。@Awoonator-这是否回答了您的问题?如果是这样,您可以通过单击答案左侧的复选标记向社区表明这一点,并在此处为自己赢得一些信誉点,以便遵循正确的程序。
     id:black-dog
     type:feline
     date:2020-04-22
     location:hills
     level:1