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

技术文章

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

技术文章精选

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

最新文章

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

IT 算法/ 2012-10-22 13:19:38 / 累计浏览 3,084

微博Karma和其算法的一些简单介绍

其实一直就想做一个类似PageRank的东西来鉴别一个微博博主的“能量”。经常看到有些微博博主有50-100万左右的粉丝,但发出来的微博几乎无人问津(零转发、零评论),于是就动手做了这个。 首先,明确一点,这个玩意只是一个玩具,优点和缺点都很明显。别指望JavaScript能获取和判断太多信息。但仅作为玩具来看,也能看到一些有趣的现象。所以如果是想获得专业和客观的“微博粉丝互动频度”、“微博僵尸粉丝数量”数据,不要盲目参考。举个简单例子,方舟子(只是我做数据分析的客观结果,舟子老师的粉丝不要怪我)的微博后面很多人是在骂他,而这一部分数据JavaScript是无法辨别的,因此都计算到方舟子这个微博的Karma里了。 同样,由于采用了一个简单的平均数的算法,因此突然爆红的微博也会导致Karma过高。

IT CSS/HTML/ 2012-10-22 13:18:27 / 累计浏览 7,551

颜色的代码表达式

知道为什么给色彩命名总是很麻烦吗?因为任何两个人都没法对同一个颜色进行精确的感知和描述——尤其是当他们受到网站自身的情绪或气质影响时。给色彩命名, 最容易被印象所误导。即使像“蓝色”这样的说法也是不确切的。比如为了更准确,可以说是“天蓝”,“海蓝”,“牛仔蓝”或是“电焊火光蓝(arc welder blue)”。

IT CSS/HTML/ 2012-10-22 13:16:24 / 累计浏览 5,007

HoverDir响应鼠标移动方向的悬停效果插件

之前的一篇文章JS判断从哪个方向判断进入一个容器中提到了一个效果,通过计算鼠标位置以及一些数学方法,来判断鼠标是从哪个方向进入以及离开该容器的。今天我这里搜索到一个不错的实战效果,分享给大家。是基于jquery的一个插件。该效果出品人是老外,原文地址 该效果用到的几点技术,一个是css3的动画效果,这里不是采用的js的动画效果,所以兼容性存在不足。另外就是之前提到的针对进入方向的判断。

IT 算法/ 2012-10-14 23:39:06 / 累计浏览 3,405

代码执行的效率

在《性能调优攻略》里,我说过,要调优性需要找到程序中的Hotspot,也就是被调用最多的地方,这种地方,只要你能优化一点点,你的性能就会有质的提高。在这里我给大家举三个关于代码执行效率的例子(它们都来自于网上)

IT 算法/ 2012-10-14 23:37:04 / 累计浏览 5,215

正态分布的前世今生(一)

我在大学学习数理统计的时候,学习的过程都是先学习了正态分布,然后才学习中心极限定理。而学习到正态分布的时候,直接就描述了其概率密度的数学形式,虽然数学上很漂亮,但是当时很困惑数学家们是如何凭空就找到这个分布的。然而读了陈希孺的《数理统计学简史》之后,才发现正态分布的密度形式首次发现是在棣莫弗-拉普拉斯的中心极限定理中。数学家研究数学问题的进程很少是按照我们数学课本的安排顺序推进的,现代的数学课本都是按照数学内在的逻辑进行组织编排的,虽然逻辑结构上严谨优美,却把数学问题研究的历史痕迹抹得一干二净,我们难以在数学课本上看到数学家对数学问题是如何研究推进的。DNA 双螺旋结构的发现者之一 Waston 在他的名著《DNA 双螺旋》序言中说:“科学的发现很少会像门外汉所想象的一样,按照直接了当合乎逻辑的方式进行的。”

IT Linux/ 2012-10-14 23:30:43 / 累计浏览 16,593

28个Unix/Linux的命令行神器

下面是Kristóf Kovács收集的28个Unix/Linux下的28个命令行下的工具(原文链接),有一些是大家熟悉的,有一些是非常有用的,有一些是不为人知的。这些工具都非常不错,希望每个人都知道。本篇文章还在Hacker News上被讨论,你可以过去看看。我以作者的原文中加入了官网链接和一些说明。

IT JavaScript/ 2012-10-14 23:29:06 / 累计浏览 3,248

JavaScript运算符

JavaScript中的每个运算符到底是如何进行类型转换的.下面会依次讲解六个最常用的运算符的工作机制: typeof typeof运算符会返回操作数类型的字符串表示.主要有两个需要注意的地方: ●未定义或未声明的变量将会返回"undefined", 比如.如果a没有被声明,那么typeof a将会返回"undefined". ●typeof在操作数是null或函数的种情况下会"撒谎".

IT MySQL/ 2012-10-14 23:28:21 / 累计浏览 4,845

master_pos_wait函数与MySQL主从切换

背景   主从切换是高可用MySQL架构的必要步骤(即使用不发生,也要有备无患)。一般设置为双M(M1、M2),假设当前状态为写M1,而M2只读,切换的大致流程如下: 1、  停止应用写M1,将M1设置为只读 .....

IT 设计思想/ 2012-10-14 23:23:46 / 累计浏览 2,988

新接手一个电商网站 如何进行网站优化

亚马逊基于数据分析的智能化推荐,咱们做不了,在中国做电商,还是要倚赖促销活动的刺激。所以,就要细心分析以往促销活动的各项数据,如活动页面浏览量、成单量、对整站的间接促进等,可以做一个详细的对比分析表,相信数据,一定能反映出一个趋势,告诉你什么样的活动最吸引人,效果最佳。得出结论,放手去做就好了。

IT 算法/ 2012-10-14 23:21:22 / 累计浏览 4,850

快速判断一个32位的字中是否存在值为"0"的byte

首先为什么要做这样的判断呢? 当你要strcpy活着strcmp或者hash一个字符串的时候,传统的方法是每个byte进行比较。以strcpy为例,当一个字符串比较长,我们用32(或者64位)的字长进行copy的话,一次拷贝会拷贝4个byte,能节省很多时间(忽略内存对齐等情况)。 但是,使用32位的字长进行拷贝一个难点就是判断字符串的结尾,因为字符串长度不一定是4的整数倍,每次从内存中取4个byte,我们需要判断这4个byte中是否有某个byte是0,从而判断字符串是否结束。

IT 编程语言/ 2012-10-14 23:20:20 / 累计浏览 5,023

do{...}while(0)的意义和用法

linux内核和其他一些开源的代码中,经常会遇到这样的代码: do{ ... }while(0) 这样的代码一看就不是一个循环,do..while表面上在这里一点意义都没有,那么为什么要这么用呢?

IT 网络系统/ 2012-10-14 22:35:53 / 累计浏览 4,889

Mail的一些基本概念总结

SMTP称为简单Mail传输协议(Simple Mail Transfer Protocal),目标是向用户提供高效、可靠的邮件传输。SMTP的一个重要特点是它能够在传送中接力传送邮件,即邮件可以通过不同网络上的主机接力式传送。工作在两种情况下:一是电子邮件从客户机传输到服务器;二是从某一个服务器传输到另一个服务器。

IT 信息和交互/ 2012-10-14 22:35:25 / 累计浏览 2,365

基于有限状态机的交互组件设计与实现

有限状态机(FSM)是设计和实现事件驱动程序内复杂行为组织原则的有力工具。 早在2007年,IBM的工程师就提出在在JAVASCRIPT中使用有限状态机来实现组件的方法,现在结合KISSY等现代JS库和框架提供的强大的自定义事件的功能,我们可以利用有限状态机设计出代码层次清晰,结构优雅的前端交互组件。 今天,我们会通过设计并实现一个下拉选择(模拟select)组件来一步步说明如何利用FSM和KISSY来设计和实现一个有复杂行为的交互组件。

IT 系统架构/ 2012-10-14 22:28:41 / 累计浏览 11,984

一种高效无锁内存队列的实现

Disruptor是LMAX公司开源的一个高效的内存无锁队列。这两天看了一下相关的设计文档和博客,下面尝试进行一下总结。 第一部分。引子谈到并发程序设计,有几个概念是避免不了的。 1.锁:锁是用来做并发最简单的方式,当然其代价也是最高的。内核态的锁的时候需要操作系统进行一次上下文切换,等待锁的线程会被挂起直至锁释放。在上下文切换的时候,cpu之前缓存的指令和数据都将失效,对性能有很大的损失。用户态的锁虽然避免了这些问题,但是其实它们只是在没有真实的竞争时才有效。下面是一个计数实验中不加锁、使用锁、使用CAS及定义volatile变量之间的性能对比。 2. CAS: CAS的涵义不多介绍了。使用CAS时不像上锁那样需要一次上下文切换,但是也需要处理器锁住它的指令流水线来保证原子性,并且还要加上Memory Barrier来保证其结果可见。

IT 信息和交互/ 2012-10-14 22:27:00 / 累计浏览 4,151

响应式Web设计

在设计中经常遇到这几个问题: 1.想要网站兼容手机、平板电脑、pc,就得为不同的设备定制不同的版本。 2.想要网站的某些页面在宽屏显示器下一行显示更多的内容,又得为宽屏定制一个版本。 3.很多人并不是在全屏的情况下浏览我们的页面,如果让页面随着浏览器宽度改变而相应的调整会不会比较好? 有没有办法能有效解决这些问题呢? 响应式Web设计(Responsive Web design)的理念是页面的设计与开发应当根据设备环境(屏幕尺寸、屏幕定向、系统平台等)以及用户行为(改变窗口大小等)进行相应的响应和调整。具体的实践方式由多方面组成,包括弹性网格和布局、图片、CSS media query的使用等。无论用户正在使用pc、平板电脑,或者手机,无论是全屏显示还是非全屏的情况,无论屏幕是横向还是竖向,页面都应该能够自动切换分辨率、图片尺寸及相关脚本功能等,以适应不同设备。  

IT 奋斗/ 2012-10-14 22:23:50 / 累计浏览 3,322

跨领域人才

我们也经常碰到技术人员对某一领域的执着。如果这个领域具有可挖掘空间,这当然是一个不错的选择。但是工程领域,到达一个阶段之后,很难再得到一个量级的突破,这时候即使重新学习一种全新领域,未必不是“越狱”后的一个全新开始。即使是具有深度的领域,长时间自我封闭在一个领域,外延也会愈走愈窄。

IT MySQL/ 2012-10-14 22:20:44 / 累计浏览 6,136

MySQL 5.6 测试之 Replication(主从复制)

MySQL 5.6测试之Replication 一、简述 MySQL 5.6版本相比以前新增了很多令人激动的特性,简要介绍见:转:MySQL 5.6新特性。性能方面已经做过测试了,详细请见:MySQL 5.6 vs MariaDB 5.5 vs Percona(5.5 & 5.6) 之TPCC性能测试。接下来继续测试其Replication(主从复制)功能,看看是否依旧能让人激动。_mode

IT MySQL/ 2012-10-14 22:20:42 / 累计浏览 7,607

MySQL优化 之 Discuz论坛MySQL通用优化

今日帮朋友优化号称日均数百万PV,数百万UV的论坛,后台DB采用R710(16G Ram,PERC 6/i 256MB BBU,4块 15K RPM SAS盘做raid 1+0,ext3文件系统,E5620 * 2),这个配置看似也不错了,不过压力仍然较大,大量的请求处于:sending data和statistics状态。经过分析,确认瓶颈主要在......