2012年6月10日星期日

SPDY 是什么?如何部署 SPDY?

  SPDY 是 Google 开发的基于传输控制协议 (TCP) 的应用层协议 ,开发组正在推动 SPDY 成为正式标准(现为互联网草案)。SPDY 协议旨在通过压缩、多路复用和优先级来缩短网页的加载时间和提高安全性。(SPDY 是 Speedy 的昵音,意思是更快)

  SPDY 与 HTTP 的关系

  SPDY 协议只是在性能上对 HTTP 做了很大的优化,其核心思想是尽量减少连接个数,而对于 HTTP 的语义并没有做太大的修改。具体来说是,SPDY 使用了 HTTP 的方法和页眉,但是删除了一些头并重写了 HTTP 中管理连接和数据转移格式的部分,所以基本上是兼容 HTTP 的。

  Google 在 SPDY 白皮书里表示要向协议栈下面渗透并替换掉传输层协议(TCP),但是因为这样无论是部署起来还是实现起来暂时相当困难,因此 Google 准备先对应用层协议 HTTP 进行改进,先在 SSL 之上增加一个会话层来实现 SPDY 协议,而 HTTP 的 GET 和 POST 消息格式保持不变,即现有的所有服务端应用均不用做任何修改。

  因此在目前,SPDY 的目的是为了加强 HTTP,是对 HTTP 一个更好的实现和支持。至于未来 SPDY 得到广泛应用后会不会演一出狸猫换太子,替换掉 HTTP 并彻底颠覆整个 Internet 就是 Google 的事情了。

  为什么要重新建立一个 SPDY ?

  距离万维网之父蒂姆·伯纳斯-李发明并推动 HTTP 成为如今互联网最流行的协议已经过去十几年了(现用 HTTP 1.1 规范也停滞了 13 年了),随着现在 WEB 技术的飞速发展尤其是 HTML5 的不断演进,包括 WebSockets 协议的出现以及当前网络环境的改变、传输内容的变化,当初的 HTTP 规范已经逐渐无法满足人们的需要了,HTTP 需要进一步发展,因此 HTTPbis 工作组已经被组建并被授权考虑 HTTP 2.0 ,希望能解决掉目前 HTTP 所带来的诸多限制。而 SPDY 正是 Google 在 HTTP 即将从 1.1 跨越到 2.0 之际推出的试图成为下一代互联网通信的协议,长期以来一直被认为是 HTTP 2.0 唯一可行选择。

  HTTP 协议的不足

  1. 单路连接 请求低效

  HTTP 协议的最大弊端就是每个 TCP 连接只能对应一个 HTTP 请求,即每个 HTTP 连接只请求一个资源,浏览器只能通过建立多个连接来解决。此外在 HTTP 中对请求是严格的先入先出(FIFO)进行的,如果中间某个请求处理时间较长会阻塞后面的请求。

  (注:虽然 HTTP pipelining 对连接请求做了改善,但复杂度增加很大,并未普及)

  2. HTTP 只允许由客户端主动发起请求

  服务端只能等待客户端发送一个请求,在可以满足预加载的现状是一种桎梏。

  3. HTTP 头冗余

  HTTP 头在同一个会话里是反复发送的,中间的冗余信息,比如 User-Agent、Host 等不需要重复发送的信息也在反复发送,浪费带宽和资源。

  SPDY 协议的优点

  1. 多路复用 请求优化

  SPDY 规定在一个 SPDY 连接内可以有无限个并行请求,即允许多个并发 HTTP 请求共用一个 TCP会话。这样 SPDY 通过复用在单个 TCP 连接上的多次请求,而非为每个请求单独开放连接,这样只需建立一个 TCP 连接就可以传送网页上所有资源,不仅可以减少消息交互往返的时间还可以避免创建新连接造成的延迟,使得 TCP 的效率更高。

  此外,SPDY 的多路复用可以设置优先级,而不像传统 HTTP 那样严格按照先入先出一个一个处理请求,它会选择性的先传输 CSS 这样更重要的资源,然后再传输网站图标之类不太重要的资源,可以避免让非关键资源占用网络通道的问题,提升 TCP 的性能。

  2. 支持服务器推送技术

  服务器可以主动向客户端发起通信向客户端推送数据,这种预加载可以使用户一直保持一个快速的网络。

  3. SPDY 压缩了 HTTP 头

  舍弃掉了不必要的头信息,经过压缩之后可以节省多余数据传输所带来的等待时间和带宽。

  4. 强制使用 SSL 传输协议

  Google 认为 Web 未来的发展方向必定是安全的网络连接,全部请求 SSL 加密后,信息传输更加安全。

  SPDY 协议的意义

  按照 Google 的说法,SPDY 被创造出来的唯一目的就是让 Web 更快(strive to make the whole web fast),其名字 SPDY(Speedy) 也似乎在暗示着这一点。那么 SPDY 的意义又在哪里呢?

  1. 普通用户:

  对于使用者来说,隐藏在浏览器下面的 SPDY 相比 HTTP 没有任何区别,但是我们可以感觉到 Google 服务在 Chrome 下异常的快,这就是 SPDY 的功劳了。此外网站信息传输加密后不用担心信息被截取等,大大增加了安全性和保密性。

  2. 前端人员:

  对于前端工程师们来说,提升页面效率是一件很重要的事情,目前大多采用像 CSS Sprites 等方法来优化网站,对于因为页面加载时每张图片、icon 都请求一个连接甚至采用在不同页面引用不同图片来降低一个页面内图片的请求数量。而现在有了 SPDY 的请求优化可以将请求顺序进行重排,这样可以在很大程度上缓解页面加载时图片请求带来的影响。例如像极客公园的报名页面,如果报名用户过多,例如极客公园2012年创新大会或极客公园第 27 期长城会,可以很明显的感觉出头像的请求会拖累整体页面加载变慢甚至变卡,相信对于这点,经常上淘宝或刷微博的会深有体会,一旦网速稍微慢点就会出现页面加载异常,还有像苹果 App Store(除去服务器因为地区的延迟),豌豆荚这类应用分发平台上应用图标刷新缓慢等,如下面这个视频所示。

  3. 运维人员:

  SPDY 在降低连接数目的同时,还使得服务器上每个客户端占用的资源也减少,从而可以释放出更多内存和 CPU 。此外 SPDY 综合起来可以将浏览速度提升一倍,页面加载延迟方面的改进达 64% 。

  众家支持的 SPDY 协议

  如果你在使用 Chrome 浏览器,同时使用像 Gmail 等 Google 的网络服务的话,其实你已经不再是通过 HTTP 访问这些服务了。在浏览器打开 chrome://net-internals/#spdy 就会发现你已经在使用 SPDY 协议了。(除了包括 Google 自家的 Gmail、Google Plus 等 Google 系服务外,其他公共站点例如 Twitter 和 Webtide 也已经支持该协议。在国内,基于 WebKit 的豌豆荚 2.0 也曾表示将引进Chrome的SPDY技术来进一步提升速度。

  SPDY 的实现需要浏览器客户端和 Web 服务器同时支持。在客户端浏览器这快 Google自家的 Chrome 和Chromium 全系列不用说,都已经支持SPDY; Mozilla 家的 Firefox 自 Firefox 13 也默认开启对 SPDY 的支持。而亚马逊家的 Silk 利用 SPDY 的深度其实不比 Google 自家的 Chrome 和 Firefox 差。

  在Web 服务器方面包括最流行和最广泛的 Apache 在内,Netty、Jeety、Varnish、Erlang 和 Hightide 应用服务器以及面向 node.js 的服务器也都已经宣布支持 SPDY。( Nginx 也表示将支持 SPDY)

  如何部署 SPDY?

  近日 Google 正式发布了适用于最流行 Web 服务器 Apache 的插件 mod_spdy,将其下载安装后你的 Apache 服务器就能使用 SPDY 协议与兼容 SPDY 协议的浏览器如 Chrome、FireFox 等进行通信。像之前所说的那样,SPDY 是运行在 HTTPS 上,非 HTTPS 流量并不会受到 mod_spdy 影响。

  SPDY 部署要求:

  1. Apache 2.2 (≥2.2.4)

  2. mod_ssl 模块开启

  SPDY 部署步骤:

  1. 下载 mod_spdy 模块

  到下载页面下载对应系统的安装包

  2. 安装 mod_spdy 模块

  在系统终端运行下面命令行

  dpkg -i mod-spdy-*.deb
apt-get -f install

  -系统为 Debian/Ubuntu

  ------------------------------------------------------------

  yum install at (if you do not already have ''at'' installed)
rpm -U mod-spdy-*.rpm

  -系统为 CentOS/Fedora

  3. 重启服务器(Apache)

  sudo /etc/init.d/apache2 restart (Debian/Ubuntu)

  4. 确定开启与否

  打开 Chrome 浏览器,输入并前往 chrome://net-internals/#spdy 页面,查看主机名称是否出现在标识栏中。如果出现说明已经部署完毕,如果没有出现去服务器错误日志(error.log)里查询。

  未来的web基础?

  在最新的协议文档里 Google 重新将 SPDY 分为了两层,其中一层被描述为 HTTP-like,大有取代 HTTP 的意图(Google 最近的一篇文章已经直呼 SPDY 为“a replacement for HTTP”)。同时 HTTP 2.0 标准制定工作组(HTTPbis)也表示,SPDY 很有希望接替当前的 HTTP 传输实现

  考虑到 Chrome 和安卓的份额以及标准的推动,相信 SPDY 会有一个好前景。因此选择此刻支持 SPDY 也是明智的选择。

  来源:极客公园投稿,     原文链接

暴雪成功的秘密

  “美国进口礼盒装大菠萝3个,精装典藏你懂的!”淘宝上,标价2488元的一个菠萝图片旁边这样写道。5月,淘宝页面上突然多了一溜奇怪的菠萝图片,配上一句心照不宣的神秘暗语。大菠萝3,是电子游戏开发商暴雪娱乐公司5月15日新发售的RPG游戏《暗黑破坏神3》(Diablo III)的谐音。

  在《暗黑3》上市前就有分析师就预测,这游戏在今年年内将售出350万份。

  年内?你太天真了少年。《暗黑3》发售首日销量就突破了350万份,首周销量超过630万,成为PC游戏史上首日和首周销量最高的游戏。这些统计里,还没包括参与暴雪另一促销活动中中奖的120多万名玩家。

  过去20年里,全球游戏业经历了从最初的任天堂红白机的风靡到Westwood、3DO等单机游戏工作室辉煌一时又逐渐没落,再到网络游戏时代EA、维旺迪等游戏巨头们逐鹿江湖。风云变幻中无数曾经伟大的工作室和他们的经典作品都成为了历史。唯有暴雪公司,在20年里从最初只有3个人的工作室成长为全球游戏业的巨人,依靠《魔兽争霸》、《暗黑破坏神》、《星际争霸》、《魔兽世界》等一系列经典作品,在全球游戏玩家当中赢得“暴雪出品,必属精品”的口碑,把自己推上了游戏帝国的地位。

  在中国,就连小米科技CEO雷军也是资深粉丝,他在5月11日北京的全球移动互联网大会现场,唏嘘自己为暗黑3苦苦等了12年。他还在微博晒出自己的游戏账号,请求高玩们包养。

  12年是从2000年暴雪发行《暗黑破坏神2》起算的。2007年5月,有人在国内某游戏论坛上发了个帖子名叫“等DIABLO3的兄弟们,进来抱着哭一下”,两天之内,该帖被浏览了近4000次,回帖近200条:“掩面泪奔而过”、“我也来哭一下,顺便帮我朋友哭一下”……这些玩家们泪奔的是《暗黑3》的一再跳票,即产品发布不断推迟。

  一个暗黑3何以值得全球玩家苦盼12年?

  全球游戏玩家们盛传的一句话是:游戏界最大的谎言,就是暴雪不跳票。从《星际争霸》开始,暴雪几乎每款游戏都让玩家一等再等,有的游戏甚至跳票多达3、4次。跳票史见下表。

  在“最大谎言”那句话的背后,却是全球玩家对暴雪游戏一再跳票的无限宽容和期待。最大的原因正是,暴雪把“暴雪出品,必属精品”这句口号深深植入了全球玩家的心。

暴雪成功的秘密

  比起跳票史,虎嗅更推荐读者关注暴雪的联合创始人、CEO Mike Morhaime的这两句话:

  “五年、十年以后没有人记得你的游戏跳票,但是所有人都会记得你曾经拥有一款伟大的游戏。”

  “我们知道我们只有一次机会获得良好的第一印象,通过第一眼的经验来得到玩家远比拉回头客要简单许多。”

  这是暴雪成功之道的第1条:

  1 把用时间换质量当成信条,并高调地把信条张扬出去

  暴雪跳票史:

  

1996年11月30日
暗黑破坏神跳票, 由此拉开暴雪游戏跳票的序幕
1999年12月
<暗黑破坏神2>被延迟至2000年年初上市
2003年12月23日
<魔兽世界>在韩国的内部测试延期到2004年初
2004年10月15日
<魔兽世界>在北美地区发行日期被推迟到11月23日发布
2006年8月28日
<魔兽世界>1.12新版本的更新时间被推迟到9月19日
2006年10月24日
<魔兽世界:燃烧的远征>测试延期到2007年1月
2007年6月6日
<魔兽世界:燃烧的远征>中文版延迟到7月
2007年12月24日
<魔兽争霸3:冰封王座>1.22版本补丁发布时间推迟到2008年1月底
2008年1月31日
<魔兽争霸3:冰封王座>1.22版本补丁再度被推迟
2010年3月
<星际争霸2>测试版发布,比原定的2009年秋天晚了半年

  2 对产品体验的狂热偏执

  1) 先是超级玩家,才能是员工

  在全世界游戏业,暴雪的人才策略算最另类:所有应聘者必须是超级游戏玩家。在暴雪创始人眼里,只有对游戏热爱到痴迷地步的人,才会全身心地创造一个伟大的游戏世界。而这是只为薪水而工作的人不可能达到的。

  《星际争霸》战役编辑器的设计师Jeff Strain更是把电脑带进了妻子的产房,直到她麻醉失效后苏醒,Jeff Strain才把手从键盘上拿开。

  2) 不满意,就回炉或消灭

  只要对产品有一丝不满意,暴雪都会毫不犹豫地回炉再造,甚至直接扔进垃圾筐。

  暴雪原定于1998年上市的《魔兽探险》就因为不够精品而被永远束之高阁。尽管这款游戏在当时受到了媒体和玩家的热捧。但经过评估后,暴雪内部认为它上市后难以达到百万销量,于是果断将其雪藏.2001年,暴雪还透露过正在开发动作类冒险游戏《星际争霸:幽灵》的消息,但已经投入了5年开发成本之后,2006年,由于游戏的品质始终没能达到预期目标,暴雪宣布这个游戏的开发计划被“无限期搁置”。

  暴雪这种粗暴的挑剔风格是在1997年形成的。1996年,暴雪在美国E3电子娱乐大展上同时发布了《暗黑破坏神》和《星际争霸》两款游戏。但在展会上《暗黑》大受热捧,而《星际》受到冷遇。1997年初,《暗黑》上市后短短18天销量突破了100万套。这部作品让暴雪明白了优秀与伟大之间的区别。暴雪选择把《星际争霸》回炉再造,只保留了之前种族的设定,其余的设计被全部抛弃。

  1998年3月,面貌一新的《星际争霸》出现在市场上时,在发行当月就立刻登上销售排行榜的首位,不仅继续着暴雪产品销量过百万的骄人业绩,而且仅仅在韩国就卖出了100万份拷贝。

  3 游戏重视文化延续性

  除去早期,暴雪在20年里主要推出三个系列的9个游戏。而每个系列的世界观设定都是各自的关联和传承。《商业价值》举例说,网游《魔兽世界》也延续了单机游戏《魔兽争霸》的艾泽拉斯大陆的奇幻背景,这就非常容易黏住老玩家。同时,暴雪又通过不断推出新的资料片来扩展每个系列游戏的剧情和添加任务,给玩家提供新鲜感,减缓新游戏跳票期间的玩家焦躁。

  《魔兽世界》面世8年后,依然是全球最有影响的网络游戏,颠覆了网游短则数月多则两年的生命周期魔咒,已经为暴雪贡献了超过10亿美元 的营收和全球上千万的注册用户。

  4 布局互联网游戏平台——战网

  暴雪绝对是单机游戏时代最具互联网精神的游戏公司。在1997年,互联网普及率还远远不如今天,玩家们还只满足于局域网联机对战的时代,暴雪就推出了在线服务器“战网”(battle.net)。1998年,战网受《星际争霸》风靡全球所带动,也成为黏合玩家的平台。仅仅两年后,战网的注册用户已经达到750万,占暴雪在全球1300万用户的57%,日均在线人数达到12万人。

  战网对暴雪的重要性怎样形容也不为过,最突出的亮点是:

  1) 它成为暴雪除了游戏产品之外的另一个更强大的黏合平台,用户可以在线上进行比赛、排名和多人对战;

  2) 反盗版。战网虽然免费,但玩家们必须拥有正版的暴雪游戏的CD-KEY,才能进入战网。2010年推出的《星际2》中,暴雪取消了局域网联机功能,要求游戏中的所有内容都需要在战网中进行,玩家必须购买CD-key在战网上激活才能玩游戏。到了《暗黑3》,玩家不但必须要有战网通行证,游戏过程中还必须实时连接暴雪的服务器,不支持局域网,不支持对战平台。

  当战网平台足够大之后,暴雪就可以绕过与之合作的运营商,直接参与利益分配,暴雪也将有机会由从前单纯的游戏研发者转变为一个庞大的游戏娱乐互动平台。

  5 在创业初期有一个优秀对手

  暴雪的创业初期遇到了一个好对手,Westwood。暴雪的成名作《魔兽争霸》就出于对Westwood的游戏《沙丘II》的模仿和改良。暴雪一战成名后,Westwood仍在不断推出《命令与征服》、《红色警报》等出色作品,刺激着暴雪追求更极致的游戏创意和体验。

  6 保持公司独立性

  在成为维旺迪旗下的游戏公司时,暴雪要求维旺迪签署协议,维旺迪不能干涉暴雪出品的时间和进度。

  2007年12月,维旺迪收购游戏发行商动视(Activision),并成立了动视暴雪,暴雪娱乐成为动视暴雪旗下子公司。此次收购之后,动视暴雪借《魔兽世界》广泛的用户群体,一跃超过EA,成为世界最大的游戏发行商。

  但单机游戏网站多玩认为,合并之后,暴雪依然得以保持自己的独立:一,动视暴雪从来没有以动视暴雪身份出现在E3等国际大展(除科隆游戏展外)。二,暴雪嘉年华在动视暴雪合并后一直没有变动,嘉年华基本上是暴雪天下,从来没有动视暴雪的字样。三,无论是暴雪还是动视基本上出款任何游戏都是以各自商标为主。四,自从合并以后动视与暴雪高层没有一起在公开场合出现。以至于另一家游戏巨头EA的公关副总裁jeff brown曾经嘲讽动视暴雪的CEO说,公司的主要支撑之一,就是魔兽世界这个和他毫无关系的美妙网络世界。

  前文已经说到,暴雪是单机游戏时代最早具有互联网精神的公司,还可以大胆断言的是,暴雪可能是最早具有网络社交意识的公司!在暴雪推出战网时,规划的就是一个意义非凡的在线游戏平台:它将成为暴雪旗下所有网络游戏的基地,还会加入社交网站的功能、跨越游戏的沟通、统一的登录和账户管理等。

  2010年5月,暴雪宣布将在战网中整合社交网络Facebook,“整合的第一步将是使《星际争霸2:自由之翼》玩家能快速将Facebook好友中的暴雪游戏玩家加为战网好友,方便相互沟通。”很显然,暴雪希望用户在战网上玩游戏,甚至购买游戏,而战网本身将有希望成为暴雪未来一个大型的游戏社交社区。

  《暗黑3》推出后,暴雪计划在游戏里内置“现金拍卖行” ,允许玩家们用现金拍卖其它玩家出售的游戏装备,暴雪会收取一定比例的手续费。把真实货币跟虚拟交易打通,这对暴雪来说,将成为又一个战网级别的深远变革。

  如你所预期,现金拍卖行也跳票了。20年之后,游戏帝国仍不断以时间为代价进行创新尝试。如果,暴雪的野心不止于游戏呢?如果战网不再仅仅是个游戏对战平台,而是把基于游戏的社交常态化;如果现金拍卖行继续拓展虚拟装备之外的其它交易物,Facebook、亚马逊会为之颤抖吗?

  来源:虎嗅网投稿,原文链接

2012年6月8日星期五

论互联网手机的底层风险

  近期,百度、盛大、360、阿里等厂商纷纷出台千元左右互联网手机,标志着互联网厂商向移动互联网发起猛烈攻势,以实现移动入口的抢滩登陆。无论产品实现形式是自家生产,还是与硬件终端厂商合作,互联网大佬们都在强调不会通过硬件盈利,要走互联网盈利的道路。而李彦宏近日说出的有用户不代表就有商业模式的话其实点明了其中的风险和未知性

  互联网大佬们想通过移动互联网盈利究竟如何实现,首先就要和最底层的系统发生关联。

  如下图所示,互联网大佬进入智能手机的系统有以下两个路径:

  1、发布自己的操作系统

  2、进行应用程序的植入

论互联网手机的底层风险

  这是实现用户接触互联网大佬提供服务的物理实现基础。然而,在这样的基础上,互联网大佬也需要解决一个由来已久的问题:BOOTLOADER.手机的BOOTLOADER,及系统启动加载器,会完成系统硬件的初始化程序,启动系统化进程,在这里的一个重要功能就是ROCOVERY(恢复功能),实现对手机ROM的重新写入、恢复初始化及备份还原等等。当BOOTLOADER处于未锁定状态,用户即可刷新对应系统的ROM,包括官方的和第三方的系统。

  对互联网大佬来说,第三方的系统会对其移动互联网生态带来很大的威胁。因为这意味着其内置的产品和服务可能会因第三方ROM代替,从而减少和用户的接触量,接触人群减少势必带来盈利能力的下滑。更有甚者,如果竞争对手的第三方ROM成为一款广受用户喜爱的产品,那么这对推广该产品的互联网厂商带来沉重的打击。例如,如果MIUI向360特供机华为闪耀提供对应版本的ROM,那么360的策略势必会受到打击,成为为其他人做嫁衣。

  所以问题的关键在于BOOTLOADER,这一特定组件的开放策略往往由硬件生产商决定。但是这一切可能会发生变化。HTC早前是不提供BOOTLOADER解锁的,但是在去年用户的大量反馈下,宣布将永远不在其产品中锁定BOOTLOADER,同时提供专属页面帮助BOOLOADER锁定的用户实现解锁操作。根据目前业界的大趋势,包括三星、索尼等厂商也宣布向用户开放BOOTLOADER.这些操作本身加大了本土硬件厂商实施锁定BOOTLOADER的策略压力,因为这一方面或许会带来消费者的微词,另一方面意味要在系统的持续性开发——系统升级上进行更多工作以满足用户要求产品随谷歌Android系统更新换代的需求。

  综上,互联网厂商除了面临上层移动互联网商业模式的挑战,在底层也面临着不可控的失败风险。互联网厂商的终端争夺战,可能会远远超出以终端销量定成败的局面。

  来源:申飞投稿

2012年6月7日星期四

Z-Blog分类标签全站静态化方案

  Z-Blog目前已经实现了首页和文章页的静态化,可以生成HTML文件,但是系统的分类页、标签Tags页、归档页和作者页都没有实现静态化,本文将讲述一个非常简单的方案,能够自动生成各个分类页、归档页和Tags的静态HTML页面,以便用户将网站迁移到Apache等不支持ASP的主机上。

  Z-Blog的分类页、标签Tags页、归档页和作者页都是调用catalog.asp这个文件,因此,修改这个文件,当用户调用该文件的时候,自动生成针对该页面的HTML文件。如果访客反复读取这个文件,那么在一定时间范围内,可以直接在文件开头使用静态文件,以达到节省系统资源的目的。

  具体的修改方法是,先在根下建立一个目录cat,然后使用编辑器打开Z-Blog根目录下的catalog.asp文件,在文件开头加入如下的代码:

Dim objFSO
Dim objFile
Dim strFileName
Dim strFileTime
Dim isBuildFile
if Request.QueryString("cate")<>"" then
 if Request.QueryString("page")<>""then
  strFileName = "cate" + "_" + Request.QueryString("cate") + "_" + Request.QueryString("page") +".html"
 else
  strFileName = "cate" + "_" + Request.QueryString("cate") + ".html"
 end if
elseif Request.QueryString("tags")<>"" then
 if Request.QueryString("page")<>""then
  strFileName = "tags" + "_" + Request.QueryString("tags") + "_" + Request.QueryString("page") +".html"
 else
  strFileName = "tags" + "_" + Request.QueryString("tags") + ".html"
 end if
elseif Request.QueryString("auth")<>"" then
 if Request.QueryString("page")<>""then
  strFileName = "auth" + "_" + Request.QueryString("auth") + "_" + Request.QueryString("page") +".html"
 else
  strFileName = "auth" + "_" + Request.QueryString("auth") + ".html"
 end if
elseif Request.QueryString("date")<>"" then
 if Request.QueryString("page")<>""then
  strFileName = "date" + "_" + Request.QueryString("date") + "_" + Request.QueryString("page") +".html"
 else
  strFileName = "date" + "_" + Request.QueryString("date") + ".html"
 end if
elseif Request.QueryString("page")<>"" then
 strFileName = "default" + "_" + Request.QueryString("page") +".html"
else
 strFileName = "default_1" + ".html"
end If
isBuildFile = False
Set objFSO = CreateObject("Scripting.FileSystemObject")
If objFSO.FileExists(Server.MapPath(strFileName)) Then
 Set objFile = objFSO.GetFile(Server.MapPath(strFileName))
 strFileTime = objFile.DateLastModified
 Set objFile = Nothing
 If datediff("h",strFileTime,Now()) > 12 Then
  isBuildFile = True
 Else
  Server.Transfer strFileName
  Response.End
 End If
Else
 isBuildFile = True
End If
Set objFSO = Nothing

  找到 Response.Write ArtList.html 一行,在其后面增加如下代码:

If isBuildFile Then
    ArtList.FileName=strFileName
    ArtList.Directory="cat"
   ArtList.Save
End if

  这样,系统就会自动声称全部动态页面的静态HTML文件,并且在1小时内不会重复生成,期间如果还有调用,则自动载入静态HTML文件,以节省系统资源。

  经过这番处理,Z-Blog的全部分类和Tags就都可以生成静态HTML页面了。

互联网社会化之趋势分析

  互联网的社会化释放了网民的创造力,生产出巨量的数据,facebook,新浪等平台完成了信息汇聚的阶段,如何高效的利用平台上的海量数据,将是互联网下一阶段发展的重点。我们将通过对关系链传播产品导入介绍,提供一个社会化的传播解决方案。

  产品模型

  我们将根据产品的实施步骤,分步介绍说明关系链传播模型。

  一、分类显示

  微博平台是个综合型的信息平台,如在上一篇关系链看到的图片,我们可以获取各类信息,但交杂在一起,虽然有序但混乱,我们现在需要将其简化,化繁为简。我们将微博平台上的信息分类显示,可以根据新闻、体育、视频、地点等分类,这个步骤简单易行,也是现在很多创业公司在做的事情(他们做的还复杂些,还加入推荐引擎的计算结果)。总之经过分类处理后,信息被整理的一目了然。

  二、通道引入

  我们知道关系链是信息传播通道,是微博平台脉络,平台靠关系链的运作产生大量的数据,并让数据具备有效的传播力。所以不仅仅是在内容上予以分类,同时也要引入网友的两个基本社会化行为,评论与转发。由网友自行决定该条信息是否值的评论,值的转发,由网友来主导信息的生成,主导信息的传播范围。至此我们看到的是一个微型化被重组织过微博平台,因为我们把微博的运行机制抽离出来,其运行结果跟母版肯定是类似的。一些网站也分类了也引入了评论和转发,但他们的信息仍然是由推荐引擎计算结果主导,信息的传播范围仍然由推荐引擎主导,网友的社会化行为只是点缀。这样的网站只能算是增强版的RSS订阅。这是很易混淆的,建议多理解关系链。

  三、标签体系

  经过上面两个步骤,我们搭建了关系链框架,现在要充实他们。关系链的第三个特征是,关系链上的网友有共性,具有一种或多种的共同点。那么我们就可以用标签来让他们建立联系,建立传播通道。我们以NBA作为内容分类的标签,那么订阅或查看该类内容的网友,都是对NBA感兴趣的,我们就可以通过标签NBA,将有此共同兴趣的网友聚在一起,形成话题聚焦的关系圈。他们可以相互分享沟通有关NBA的一切。对于网友来说,通过NBA标签,可以快速的找到志同道合的朋友,可以快速获取此类的相关信息,可以让自己的评论展示在这个平台上,让更多的人看到。标签还是灵活的,比如说出差到杭州,就可以订阅 @杭州+@酒店,那么就可以收到开有账户的酒店微博信息,与其进行线上沟通,如果订阅@地点,那么就成了LBS的信息平台,@折扣信息+@美食+@地点+@企业品牌+@公司小组…。通过标签的灵活组合,自动聚合具有共性的网友,自由配对,满足网友不同情况下的不同信息需求。通过标签体系,我们可以组建自己的“美丽说”。

  四、功能的完善

  这一点可以根据网民的需求,结合具体的行业特征进行完善,比如加入信息管理模块,云存储功能等等。

  经过上述几个步骤,我们以关系链传播通道为主体对微博的信息进行重组,净化信息传播通道,对于博主来说,其信息可以快速被潜在的受众接收,传播的目标会更明确,对于受众来说,通过通道可以快速得到相关联的信息,灵活的标签体系可以让受众根据自身的需求对信息进行个性化的组织。

  新浪的尝试

  这张图据说是新浪微博的新版手机客户端,微博本来就是靠关系链传播的,所以其对内容分类后,就是天然的通道分类,可以想象点击进入读书类目,就可以看到有关读书的丰富资讯,可以不用理会推荐引擎的计算结果。

  根据内容标签来组织信息,可以将在读书的,同一地点的,听音乐的网友分类聚合在一起,而摆脱了网友间口口相传的逐层传播的限制。

  不足的是,没有建立标签体系,就无法用标签来重构关系链传播通道,标签体系不仅仅是阅读的分类,还包括评论和转发的分类,标签体系的缺失,对关系链传播通道的传播效果大打折扣。

  顺便说下微信,微信基于LBS的沟通,其关系链通道是通过地理位置来联系的,这条信息通道匹配性很强,可以与任一其他兴趣通道结合,本地的阅读者,本地的音乐爱好者,本地的电台,有很好的扩展性,但关系链通道现有的发展水平还没有到大规模组合应用的阶段,所以LBS还属于小妾地位,还没到转正的时机,歪打正着,可有可无的LBS让微信不用在关系链通道上花费精力。在微博上主要通过文字来,瀑布流用图片,instagram用照片,他们要在关注关系链通道传播的内容同时,对沟通方式进行创新,微信只需将重点放在沟通方式的创新上,用语音、视频、文字等方式,所创造的沟通体验是他们无法比拟的。微信的沟通方式同样具有普适性,任何关系链传播通道中,网友间的沟通都需要微信式的沟通方式,微信可以嫁接到任一关系链上,或者说任一关系链都将逐步具备微信式的沟通方式。

  互联网的下一阶段就具备了两种发展的途径,首先,厘清关系链传播通道,新浪在通道上开发自有的即时沟通应用,另一途径是微信与各个关系链通道逐步整合,整合方式有LBS与关系链通道的组合运用或者微信作为功能模块嵌入关系链。新浪拥有平台海量数据优势,可以快速搭建多类别关系链通道,这是其他创业者无法比拟的数据优势,新建的关系链通道则需要重建数据,如美丽说,需要从无到有产生大量的数据,非一日之功,从这个角度来说,微信不是新浪一个层次上的对手。不过微信的即时沟通体验加上LBS同样可以搭建临时性的关系链通道,以满足用户情境式的信息需求,这样的应用情境同样非常广泛。微信和新浪两个平台的发展差异在半年后逐步显现吧,关系链通道的整理需要时间。

  我们架构了关系链通道,建立了信息传播的高速公路,随之而来的是如何对信息进行质量的筛选,让高质量的信息传播的更远更久,让同质化的垃圾信息的传播动力快速衰竭,在解决这个问题之前,开个小差。新浪凭借平台的内容优势毫无疑问在关系链的发展中有绝对的优势,我们要看的是这种优势能保持多久,有何种办法突破新浪的内容垄断。这是关系链之后的事情,远未发生,但这样的逻辑推演是一种乐趣。来看看后平台的竞争态势,打破新浪内容垄断的途径。

  来源:sbumblebee投稿,原文链接

2012年6月5日星期二

微博加速因果报应

  佛教讲因果循环、报应不爽,人们应“但行好事,莫问前程”,“人有善愿,天必佑之”。微博之前,现实中人们往往只能看到来世报、后世报,而不是现世报,所谓“杀人放火金腰带,修桥补路无尸骸。”

  【微博是业力媒介】

  佛教的业力指个人行为所引发的结果的集合,既是结果也是力量。业力驱动报应,是为业报,也叫做“果报”-因果报应。

  在微博等社会化媒体之前,人们行为的结果,往往只影响当事人,只被当事人周围的人所目睹耳闻。而传统媒体作为一种稀缺资源和渠道,往往只报道有“新闻价值”的事件,流行的说法是“狗咬人不是新闻,人咬狗才是新闻”。如果新闻媒体监督缺位,事件中受影响、受伤害的人往往只能忍声吞气,获利者或施害者飞扬跋扈、不可一世,不能被惩罚,不能被制约。这时,佛教主张的“因果循环、报应不爽”,只能作为弱势群体的一种心理安慰。

  微博改变一切!微博是业力媒介,微博让人人有了话语权,微博直接向全社会的分享和展示业力,即个人或组织的行为的结果,包括:

  1. 身业-身体行为结果,微博展示个体行为和他人行为的结果,比如《非你莫属》栏目中主持人、嘉宾、选手的行为,让大家印象深刻的是刘莉莉pk张绍刚、还有这次选手的晕倒;
  2. 口业-语言行为结果,个体直接表达,也回应他人言语,比如南航机长放言“跟央企玩,你玩不起”,引发轩然大波;
  3. 意业(念头)-身、口之业都随着念头而造,微博还让个体和组织在微博直接表达意愿,也回应他人意愿,比如周鸿�说要做手机。

微博加速因果报应
 

  微博全方位展现业力,引发围观、引发态度…...结果就是力量,更刺激愿力的表达。

  【微博是愿力媒介】

  之前我主张微博是情绪媒介,现在想来其实不精确,微博本质上是愿力媒介,即意愿之力的媒介,情绪只是一种低层次、反应式的愿力。

  1. 微博是个人意愿的表达媒介,人人表达情绪、意愿;
  2. 微博是群体意愿共鸣、聚合媒介,人以群分、汇合成部落,个体意愿汇合成愿力洪流,这种洪流曾经在钟如九事件、红十字“躺着中枪”、微博打拐…...等事件中充分展现力量;
  3. 意见领袖、媒体代言群体意愿,仿佛部落大祭司,如薛蛮子号召“随手拍解救被拐儿童”,这次李开复号召抵制《非你莫属》栏目,迄今已有23万多人响应;
  4. 不同部落的愿力在微博上激荡、碰撞,预演虚拟对抗,如善加利用,可降低现实冲突危害;
  5. 当然如果没有好的博弈机制,即矛盾化解机制,微博上不同部落的愿力冲突会极化、激化,比如“五毛”们与“西奴”们在微博上剑拔弩张,相互谩骂。

  【微博现世报】

  蒙牛只欠王小山一个交待?不!蒙牛欠公众一个交待,王小山只是公众愿力代言人,没有王小山、封了王小山,还会有张小山、李小山。

  微博加速因果报应,当下就呈现众人愿力,并可快速聚合众人愿力,这就是王小山的力量来源!蒙牛食品安全问题造下的业力,如不自己化解,王小山们就会一直是“麻烦制造者”,如鲠在喉…...

  【微博提前报】

  微博呈现愿力,加速因果报应。一年前,南航机长造下“跟央企玩,你玩不起”的口业,在微博招来“提前报”,提前的报应!他的这句话袒露他的心态,也代言了部分央企人的心态,微博上强烈的反弹,表达了公众的愿力,对这种心态形成制约,并导致对南航机长的惩罚,最后曾鸣不得不在微博道歉。

  【为钱代言?为善愿代言?!】

  王小山选中品牌代言人下手,其实在提醒明星们一个尖锐而现实的问题:微博时代,品牌代言人为何代言?!

  @黄晓明 “挺住体”代言凡客绝对值了!“挺住体”表达了凡客们(平凡的人们)自尊、自爱、奋斗上进、坚持、自我勉励的愿力。如果说最早韩寒代言,凡客还是借光,“挺住体”却是凡客重新造就黄晓明:凡客让黄晓明“挺住”、爷们了,与围脖们哥儿们了!

  愿力--意愿之力,当微博成为愿力媒介,愿力已经成为价值度量衡,从根本上金钱、资本也被愿力衡量、驱使。资本市场互联网概念股的卓越表现,已经颠覆市盈率的价值衡量标准,就因为人们相信互联网的美好未来,这是巨大的愿力洪流。

  好品牌是强大的造星机器,好品牌发现善愿、造善业;差品牌把明星当货郎使,让明星透支信任。为钱代言,如果品牌有恶业没有化解,这种恶的业力一定会影响代言人;为善愿代言,为造善业的品牌代言,即便无钱、少钱,最终一定是善有善报。明星与其算计多少钱转条微博,不如找个好品牌代言,嫁个“好人家”。记住:#挺住,意味着一切#

  【结语】

  以前人们只能用“举头三尺有神明”的宗教信仰作为自己言行的训诫,多少有些虚无缥缈。如今微博已改变一切,微博全方位呈现业力、愿力。不要以为对方是弱者,就可以狂言“你家无权无势无钱,就一个三无人员,你随时可以滚蛋! ”

  要切记“不要惹我,我有微博!”还要切记“不要惹他,他们有微博!”

  对于“强大的”组织、组织中的强势者,要切记民意汹汹,“麻烦制造者”的背后是汹涌的群体愿力,业力的果报只能化解,不可能封杀。也别存侥幸心理,以为群体是健忘的、注意力会被其他事件吸引、记忆会冲淡,比如《非你莫属》之前已受到批评而未悔改,这次就有李开复振臂一呼,23万人云集…...

  微博是“秒媒体”,微博加速因果报应,不会再“杀人放火金腰带,修桥补路无尸骸”,善有善报、恶有恶报,时候立刻就到!

  本文谨代表个人一点小小的善愿。

  来源: 郑治投稿,原文链接

2012年6月4日星期一

Windows 8传统桌面的Metro化

  对于微软来说,如何整合 Windows 8 的 Metro 界面和传统桌面风格是一个亟待解决的事情,从目前来说微软并没有将 Metro 界面剥离出作为一个单独 OS 的迹象,那么将 Windows 8 传统桌面软件的 Metro 化似乎成为唯一剩下的选择。

  Windows 8 最近几个月的日子并不是很好过,其试图整合笔记本和平板电脑体验的 Windows 传统界面与 Metro 界面并存方式让很多用户并不认可,这两天还被对手苹果的蒂姆·库克讽刺为像是在冰箱一侧附上烤面包机功能。确实,同样是融合,苹果是以传统桌面为主界面,把 Launchpad 作为一个应用,而微软是以 Metro 界面为主界面,把传统桌面作为一个应用。孰是孰非这里就不过多讨论了。

  Windows 8 现状

  Metro 和传统桌面割裂

  无论是今年 2 月份的消费者预览版(Consumer Preview),还是昨天刚刚发布的发布预览版(Release Preview)暂时都是半 Metro 半桌面,介于 Metro 和传统桌面之间。当鼠标移至屏幕最右下角或最右上角时显示的 Metro 化 Charm 菜单也显得极其突兀不和谐。

Windows 8传统桌面的Metro化

  Windows 8 传统桌面 Metro 化

  从去年 11 月份的开发者预览版到消费者预览版,再到现在的发布预览版,我们可以看到传统桌面的 UI 也在朝着 Metro 化的方向进化。

Windows 8传统桌面的Metro化

  此外,包括 Zune 、Office 2015、Visual Studio 2011 、Device Center 等在内的微软自家桌面软件也在逐渐 Metro 化,同时第三方的桌面软件也有在往 Metro 这个方向发展,如 GitHub for Windows 、Metrotwit 、 IDM。

 

  桌面软件的 Metro 化

  虽然对于 Windows 8 来说,用来支持平板体验的 Metro 界面是其最大的亮点和特性,但是对于微软来说,更多的用户还是停留在使用原始桌面上,那么如何使新的桌面软件的外观与 Metro 更加接近和统一便成为了接下来将要做的事情。目前我们可以从 Windows 8 系统的界面变化以及其自家和第三方的传统软件上总结出桌面软件的 Metro 化趋势。

  1. 平面一体化

Windows 8传统桌面的Metro化

  Metro UI 的特性之一就是平面化,给用户一种沉浸感,桌面软件的 Metro 话虽然不至于像 Metro 应用那样全屏化,但也在一直往全平面化的方向发展,包括界面扁平化、直角化和去边框化。此外,最近微软还宣布将去除 Aero Glass 透明毛玻璃特效、移除反光效果、缩减渐变和阴影效果(将在随后的 RTM 版本应用),整体的趋势是将令人分心的边框和功能栏全部融入主体中去,统一平面一体化,使产品更加整洁利落。通过下图 Visual Studio 的界面变动可以一览无余。

Windows 8传统桌面的Metro化

  2. 简约化

  在平面立体化的同时,微软也在一直倡导简约化,即将透明变成白色,用更多留白空间来增加界面的呼吸感,同时尽量减少的功能栏的数量,更加专注于内容。表现是,调整颜色配比,以统一的白色、灰白等浅色背景搭配黑色文本,看起来比之前的 Vista、Win 7 中的界面更加简单朴实。

Windows 8传统桌面的Metro化

  当然简约不等于简陋,精雕细琢的是简约,粗制滥造的是简陋,用心去做的Metro风格的应用看起来非常简约舒适自然,Metro 风格不是让程序员都跑来顶替设计师的,因此微软在简约化的同时,细节也在“多彩化”,这里的多彩是指部分小色块的多彩。

Windows 8传统桌面的Metro化

  例如 VS 2011 从 Beta版到后来的 RC 版,其使用状态栏的颜色快来增加视觉趣味和功能价值,减少单色调带来的压抑感和审美疲劳和视觉疲劳。下图是 IDE 调试编译状态下的变化。

Windows 8传统桌面的Metro化

  此外,MetroTwit 在更新的时候最顶部的状态栏也是一个彩色的色块滑动,Zune 顶部返回处的色块、以及系统本身和 VS 菜单栏上的色块都是,这种简约的多彩除了对质朴的简约进行补充外也满足了用户差异化需求,在最新的 Windows 8 发布预览版本中也比之前的版本增加了更多的颜色设置,以满足用户个性化需求。

Windows 8传统桌面的Metro化

  3. 轻快化

  在去除掉边框特效后,更加轻量的,没有过多干扰元素的软件启动和运行相信会比以往更加快速,在操作反应上也会比以往更加迅速、高效,虽然可能达不到 Metro 应用那样快速和流畅。

Windows 8传统桌面的Metro化

  4. 动态化

  本身更加适用于平板手触的 Metro 风格表现在传统桌面软件上会比以往有更加炫酷的动态感,相信用过 Zune 桌面应用的用户应该不会陌生那种类似 Windows Phone 的动画效果,这种“活”起来的桌面软件比起以往来能激发更多用户的情感。

Windows 8传统桌面的Metro化

  5. 格栅化

  Metro 化的软件更多的是依靠文字和色块来调节,出于“内容即界面”的自发性质的分隔使其更加简洁美观,新的布局中信息分类有着更强的对比度,同时更多的直角化也使得整体界面更加的栅格化,对于信息的排版越来越重要。

Windows 8传统桌面的Metro化

  Metro 化的核心其实就是“内容/信息中心化”,通过减少不必要的元素来突显本质。众所周知的,之前经常在产品上虎头蛇尾的微软近两年一直在大力推广 Metro,无论是 Zune、Xbox、Windows Phone 还是 Windows 8,可以说微软在 Metro 上这种品牌持续积累还会继续,出于风格的同统一的目的,今后我们还会在更多的微软传统桌面软件产品中看到Metro 化的影子,而一旦微软推广起来,相信第三方也会跟进,从已经开始涉足的 MetroTwit、GitHub for Windows 不难看出。

  来源:极客公园投稿,原文链接