利用go语言开发站群程序并用2000个站做实际测试

       一直一来,做网站都用php+mysql, 但是php漏洞比较多,还有代码审计问题,sql有注入风险,自从我的网站两次被人挂se qing图片广告,移动端自动跳转流量后,我才开始注重网站安全。记得19年我用Php写的一个垃圾站,自动采集自动更新,自动伪原创,那个站实际上17年就做出来就没管过,到了19年,这个站在百度上爆发了,日IP 120万,我的妈妈呀,这流量着实吓了我一跳,我开始还以为被遭了CC攻击。结果开百度统计看,是真实流量。site: 域名,百度收录破了3000万,我们知道,百度给权重,有个时间因子,再加上我买的是老域名,本身自带一些权重。当时间放的比较久之后,收录量很大,因为伪原创做的足够好,还是聚合内容。虽然这个120万日IP的流量只持续了15天就被百度人工干预了,但是被惩罚之后日流量也有几百到1000个流量,我后来用这个方法做了4、5个站,发现很快有流量,但是很快被惩罚,被惩罚后日流量至少也有200-300IP 一天。我就一直想,能否这样做几千个上万个这样的站,如果1000个站,每个站有200-300个IP 一天,那1天的总IP就有20万-30万,这很容易做到。但问题也来了,我用php做的站群,流量一大,蜘蛛访问一多,并发量上去后,非常消耗cpu资源,内存资源,系统负载。 php在高并发方面,完全是弱项,但是可以用多台机器来做负载均衡弥补,当然成本也就更高了。但是go语言就不同,静态编译语言,本身的执行效率比php高30倍左右,而且在高并发方面是真正的强项,于是我尝试用go语言写了一个站群程序,做了4个站,发现谷歌特别喜欢这个类型的站群,因为谷歌蜘蛛非常多,最多的一天,谷歌蜘蛛有2000多万蜘蛛,

 

 

这要在php代码下,系统负载估计不得了,cpu, 内存都会飙升,但是go语言写的程序,很稳定,负载并没有想象中那么高。于是我接着用go语言写了一个多域名版本的站群程序,配合leveldb nosql数据库,让go语言网站嵌入leveldb数据库,完全摆脱了mysql的束缚,而且查询速度更快。并且完全跨平台。

  

posted @ 2020-06-04 18:18  小熊猫2010  阅读(558)  评论(0编辑  收藏  举报