当前位置: 首页 > news >正文

求网站都懂得怎么优化网站性能

求网站都懂得,怎么优化网站性能,营销策划公司 采纳策划,做招投标网站文章目录 引言使用 OkHttp 发送回调其他 引言 记录一下 OkHttp 的使用;OkHttp 异步发送回调请求,增加回调失败重试。 使用 OkHttp 发送回调 /*** 回调重试类*/ Data public class CallBackRetryData {/*** 回调信息JSON*/private JSONObject bodyRequ…

文章目录

    • 引言
    • 使用 OkHttp 发送回调
    • 其他

引言

记录一下 OkHttp 的使用;OkHttp 异步发送回调请求,增加回调失败重试。

使用 OkHttp 发送回调

/*** 回调重试类*/
@Data
public class CallBackRetryData {/*** 回调信息JSON*/private JSONObject bodyRequest;/*** 回调发送地址*/private String url;/*** 重试次数*/private int time;public CallBackRetryData(JSONObject bodyRequest, String url, int time) {this.bodyRequest = bodyRequest;this.url = url;this.time = time;}
}
/*** HTTP 操作类*/
@Slf4j
@Service
public class HttpService {private static final OkHttpClient OK_HTTP_CLIENT = new OkHttpClient().newBuilder().connectTimeout(1, TimeUnit.MINUTES).readTimeout(1, TimeUnit.MINUTES).writeTimeout(1, TimeUnit.MINUTES).build();/*** 回调重试队列*/private final Queue<CallBackRetryData> VERIFY_QUEUE = new LinkedList<>();/*** 构造回调信息*/public void buildCallBackData() {JSONObject bodyRequest = new JSONObject();bodyRequest.put("userId", "123456789");CallBackRetryData retryData = new CallBackRetryData(bodyRequest, "https://发送回调地址", 1);sendCallBack(retryData);}/*** 异步发送回调*/public void sendCallBack(CallBackRetryData retryData) {RequestBody requestBody = RequestBody.create(retryData.getBodyRequest().toJSONString(), MediaType.parse("application/json;charset=utf-8"));Request request = new Request.Builder().url(retryData.getUrl()).post(requestBody).addHeader("content-type", "application/x-www-form-urlencoded").build();OK_HTTP_CLIENT.newCall(request).enqueue(new Callback() {@Overridepublic void onFailure(Call call, IOException e) {log.error("[回调失败][call:{}]", e.getMessage());// 回调次数+1retryData.setTime(retryData.getTime() + 1);// 放入验证队列VERIFY_QUEUE.offer(retryData);}@Overridepublic void onResponse(Call call, Response response) throws IOException {String responseData = response.body().string();CallBackResponseData callBackData = JSONObject.parseObject(responseData, CallBackResponseData.class);if (callBackData.getCode() != 200) {log.error("[回调失败][状态码错误:{}]", callBackData);// 回调次数+1retryData.setTime(retryData.getTime() + 1);// 放入验证队列VERIFY_QUEUE.offer(retryData);}}});}/*** 每分钟检查一次*/@Scheduled(cron = "0 0/1 * * * ? ")public void execute() {// 执行超时验证队列while (VERIFY_QUEUE.size() > 0) {CallBackRetryData retryData = VERIFY_QUEUE.poll();// 重新发送if (retryData.getTime() <= 3) {try {log.info("[VERIFY_QUEUE][userId:{}][time:{}]",retryData.getBodyRequest().getString("userId"),retryData.getTime());sendBonusCallBack(retryData);} catch (Exception e) {log.error("[VERIFY_QUEUE error: {}]", e.getMessage());}}}}
}

其他

Java OkHttp使用

http://www.yidumall.com/news/87954.html

相关文章:

  • 哪个网站做不锈钢好爱奇艺科技有限公司
  • 企业网站及公众号建设方案优化推广seo
  • 最简单的手机网站制作关键词优化快排
  • 宁波建设局网站地推接单平台
  • wordpress网站扫描工具上海seo外包公司
  • 一个人做网站建设需掌握百度信息流平台
  • 网站建设需要php吗网络舆情监测中心
  • 青海wap网站建设比较好澎湃新闻
  • 网络营销个人网站百度快照查询
  • 文昌网站建设互联网广告
  • seo高端培训谷歌seo是什么意思
  • 企业网站建设方案.doc高级seo招聘
  • 珠海集团网站建设百度网址提交
  • 湖南网站制作搜索引擎数据库
  • 做网站用什么笔记本配置搜狗网站收录入口
  • 服装设计的基本知识网站优化排名软件网
  • 做网站的公司现在还 赚钱吗一级域名生成二级域名
  • 网站代优化app推广员怎么做
  • 企业工商信息查询app信阳网站seo
  • 做黑彩票的网站赚钱附近电脑培训班零基础
  • wordpress-Cosy主题网站优化查询代码
  • 佛山建站 网站 商城短视频培训机构
  • wordpress 锚文点seo网络推广是干嘛的
  • 网站建设定制开发网站设计开发百度推广收费多少
  • 企业网站的建设要注意什么网站设计制作教程
  • 中科院网站做的好的院所怎么宣传网站
  • 做电影网站会不会侵权最近实时热点事件
  • 网站流量统计模板搜索引擎营销简称seo
  • wordpress 采集公众号成品网站seo
  • 宝塔网站搭建教程友情链接教程