IT技术博客大学习 共学习 共进步

技术文章

精选技术长文、实践记录与系统化阅读

技术文章精选

低噪声、高可扫读;标题、摘要、来源、标签一目了然。

最新文章

采集自各技术站点的近期文章。

IT 系统架构/ 2011-01-12 23:12:34 / 累计浏览 1,928

网站架构的选择

最近的一个项目,在是否选用drupal的问题上,稍微有些纷争,也由此导出了这篇文章,希望对大家选择开源系统协作站点有所帮助。 文章会比较冗长,先简要的说一下选择之前需要考虑的重点: 需求 | 学习成本 | 开发速度 | 性能与后期维护 | 总结 需求 我们需要什么功能? 网站需要什么时间上线? 开发需要什么样的人力资源? 根据需求,来做评估。 开源软件种类繁多,雨后春笋般涌现的开源框架都声称自己是最好的...

IT 算法/ 2011-01-12 23:11:01 / 累计浏览 1,308

网络游戏物品校验系统的设计

网络游戏若要有支持一个稳固的经济系统,服务器底层必须有一个可靠的数据服务。要设计出精简的数据协议可不容易。它需要保证在发生异常(可能是硬件异常,也可能是软件异常)时,不会出现物品/货币丢失,复制的问题。使用带事务的数据库是一个不错的选择,但对程序员的要求较高。程序员需要仔细考虑每个数据操作如何编写事务才是安全的,还需要考虑数据操作的异步性。这对需求变化迅速,量又比较大的游戏,做的好真的是很困难。我...

IT 系统架构/ 2011-01-12 23:09:07 / 累计浏览 2,333

关于柔性服务的一些实践和思考

最近花了大力气在做openapi的优化,使其尽量柔性可用,借此也有些想法想和大家分享一下。 柔性服务,google一下,在网上并没有这样一个标准的概念,所以应该是公司自己取的一个名字。但是...

IT 系统架构/ 2011-01-11 22:38:50 / 累计浏览 2,827

NameNode优化笔记 (一)

集群只要规模上了1000台, 问题就会更多。 RPC, NameNode锁、JobTracker锁、及DataNode, TaskTracker的问题都是一大堆。我们于12月初解决了JobTracker的一些性能问题, 但是NameNode的吞吐量一直没有上来。针对这些问题我们开了几次紧急会议, 会议的决定是由我负责开展一个NameNode优化专门项目。经过大约一个月的努力, 我们的NameNode吞吐量已经上升8+倍。接下来的笔记将连载我们是如何发现NameNode的问题, 并进行NameNode优化的,...

IT 安全/ 2011-01-10 23:34:52 / 累计浏览 3,192

从团购网的漏洞看网站安全性问题

  自从9月份在同事推荐下在某团购网买了一份火锅的套餐后,就迷上了,几乎每天必去浏览一遍,看看有什么又便宜又好吃的。元旦期间当然也不例外,1号那天上午,看到了XXX团购网的“VIP会员0元领红包”活动,0元?我最喜欢了,虽然参与过很多次0元抽奖的活动,一次也没中,但是人总是有一种信念相信自己的运气的。于是果断进去注册,点击购买,进入了购物车再点击确认订单,恩?怎么alert这么一句“本活动只限VIP会员参与”?我第...

IT 算法/ 2011-01-10 23:32:49 / 累计浏览 2,552

根据成员地址获取结构体变量

其实是对于offsetof函数的灵活应用,关于offsetof函数: #define offsetof(s, m) (size_t)&(((s *)0)->m) s是一个结构名,它有一个名为m的成员(s和m 是宏offsetof的形参,它实际是返回结构s的成员m的偏移地址. (s *)0 是骗编译器说有一个指向类(或结构)s的指针,其地址值0 &((s *)0)->m 是要取得类s中成员变量m的地址. 因基址为0,这时m的地址当然就是m在s中的偏移 最后转换size_t 型,即unsigned int。 因此,我们可...

IT 设计思想/ 2011-01-10 23:32:09 / 累计浏览 2,087

设计可以是一种垄断

当前的软件产品,整体来说设计方面的薄弱可谓弱中之弱。大多产品开发中对编码的偏重:目前中国的软件公司开创者,多为编程技术出身,为此对程序编码的宠爱有加也就成为自然,应该承认,产品的思想性、运行速度和稳定性无庸置疑,产品业务的核心地位也从没有人怀疑过,然而,作为产品用户和计算机交互核心以及产品形象工程的UI环节一直尚未得到开发者应有的重视。产品一旦投放市场,当界面遭到用户非议的时候,才会想到花上可怜的一点时间和金钱把产品做以“美化”(仅仅是美化),而这种敷衍最终往往难以得到用户的接受。所以说设计绝对不是单单对产品美化的工作。

IT 奋斗/ 2011-01-10 23:24:53 / 累计浏览 11,839

开发与研发

同样是写程序,不同的岗位工作内容不一样,对程序质量以及工程师的要求也不一样。程序开发大概可以划分成两类:开发和研发,相应也就有开发工程师和研发工程师。很多人觉得做开发和做研发没什么区别,“都是一样对着电脑写程序啊”,但其实这两者是完全不一样的,下面我想抛开公司对员工的期望、社会对工程师的需求等其它因素,单纯从国内互联网行业“工程师个人发展”的角度来说一下我个人对这两类工作的看法。

IT 设计思想/ 2011-01-10 23:23:09 / 累计浏览 2,659

产品思考:分众

最近时间过的不咸不淡。索性就让自己思考,无论对错也不能停转。 自己小白,前期一直对互联网中的分众和垂直这两个词语没什么概念,最近四处浏览了一点东西,才有了几点直观感受。博客分众,可以理解为“让读者更乐意阅读自己感兴趣的内容”。对这一句话概括的目标进一步细分:读者、乐意阅读、感兴趣的内容,即做博客分众的三大前提或三个层次。其实实际操作起来,三者必然混为一体、相互影响。但作为一个问题的三个层次,逐层递...

IT 用户研究/ 2011-01-10 23:19:10 / 累计浏览 3,304

如何预测用户query意图

有一个朋友问,一个用户搜索一个query是“百度”,怎么知道用户真正是想找什么呢。 我回答说,分析之前搜索这个query的用户点了些什么结果啊。 朋友继续问,如果没有用户点击呢。 呃,如果没有点击,这个问题就比较复杂了。整理了下思路,于是写成了本文。主要描述了关于如何预测用户query意图。希望会有所帮助。 首先我们的明确一个标准,如何判断我们对用户意图的猜测是正确的? 用户的思维是很发散的,也许今天搜索“葛优”,是...

IT JavaScript/ 2011-01-10 23:17:56 / 累计浏览 3,567

jQuery打印插件

本插件自己打印链接中指定的页面,可以通过以下方式和参数传递: $(select).printPage( {attr : “href”,//链接的href属性 url : false,//特定的url, message: “请稍后,真正为您准备文档…” } ); demo页面:http://www.css88.com/demo/jQuery-printPage-plugin/ 注意:在IE下打印页面,背景图片和背景颜色默认不打印 解决方案: 在IE的工具里,Internet选项

IT 系统运维/ 2011-01-10 23:15:04 / 累计浏览 3,568

用httpclient做压力测试时Too many open files的解决办法

在工作过程中,用httpclient去压测一个web api,发现压一小段时间就出现了Too many open files。 实际上,HttpClient建立Socket时 ,post.releaseConnection()并没有真正关闭连接,而是将该连接提交给 MultiThreadedHttpConnectionManager,等待复用。 而http的连接是等待timeout才会自动断开的,所以,当用完系统的句柄后,自然会报Too many open files。 解决办法: 设置post方法的header,增加 pos...

IT 安全/ 2011-01-10 23:14:05 / 累计浏览 4,693

为flash建立socket安全策略文件服务器

Flash被广泛应用于互联网各个方面,是因为它提供了各种各样的特性,其中很重要的一点就是,可以用flash建立TCP连接到服务器然后交换数据。从网络管理员的观点看,一个互联网的服务器能够连接进到内网里来,是一个很恐怖的事情,所以flash搞出来一个安全策略文件。 改变 Flash Player 9,0,124,0 版本对这个策略文件进行了两个重大改变:一是所有的端口都需要在策略文件里声明了,以前的版本只需要...

IT 信息和交互/ 2011-01-10 23:10:42 / 累计浏览 2,426

网站“注册流程”如何“照顾用户”?

一个用户到了某个网站的门口,从跨进门槛到找到自己的座位,这个过程中网站要做的,一是让用户尽快坐稳,该干什么干什么;二是让用户快速熟悉房间,保持新鲜感,至少在坐下之前,主人应该送上杯水或两本杂志,让用户既感觉到主人的热情,又轻松发现了新的网站兴趣点,在座位上骚动起来。网站们是怎么做的呢? 记得很久之前听过一个例子,说某家网站的注册流程中,对电子邮箱确认邮件的某句表述稍作修改,使得注册成功率大幅提升,...

IT 设计思想/ 2011-01-09 23:00:18 / 累计浏览 2,917

2011年网页设计发展趋势

设计与开发之间本有一线界限,但当时代步入又一个十年,这个线变得更加模糊甚至感觉不到它的存在。使用PS设计网页版面,足矣?或许五年前是吧!现在的互联网用户要求越来越多。没有内涵的华丽很快就会被丢弃。如果你追求华而不实的设计,那么相信你很快会被时代遗弃。2011年不再属于单纯的华丽而是注重功能。新的一年或者未来十年的设计趋势是响应设计(responsive design)、持续联系(constant connection)和虚拟现实(virtual reality)。

IT 视觉设计/ 2011-01-09 22:56:05 / 累计浏览 2,349

产品五问

开发一个产品的时候,应该问自己五个问题:  1、给谁用?  2、他们用这个产品来解决什么问题?  3、这个问题对他们而言有多重要?  4、我们的方法是否足够简单方便?  5、他们要付出的代价与所得是否匹配?当我们对市场进展不够满意时,检视这5个问题比检视广告更有效。

IT 系统运维/ 2011-01-06 22:57:50 / 累计浏览 2,350

调查服务器响应时间的利器 tcprstat

我们在做服务器程序的时候,经常要知道一个请求的响应时间,借以优化或者定位问题。 通常的做法是在代码里面加入日志计算时间,这个方法有问题,时间不准确。因为数据从网卡到应用程序,从应用到网卡的时间没有被计算在内。 而且这个时间随着系统的负载有很大的变化。 那同学说,我wireshark, tcpdump抓包人肉统计不行吗。 可以的...