最近看了三表龙门阵的作品,有一文题为:___让生活更美好。文中讲到一词:“破界”,这也就是 这篇文章标题的来源了。我是从今年开始陆续写作的,感觉有些东西需要理一理思路,可能对你有价值, 也有可能就看看罢了。

“破界”对于我们产品来说的真正意义是卖出去,我跟我的小伙伴是从去年第四季度开始孵化这个反爬虫 的产品的,到现在已经是做了两个季度了,月初定下目标要拿下第一单客户,那么我们来了,北京是第一站。

这次出来之前我们已经完成了产品的开发和测试,我们团队还是很有信心的。临行前又向老板汇报了一下 产品的工作和进度,老板也是提了很多的建议,让我们保持一个平常心,我们确实也这样做了,我觉得这个 事情是一个长期且持续的过程,过程中的很多东西都无关紧要,只有里程碑式的事件才会被津津乐道。

第一个测试客户

我们的第一测试客户就是我们自己的官网,最开始测试官网的时候其实我们心里挺平静的,没紧张啥,因为 官网的量不大,一天顶多也就 100 万的请求,第一次正式的测试,遇到了不少的反馈,印象比较深的是宇哥 发现的一个Cookie Bug,因为这个 Bug 复现步骤很神秘,一般人可能并不会触发这个场景,我们仔细记录 并快速的解决了;第二个反馈的比较大的问题是:大家觉得慢,这个问题最开始觉得是因为没有缓存的问题,

deploy

这个模式下,我们的流量要比之前多过一个代理服务器,所以肯定比之前会增加一定的时延,但是这个时延 应该不会在用户可以感知的范围内,代理服务器和 web 服务器之间是内网通信,只要带宽足够的话,速度应该 不会有太多的影响。这个问题最后发现是 SLB 的入口带宽有问题,不限速之后,体验瞬间就上去了。第三个 就是浏览器兼容性的问题,由于反代模式下自动注入 Javascript 实现前段数据采集,那么我们需要在页面 到达之前埋点加载我们自己的 Javascript ,如果这个 Javascript 文件有兼容性的问题,会导致用户 第一次没法顺利加载页面,这个收到了不少用户的反馈,多发于 Safari 浏览器 9.x 的版本,比较意外的 是这个问题惊动了老板,本来悠闲悠闲的测试也变得紧张了起来,我们不敢随便马虎了,老板是一个特别强调 “精益创业”的人,做什么事都尽量用最低的成本,时常会跟我们讲他的两个“小故事”。

第一个客户大概是测试了两个周,效果还可以,帮助官网发现了一些恶意的网站扫描,xx创宇的扫描器,另外 还发现了运维大哥的监控脚本,总体上符合网站的流量特点。

第一次客户交流

北京是我们客户交流的第一站,主要目标是做产品的 PMF,另外争取一家测试客户,跟我之前工作有些不同, 这次我除了做技术,还要想办法把产品推出去,换言之能不能卖钱也在我的考虑范围内,如果不能卖钱,我们可能 会推倒重来,最惨是项目组原地改散,想想其实挺可怕的,我也只是这么一说,还是保持一颗平常心。

这次交流的客户有:京东,智联,链家,权大师,小李简报,拉钩,36kr,敦煌网等。 整体上来讲客户对我们的技术方案还是挺认可的,但是大公司普遍很难接受反代模式,他们认为这个很难落地,借用 某个技术主管的话来说:我们辛辛苦苦一年的 KPI,如果因为这个事情没了,可能得不偿失;哈哈,没办法这就 是客户的处境,有的客户比较关心产品的稳定性,有的客户提出这个产品方案在不同部门之间落地太困难,很难协同等, 有些客户就纯粹交流,他们有自己的团队,双方交流了下真实需求,遇到的问题和解决办法;当然有些客户很想尝试 我们的产品,希望可以快速的接入测试,能接受反代的模式,还有一部分客户给我们提供了他们的想法,希望我们提供 旁路模式,这样可以保障他们自己业务不受影响,毕竟他们获客不容易,不希望丢失客户,这个地方我又想起来“精益创业” 的事情。

通过这一圈走访,我们在这个过程中先是提出了自己的方案,得到了用户的反馈,然后针对用户的反应,我们 做了一些调整,后面几天的交流明显顺利很多,另外客户也给我们抛出了很多的问题,有的问题我们想的已经 很清楚了,但是有些问题我们也没有想太清楚,比如说 HTTP/2 的支持力度,这些问题我们都记录了下来, 事后统一给客户回复。

最终我们认为反代和旁路的模式都需要有,中小客户可能对反代的模式比较感兴趣,简单快速的部署方式,免改 任何代码,大中型客户可能更加倾向于旁路的模式,影响最小,业务优先,事后分析,有自己的处置方式,不需要 我们包揽整个业务。

出来一圈,我感觉当年那些只会写 PPT 的人,也不是那么一无是处,他们虽然只有一个 PPT,但是只要整个方案 可以落地,有足够的受众,可以挖掘到真实的用户需求才是最重要的,也许在产品的 PMF 阶段,我们不需要投入 大量的研发力量,我们可能就是一个 PPT 和一堆设计做的图表就可以了,尽可能早的将这些东西输出到用户那里, 如果可以得到反响,是客户需要的,再次投入巨大的人力才是合理的流程,这也就是我们老板一直说的:“精益创业”, 用尽可能低的成本去验证一个事情。

讲一个老板之前给我讲的一个例子:他最开始做验证的时候,只有一个想法,但是他不会写代码,如果请人 做出来成本太大了,他没有什么钱,后来他就去了某某网站,找了个设计,做了一套验证的设计图,弄成了宣传册 拿给投资人和客户看,当确定这个产品对方感兴趣之后,接着他又请人做了一个 wordpress 的验证插件,发现用户 有 2000 人,越来越多的人问这个怎么没有 PHP 的 SDK,提了很多的需求,后来才找人做这个事情,并不是等 产品做出来才去找客户的,应该是想方设法的挖掘客户的需求,然后再去投入人力成本。

其实我想下一款产品中,我完全可以从一个 PPT,然后想一下方案,用伪代码或者设计图确认 方案可以落地,之后就先对外宣传和技术交流,让市场告诉我真实的需求是什么,然后再去落地,前期不要在一个 最终没有人买单的需求中投入太多。本次也接触了不少大公司的技术主管,互相认识了一下,有些甚至是老板,了解了 下他们的思考视角,可能有些东西还是要多接触,光会技术投入是不够的。