Monthly Archives: August 2010

迷宫算法

有时候规则的约定比复杂的代码判断起着更好的方式。一个简单的顺时针约定,比很多逻辑记录要好很多。

Posted in Uncategorized | Leave a comment

Google的一个slide

Know Your Basic Building BlocksCore language libraries, basic data structures, protocol buffers, GFS, BigTable,indexing systems, MySQL, MapReduce, … Not just their interfaces, but understand theirimplementations (at least at a high level) If you don’t know what’s going on, you can’t … Continue reading

Posted in Uncategorized | Leave a comment

2010-08-02 工作日志

今日工作主要有两项: 1 追踪客户网站的性能问题: 其实这个工作已经进行一段时间了,今天有点眉目了。原来客户网站的表现是每日交易时间内会出现频繁宕机的情况。 一般遇到这种情况,我的工作流程一般是这样: A 收集从Apache服务器—>WebSphere服务器—>DataBase服务器的各种数据及日志,包括CPU使用情况、内存使用情况、硬盘使用情况、系统和错误日志。 B 确定问题根源,得出问题解决办法。 这次的现象:Apache和WebSphere部署在一台机器上,DataBase是另外一台机器。Apache和WebSphere在宕机时CPU利用率很低,HTTP请求数比较高,HTTP Response Time很大;DataBase服务器CPU利用率居高不下,内存基本用完。跟踪DB,发现一些SQL语句,比较消耗CPU。分析问题从2个方面入手: A 应用级:开始分析应用实现,首先判断由于应用的SQL执行时间过长,且消耗CPU,导致web请求无法及时处理完毕,而导致web服务器阻塞。再DBA分析,无法进行继续优化(未加索引的SQL调整加组合索引)。首先想到2个办法,1:缩减功能;2:加cache。缩减功能被客户否决,只好采用cache机制。考虑到工作量的问题,直接在页面上使用oscache做工作,而没有在服务层做cache。 B 系统级:客户的DBA发现数据库机器的虚拟内存已经超过2G,超过设定的文件大小。故对数据库做出调整。并对数据库的索引值做出优化。 经过调整后,今天监控一天,系统反应比较正常。值得一提的是,采用cacti监控系统使用情况,非常有效。 2 思考蚂蚁微股的产品设计: 主要考虑2点: A 如何增强有趣性:交换好?还是无交换好? B 如何增强扩展性:排名是否能达到预期的效果?恶搞是否能刺激外延? 这两点挺纠结的。

Posted in Uncategorized | 1 Comment