共勉
"诸君离学校而去了。在社会上立身的困难,恐怕比在学校里求学还要加甚。若非立志奋斗,则以前所受的教育,反足以增加人生的苦恼,或转为堕落的工具。这是诸君所当特别注意的。事业的成功,须经过长时间的辛苦艰难——成功的代价,走过了许多荆棘的路,方才能寻获康庄大道。立志是砍荆棘斧斤,奋斗是劳力。万不可希望以最少的劳力,获最大的成功。" -- 蒋梦麟
Knight's Blog
滴滴海浪技术主管, 前百度资深研发工程师,现居上海。 擅长于大规模的系统平台服务架构。在

- 亿级别搜索平台(sov5.cn)
- 大规模分布式爬虫
- 中间件架设(disconf,CanalX)
- 广告平台(百度联盟广告)
- 租车平台(滴滴租车)
- 语言招聘平台(51tra.com)
- 内容平台(100weidu.com)
- 社区平台(python88.com)
- 资源下载平台(misou.com)
- 计算机图形图像技术(一篇一作)
- 机器学习(一篇一作)

等领域具有颇有经验。
联系方式: knightliao AT gmail.com
联系
近一个月内十大热门文章
最热结点
你的博客变慢的可能原因
工作 • 754 浏览 • 2017-05-21 17:12
本博客系统大约是在我四年前写的吧。记得那时我和师兄在做米搜资源平台,做了一套业务框架,觉得好看就拿来用了。 四年期间,虽有过多次修整,运行效果其实不错。但在近一年来,速度不知道为啥很慢。具体表现为启动博客后速度很快,但运行时间过长后,速度就非常慢,基本是在5-10s左右,有时甚至10几秒,无法忍受。 后台代码很简单,数据量级也非常小,为了解决做这个问题,我什么方法都试过了,什么监控啊,优化啊,甚至为此还做了读写分离。。。实验证明,没啥用,问题不在于此。 我就奇怪,像 http://ww……
继续阅读
如何成功的把一块业务做成功?
生活 • 731 浏览 • 2017-05-15 01:15
前几天听到刘强东在讲如何做好京东时的回答,我感触颇深。 他说:“不管你是做互联网,还是做传统经济,只要做好了三点就可获得成功——1)前端的用户体验;2)后端的低成本;3)高效率” 这句话从逻辑上是比较好理解的,每一点都是正确的。现在的关键是,如何将这三句话反映到工作(创业)中来呢? 不断做什么事情,一般企业都会ToC和ToB两块业务,当然,不同业务,这里比例会有较大的不同。主打ToC的,则ToB的比例会较低。反之亦然。ToC的业务,最重要的是什么?就是拉新和留存。如果没有良好的用户体验,则……
继续阅读
AI变革
生活 • 682 浏览 • 2017-05-04 00:50
看李开复《人工智能》部分章节,有几点很有意思,第一个观点是AI将会在近几十年里分三个阶段进行演化,其中第一阶段是在现存的一些线上化程度较高的业务领域(这些领域必须拥有大数据化的特征)开始AI改造。第二个观点是当AI普遍存在后,文化娱乐产业将会赢来顶峰(体量将是现在的几十倍至几百倍)。 ​​​​ 历史上的每次变革都会带来极大的机会。我个人觉得AI时代对于那些勇于挑战极限的有创始力的技术人员的机会会非常好。另外,对于那些具有文艺创始力的明星或者各种娱乐IP也是个很大机会,他们未来将会比现在更赚钱。 ……
继续阅读
百度网盘搜索引擎
工作 • 1277 浏览 • 2017-02-07 23:40
先占个贴。 春节末尾几天无事,花2-3天时间,写了一个网盘搜索引擎(并入sov5搜索引擎中),目前已经收录百万级别的网盘数据。 网址是 https://pan.sov5.com 可以看最近热映的电影哦~ 欢迎大家拍砖。 ![](http://wx2.sinaimg.cn/mw690/006oy5Ulgy1fcfdqvbauzj318g0ks773.jpg) ![](http://wx4.sinaimg.cn/mw690/006oy5Ulgy1fcfdva0j40j317g……
继续阅读
最近的担心
生活 • 1348 浏览 • 2016-11-26 17:01
最近有点沮丧。关于技术和业务的讨论,关于自身的角色定位,以及未来的发展,都有很多要考虑。思考虽有,但死结难解,事在心里难开。 回想近两年发生的事情,走了挺多的弯路,有些事情在当时总是把未来想得太美好,以至于最终发生的和自己预想的完全不是一个样。 随着年纪的增长,压力巨增。再也不能像以前刚毕业那样专注于公司业务本身,打怪升级就好了。与其说是我年纪大了,不如说我的不安感很重,总害怕一不小心就会掉队。心里总有一口气,想要施展总是各处碰壁。年纪大了一个关键问题,总会让外面不了解自己的别人觉得老年人动力不……
继续阅读
微读2.0发布
工作 • 999 浏览 • 2016-11-26 16:28
微读2.0( http://100weidu.com ) 是继我做 sov5搜索( http://www.sov5.com ) 之后又一款我非常喜欢、重视,并且我个人也是重度用户的个人作品。 在之前的sov5产品中,目前每天承接了全国网民几十万次搜索,这些数字中,我本人工作日每天也贡献了几百次,它已是我工作必不可手的搜索引擎。 对于这款新产品微读,目前微读已经收录了数十万篇精品文章,随着我的机器算法的升级,这个数字每天正在膨胀。并且,作为技术人的态度,这些工作都是全自动化的。我希望,在不远的未来……
继续阅读
处理 waiting ttfb too long 的一次经历
工作 • 3141 浏览 • 2016-11-15 13:36
近几天一直有人反应我的网站速度时好时坏,我一直不在意,觉得应该不会是服务的问题,是网络的问题好嘛! 今天试了一下,发现确实是这样的,chrome下反应某个URL时,出现惊人的 waiting ttfb too long 的问题。(时间长达20s) 在网上查了一下,[http://fex.baidu.com/blog/2015/01/chrome-stalled-problem-resolving-process/](http://fex.baidu.com/blog/2015/01/chrome……
继续阅读
在到处是泡沫的互联网混战中如何站着赚钱
生活 • 1218 浏览 • 2016-09-17 20:47
为什么是阿腾呢?一直占据流量入口的前东家因为移动时代广告被夺走失去巨头称号,而那些所谓的O2O电商平台都一直在巨亏中。。例如京东美团饿了么58到家都要建立人口密集型的线下团队进行地推,每天都过着苦逼没钱的日子。。 现在哪个产品最赚钱并且最轻松?无疑是支付宝以及微信。。只需要靠着为数不多的程序员精英团队(同估值的产品或团队对比一下,谁需要的员工最少,成本最低?)打造着平台,就可以撑起几百亿美元市值,躺着收钱,而无需富士康式的线下苦逼团队。。微信有着微信聊天、朋友圈、支付以及微信公众号平台占据着移动时代最……
继续阅读
微信公众号阅读玩转攻略
生活 • 5067 浏览 • 2016-09-01 23:49
# 微信公众号阅读玩转攻略 网站: http://www.100weidu.com ## 前言 目前微信公众号阅读已经成为人们每天的习惯,但是阅读微信公众号却不是很方便。 一来是只能在手机微信上阅读,阅读的时候无法就无法愉快的和别人聊天了。二是现在仍有不少人喜欢在电脑上、或者RSS阅读器又或者kindle来阅读各种来源的文章,微信公众号作为较为封闭的产品,现在对这种方式均无法支持。再者,微信并没有一个较好的微信公众号推荐平台,将一些高质量的、不低俗不low的公众号推荐出来让大家阅读,……
继续阅读
巨大的幸福感来袭
生活 • 1077 浏览 • 2016-07-09 11:24
什么是巨大的幸福感?我想就是当你非常非常想要一种东西,或者说当你每天都梦想的东西,在你最需要的时候到来了。 简单的说,在最正确的时间,得到最想要的东西。
继续阅读
pfrock : 提供微服务(SOA)架构能力的 统一mock服务
工作 • 2225 浏览 • 2016-02-27 10:29
# pfrock https://github.com/knightliao/pfrock A plugin-based server for running fake HTTP and socket services (especially SOA service) using Python. _ (`-. _ .-') .-. .-') ( (OO ) (……
继续阅读
pkg_resources.ResolutionError: No script named '??'
工作 • 1529 浏览 • 2016-02-25 22:42
晚上想要将python变成一个可执行文件时, http://www.django-china.cn/topic/1464/ 一直出现这个错误, 而且,在linux环境下正常work, 但是在mac环境下一直不行。 应该是环境出问题了,但找到。 最后 我调试 pkg_resources.py 这个类,直击 python 动态库中。 从中,我发现我明明转入 版本0.2,但是他动态链接的时候却一直是0.1,奇怪! 不过我貌似瞬间了解知道为什么了,应该就是 “链接不到正确的版……
继续阅读
微服务下如何进行框架的设计?
工作 • 1963 浏览 • 2015-11-19 22:33
待完善。
继续阅读
微服务下多个bunlde的交互问题
工作 • 1371 浏览 • 2015-11-19 22:32
spring启动时,会有一个父容器,然后根据有多少个 bundle 来生成 多个 子容器。每个子容器是并行的。是互相看不到对方的。但是他们都看得到父容器。 这里会出现一些问题 1. 依赖的jar包中如果要获取spring容器,怎么办?直接获取父容器就可以了。 2. 依赖的jar包中要扫描本容器的一些实现类,这在rpc框架中经常会遇到。这时依赖包如果还是使用父容器去获取bean就会找不到本容器的bean。因为父容器里没有子容器的数据啊。采取的办法是,依赖的jar要将所有context进行扫描……
继续阅读
jquery弹窗处理
工作 • 1472 浏览 • 2015-09-13 17:58
在做页面设计时不可避免的会遇到弹窗的问题,如果你使用 windows.open, 肯定会遇到 浏览器拦截的问题。 http://www.html-js.com/article/2410 这篇文章讲的很清楚原因。 解决这个问题的方法就是坚决 不要使用windows.open方法。 改而使用 内嵌form表单,然后,submit() 提交到 新页面的方法。 也就是说,当用户点击控件后,触发 click方法,然后在click方法里去 submit到新页面。这种方法 所有浏览器均可以兼容。 ……
继续阅读
分布式事务综述
工作 • 2126 浏览 • 2015-08-21 08:21
I'll present the patterns in reverse order of safety(安全) or reliability(可靠), starting with those with the highest guarantee of data integrity and atomicity under the most general circumstances 从最可靠-》最不可靠 The patterns are also roughly in reverse order……
继续阅读
分布式CAP理论综述
工作 • 1654 浏览 • 2015-08-21 00:36
##一 CAP理论简述 海量数据管理中的一致性理论,包括CAP理论,BAS理论,数据一致性理论模型,以及现有的经典数据一致性技术。其中CAP (Consistency, Availability, Partition Tolerance,) 理论是NoSQL数据库管理系统构建的基础。 CAP定律说的是在一个分布式计算机系统中,一致性,可用性和分区容错性这三种保证无法同时得到满足,最多满足两个。该定律作为猜想在2000年提出,2002年被证实。 ![image](http://img.……
继续阅读
分布式 数据库表 sharding 综述
工作 • 2330 浏览 • 2015-08-20 08:33
数据库表 sharding 综述 ## 数据库sharding ### 基本思路 - 表多:垂直划分 - 表不多但表的数据很多:水平划分 ### 切分策略 先垂直后水平 - 垂直:“聚集“,聚合 - 水平:聚合根 举例: - 社交网站:根据用户区分 - 论坛: - 垂直shard:用户和论坛 - 水平shard:Form是聚合根 Tips: - 只读字典或变化较小的表:每个shard里维护一份,可以加速读取速度(joi……
继续阅读
spring 4 带来的变动
工作 • 1813 浏览 • 2015-08-13 00:10
## spring 4 带来的变动 ### 最新版4.2.0问题 4.2.0不知道做了什么改动(没认真去研究),返回java对象时(想要返回json),对象如果有嵌套对象,则子对象无法被序列化。 4.1.7 则没有这个问题,回头有空要研究一下 ### 从3.1.2 升 4 需要进行的改动 1. binding exception 不会在exception handler里出现,如果bind 出错,框架直接报400 error 具体可见我早年提的: http://te……
继续阅读
业务应该避免的问题:事务+synchronized
工作 • 1704 浏览 • 2015-08-12 12:31
##表现分析:## 所有mysql连接池打满,tomcat拿不到任何mysql连接,无法接受请求。重启后系统正常。但过一段时间后又出现问题。 ##简单处理无法解析## 我们以为连接池太少,将c3p0连接池增长10倍,仍出现连接池不够的问题。 ##日志分析:## 1. tomcat thread log分析:发现mysql连接池打满。 2. mysql bin log分析:发现在开事务后,每条SQL操作相隔很久,最久长达30秒。 ##代码分析:## ![http:/……
继续阅读