正如标题所示。我试图找出应该在node.js应用程序中缓存数据的位置。
我使用express.js和控制器来处理应用程序中的路由。特定路线的控制器将使用REST API通过模型层获取数据,然后使用把手进行服务器上的视图渲染。
对于这个特定的路线,我显示了一个菜单,我为此获得的数据已在模型和远程REST调用中完成。
当用户在菜单中选择不同的项目时,我不想再进行新的REST调用以再次获取菜单的相同数据,我只需要获取此菜单的数据一次,因为它永远不会改变。
我需要找到一种缓存它的方法,但不知道应该在哪里实现它?
最好的问候
答案 0 :(得分:0)
您可以使用像Redis或Memcached这样的内存存储来缓存来自REST API或数据库查找的响应,这两个模块在npm上都有很好的模块 - (Redis,memcached)。
您需要尝试从内存存储区(在控制器中)获取数据,如果未找到匹配的数据,您将向API或数据库发出请求以获取数据,然后将其存储在您选择的内存存储器,以便将来的请求将达到缓存。
注意:如果您不想添加其他应用,还可以使用一些纯JavaScript缓存,例如memory-cache或lru-cache。