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

wordpress制作页面seo视频教程汇总

wordpress制作页面,seo视频教程汇总,做一个网站赚钱吗,上海市工程建设交易中心网站最近为了做一些网络上的优化,所以就得提前埋点,为后续网络优化提供数据支持。 主要是对发起请求埋点,请求错误埋点,客户端请求耗时埋点。 事件上报到阿里云,接入的是阿里的应用实时监控服务。 网络请求使用的是OhHttp…

最近为了做一些网络上的优化,所以就得提前埋点,为后续网络优化提供数据支持。
主要是对发起请求埋点,请求错误埋点,客户端请求耗时埋点。
事件上报到阿里云,接入的是阿里的应用实时监控服务。

网络请求使用的是OhHttp + Retrofit ,现在很多都是这么实现的了吧。
网络的埋点切入口,很容易就想到了 Interceptor,用起来了才觉得 Interceptor 是真的香,以前还只是觉得这个设计模式是真好。用到了才感觉是太香了。

上代码:

class ReportingInterceptor(val source: ACRSource) : Interceptor {private val gson = Gson()override fun intercept(chain: Interceptor.Chain): Response {val request = chain.request()val url = request.url.toString()AlibabaCloudRumUtil.requestStart(source, snapshots = url)val startTime = System.currentTimeMillis()val response = chain.proceed(request)AlibabaCloudRumUtil.requestCost(source,snapshots = url,System.currentTimeMillis() - startTime)// 判断是否是 HTTP 错误if (!response.isSuccessful) {AlibabaCloudRumUtil.requestFail(source,snapshots = url,params = AlibabaCloudRumUtil.errorMap(response.code.toString(),response.message))} else {val source = response.body?.source()source?.request(Long.MAX_VALUE)try {val buffer = source?.buffer// 业务错误逻辑上报val result = gson.fromJson(buffer?.clone()?.readString(Charset.forName("UTF-8")),BaseModel::class.java)if (result?.code != 0) {AlibabaCloudRumUtil.requestFail(ACRSource.COROUTINE,snapshots = url,params = ResultException("${result.code}",result?.message ?: "Unknown error").toMap())}} catch (ex: Exception) {AlibabaCloudRumUtil.requestFail(ACRSource.COROUTINE,snapshots = url,params = BusinessException.handlerException(ex).toMap())} finally {source?.close()}}return response}
}

网络请求上报是带上了URL,现在的Retrofit 的URL 在其他地方是真的不好拿,这 Interceptor 确实方便的很。
而网络耗时也比较容易,在
val response = chain.proceed(request)
前后记录时间就可以了,虽然跟抓包数据显示的网络耗时有差距,但是我们毕竟只是粗略的统计而已。
错误上报的话,包括了 http 请求错误和 code != 0 的业务数据错误,都是需要上报的。

如果需要在其他地方拿到 URL ,需要在 Interceptor 里处理,重新 new 一个 Response 返回,然后把 URL 塞到 Header 里面,在其他地方把 Header 中的 URL 读取出来。但是会产生一点性能开销,毕竟每个请求都需要 new 一个新的 Response 。

http://www.yayakq.cn/news/233204/

相关文章:

  • 长春网站制作工具wordpress king主题下载
  • 园区网站建设需求调研报告wordpress 查看全文
  • 个人网站设计作业扎实做好机构编制网站建设
  • 不备案的网站有那些河南郑州网站建设吕凡科技
  • 玉溪住房和城乡建设局网站wordpress强制弹窗
  • 国家网站建设的相关规定网站的配色技巧
  • 网站备案在哪里查询闵行网站制作
  • 免费建设企业网站wordpress数据库丢失
  • 亦庄网站开发公司android应用市场下载安装
  • 做注册任务的网站有哪些网站后台制作这么做
  • 浦东新区做网站韶关市建设与房地产信息网站
  • 网站管理助手未找到iis做网站1500全包
  • 网站更换个人网站备案下载站
  • 传媒建设网站ui设计要会什么
  • 网站建设分期收费网上能注册公司吗怎么注册
  • 龙华做棋牌网站建设哪家好海口网吧
  • 浙江省网站备案青岛网站建
  • 贵州省住房和城乡建设厅官方网站首页广州协安建设工程有限公司网站
  • 建设网站视频四川建设人才网站
  • 二级网站建设 知乎十大国际展览公司
  • 域名访问网站应该怎么做做网站导航的
  • 网站建设与维护试卷第九章电商基地推广
  • 任何用c语言做网站广东网页空间价格
  • 十堰网站开发培训wordpress js加速
  • 招标天津网站优化公司价格
  • 电商网站建设市场分析廊坊代运营公司
  • 黄平网站制作中国计算机软考网
  • 刷赞网站推广免费链接优化大师最新版本
  • 网站提供什么服务中国容桂品牌网站建设
  • 一步步教做音乐网站平面设计培训课程培训