• 博客园logo
  • 会员
  • 周边
  • 新闻
  • 博问
  • 闪存
  • 众包
  • 赞助商
  • Chat2DB
    • 搜索
      所有博客
    • 搜索
      当前博客
  • 写随笔 我的博客 短消息 简洁模式
    用户头像
    我的博客 我的园子 账号设置 会员中心 简洁模式 ... 退出登录
    注册 登录

zhaozongzhe

  • 博客园
  • 联系
  • 订阅
  • 管理

公告

2012年12月2日

关于BT协议在网游更新领域的不足

摘要: BitTorrent是一个成熟稳定快速的P2P资源共享系统。其协议是为大文件下载而设计,然而在网游更新领域,BT有它与生俱来的缺陷。BT的种子文件,是将多个文件首尾相连视为一个大的“流”文件,然后根据指定的块大小,将这个“流”文件划分为若干块,再对每块数据生成一个20字节的sha1,再将这些sha1数据保存到种子文件里面,之后BT下载时,按块下载,按块校验。而在游戏更新时,通常只有一部分文件或者某个文件的一部分被改变,这时应该仅仅下载并更新需要修改的数据块文件(因为互联网是最慢的环节)。但是如何计算出本次更新有哪些数据块需要下载?新生成的种子文件与旧的种子文件进行比较,无法计算出这些块数据!( 阅读全文

posted @ 2012-12-02 19:34 zhaozongzhe 阅读(295) 评论(0) 推荐(0)

node.js的单线程异步模式的在Windows下的IOCP实现

摘要: 先看看的node.js的比较有趣特征: (摘自http://baike.baidu.com/view/3974030.htm)“Node采用了一个称为“事件循环(event loop)”的架构,使得编写可扩展性高的服务器变得既容易又安全。提高服务器性能的技巧有多种多样。Node选择了一种既能提高性能,又能减低开发复杂度的架构。这是一个非常重要的特性。并发编程通常很复杂且布满地雷。Node绕过了这些,但仍提供很好的性能。Node采用一系列“非阻塞”库来支持事件循环的方式。本质上就是为文件系统、数据库之类的资源提供接口。向文件系统发送一个请求时,无需等待硬盘(寻址并检索文件),硬盘准备好的时候非阻 阅读全文

posted @ 2012-12-02 16:09 zhaozongzhe 阅读(1392) 评论(0) 推荐(0)

 
博客园  ©  2004-2026
浙公网安备 33010602011771号 浙ICP备2021040463号-3