自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 收藏
  • 关注

原创 cassandra百亿级数据库迁移实践

迁移背景cassandra集群隔段时间出现rt飙高的问题,带来的影响就是请求cassandra短时间内出现大量超时,这个问题发生已经达到了平均两周一次的频率,已经影响到正常业务了。而出现这些问题的原因主要有以下3点:当初设计表的时候partition key设计的不是很合理,当数据量上去(最大的单表行数达到百亿级)之后,出现了一些数据量比较大的partition。单partition最多的数...

2019-05-09 23:02:19 624 1

原创 无界面Ubuntu服务器搭建selenium+chromedriver+VNC运行环境

搭建背景有时候我们需要把基于selenium的爬虫放到服务器上跑的时候,就需要这样一套运行环境,其中VNC是虚拟的显示模式,用于排查定位线上问题以及实时运行情况。搭建流程安装虚拟输出设备:sudo apt-get install xvfb下载google-chrome-stable deb包,由于网上大部分链接没法下载,我这里下载了一个上传到github上了,wget https:/...

2019-03-18 15:00:27 1230

原创 一次ygc越来越慢的问题排查过程

问题发现场景某天突然收到线上应用的gc时间过长的告警,刚开始只有一台机器偶尔报一下,后续其他机器也纷纷告警,具体告警的阈值是应用10分钟内ygc的总时长达到了6.6s。初步排除过程按照gc问题常规排查流程,还是先保留现场,jmap -dump:format=b,file=temp.dump pid。查看下gc日志,发现出问题的时候的单次ygc耗时几乎有200ms以上了。正常来说单次ygc...

2019-03-18 14:59:10 2028

原创 一次频繁Full GC问题排查过程分享

问题描述应用收到频繁Full GC告警问题排查登录到对应机器上去,查看GC日志,发现YGC一分钟已经达到了15次,比Full GC还要频繁一些,其中Full GC平均10分钟超过了4次,如下图使用jstat -gcutil 5280 1000查看实时GC情况,年老代采用的是CMS收集器,发现触发Full GC的原因是年老代占用空间达到指定阈值70%(-XX:CMSInitiatin...

2019-03-18 14:56:51 1537

原创 Apache HttpClient4使用教程

基于HttpClient 4.5.2执行GET请求CloseableHttpClient httpClient = HttpClients.custom() .build();CloseableHttpResponse response = httpClient.execute(new HttpGet("https://www.baidu.com"));...

2019-03-18 14:55:11 5221 1

原创 SpringMVC源码之参数解析绑定原理

摘要本文从源码层面简单讲解SpringMVC的参数绑定原理SpringMVC参数绑定相关组件的初始化过程在理解初始化之前,先来认识一个接口HandlerMethodArgumentResolver方法参数解析器接口,这个接口是SpringMVC参数解析绑定的核心接口。不同的参数类型绑定都是通过实现这个接口来实现。也可以通过实现这个接口来自定义参数解析器。这个接口中有如下两个方法...

2019-03-18 14:51:52 897

原创 SpringMVC源码之Controller查找原理

摘要本文从源码层面简单讲解SpringMVC的处理器映射环节,也就是查找Controller详细过程。SpringMVC请求流程Controller查找在上图中对应的步骤1至2的过程SpringMVC初始化过程理解初始化过程之前,先认识两个类RequestMappingInfo类,对RequestMapping注解封装。里面包含http请求头的相关信息。如uri、metho...

2019-03-18 14:48:22 303

原创 selenium+java破解极验滑动验证码

摘要分析验证码素材图片混淆原理,并采用selenium模拟人拖动滑块过程,进而破解验证码。人工验证的过程打开威锋网注册页面(https://passport.feng.com/?r=user/register)移动鼠标至小滑块,一张完整的图片会出现(如下图1)点击鼠标左键,图片中间会出现一个缺块(如下图2)移动小滑块正上方图案至缺块处验证通过selenium模拟验证的过程加载威锋网注册页面

2017-08-19 11:18:09 1665 1

原创 从零实现一个高性能网络爬虫(二)应对反爬虫之前端数据混淆

摘要上一篇以知乎网为例简单分享网络请求分析。这一篇主要分享一种应对反爬虫的方法,前端数据混淆。目的之前写https://github.com/wycm/zhihu-crawler项目的时候,需要用到免费的http代理,然后找到了这个 http://www.goubanjia.com/ 这个网站。现在需要把这个网站上的ip和port爬取下来,有兴趣的朋友也可以尝试自己爬取一下。开始打开这个网

2017-08-19 11:16:38 2029

原创 从零实现一个高性能网络爬虫(一)网络请求分析及代码实现

摘要从零实现一个高性能网络爬虫系列教程第一篇,后续会有关于url去重、如何反爬虫、如何提高抓取效率、分布式爬虫系列文章。以我写的一个知乎爬虫为Demo讲解,github地址 (https://github.com/wycm/zhihu-crawler) ,有兴趣的朋友可以star下。网络请求的分析是写网络爬虫非常关键且重要的一个步骤。这篇文章以知乎网站为例,从网络请求分析到代码(java)实现。目的

2017-08-19 11:11:27 285

原创 windows下使用wineshark分析抓取本地回环包

摘要由于windows系统没有提供本地回环网络的接口,用Wireshark监控网络的话看不到localhost的流量。 想要获取本地的网络数据包,可以通过一款小巧的开源软件RawCap来进行抓包,然后使用Wireshark进行分析。需要wireshark(下载地址:https://www.wireshark.org/download.html)RawCap(下载地址:http://www.ne

2017-08-19 11:04:21 557

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除