我的React fetch调用使服务器负担沉重如何解决呢?

问题描述

我有一个大型平台应用程序,具有许多API路由,并且不断获取GETS,PUTS,DELETES和POSTS。

我的应用程序在Mongo数据库和节点服务器上运行。我无权访问服务器端,但是我可以肯定问题出在我这一端。

看,当我开始使用重新启动的服务器和DB进行获取时,一切都进行得很顺利,但是经过一段时间,比如说有一百次调用,一切开始变得非常缓慢。我的提取调用似乎使服务器负担沉重,并且在更改为新的React组件时,我不知道如何终止这些调用

实际上,在某些时候,一切都死了,服务器返回了这个信息:

{
   error: "pool has been destroyed"
}

所以我必须重新启动服务器和数据库

这是GET调用在我的service.js文件上的样子:

async get(URI) {
    const token = getToken();
    try {
        let response = await fetch(`${API_URL}/${URI}`,{ headers: {'Content-Type': 'application/x-www-form-urlencode','token': token }});
        return response;
    } catch (error) {
        console.log(error);
    }
}

因此,每次我创建一个需要执行GET调用的新组件时,我都会这样做:

useEffect(() => {
    AuthService.get('/some-uri')
    .then(res => res.json())
    .then(
        (result) => {
            console.log(result)
        }
    )
},[])

PS:昨晚,我与服务器端开发人员检查了服务器日志,他告诉我我已经在进行2千次呼叫了。

如何解决这个问题?

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)