我遇到过这样的情况,一些用户最终陷入了一个循环,要求太频繁地调用API。太频繁=每秒10-20倍。
目前,我还没有找到问题所在,似乎这不是一个容易解决的问题,但我想知道,是否有可能对改型2设置某种限制,如果应用程序进入某种循环,单个API请求被多次调用,它实际上会忽略这些请求,例如,是否在第二个最大值内完成1-5倍的相同请求或类似的请求?
如何做到这一点(从网络库设置的角度)?(在找到根本原因之前,我想保护后端)
根据这个答案,您可以使用调度程序如下:
Dispatcher dispatcher = new Dispatcher();
dispatcher.setMaxRequests(1);
OkHttpClient client = new OkHttpClient.Builder()
.dispatcher(dispatcher)
.build()
之后,您将能够一次发送一个请求。
Guava的拦截器与RateLimitor相结合是避免接收429 HTTP代码的一个很好的解决方案。
假设我们想要每秒3个呼叫的限制:
import java.io.IOException;
import com.google.common.util.concurrent.RateLimiter;
import okhttp3.Interceptor;
import okhttp3.Response;
public class RateLimitInterceptor implements Interceptor {
private RateLimiter rateLimiter = RateLimiter.create(3);
@Override
public Response intercept(Chain chain) throws IOException {
rateLimiter.acquire(1);
return chain.proceed(chain.request());
}
}
问题内容: 我需要使用删除Google云端硬盘中的文件。根据我在这里和整个网络上所阅读的内容,“新API”中不支持文件删除。 (仍然)正确吗? 我的意思是API不再是新的了… 我也阅读了“清除内容,然后忘记”的策略,但是我不想遵循这种方法。 问题的第2部分: 鉴于仍然无法通过上述API删除文件;有没有 简单的 方法可以将REST API 与我已经编写的代码结合起来?就像是 从GoogleApiCl
我需要使用从Google Drive中删除文件。根据我在这里和整个web上所读到的,“新API”中不支持文件删除。那(仍然)正确吗?我是说API已经不是那么新了... 我也读到了关于“明确内容并忘记”的策略,但我不想遵循这种方法。 null 编辑3:从5月28日开始,现在可以实际删除文件了。
问题内容: 我想知道我是否打算在打算作为电子邮件使用的HTML表中使用colspan属性,电子邮件客户端(Outlook等…)是否会理解colspan的功能,因为我已阅读到这可能会导致布局问题? 问题答案: 是的大多数(如果不是全部)电子邮件客户端都允许使用所有HTML标记。当涉及脚本编写时,您有一个要解决的问题,因为大多数(如果不是全部)电子邮件客户端根本不允许脚本编写。
我遇到了一个JNI程序随机内存不足的问题。 这是一个32位java程序,它读取文件,进行一些图像处理,通常使用250MB到1GB。然后丢弃所有这些对象,然后程序对通常需要100-250MB的JNI程序进行一系列调用。 当交互运行时,我从未见过问题。但是,当对许多文件连续运行批处理操作时,JNI程序将随机运行内存溢出。它可能对一个或两个文件有内存问题,然后对下一个10个文件运行正常,然后再次出现故障
1. 注重双向选择 当客户在你的网站提交表单或者订阅的情况下再去发送邮件,注意尽量避免向未注册过的用户邮箱发送邮件,垃圾举报、取消订阅率、无效地址邮件等均会使信誉度降低; 2. 明确的邮件主题 邮件一定要有主题,并且主题要与邮件内容相符; 避免使用过短或过长的邮件主题,尽量简短清晰; 避免重复使用重复的主题,尽量让每封邮件不完全一样; 避免在主题中使用问候语、特殊符号(如:惊叹号,问号等标点符号以
我很抱歉问这个重复的问题... 我正在使用gmail smtp服务器发送邮件。。 但总是我的邮件只发送垃圾邮件文件夹。。。。 注意:我使用gmail作为公司名称 如果它是正常的gmail像myname@gmail.com,它工作正常...但是我想通过公司邮件...