高级服务器设计与实现 - Erlang非业余研究.pptVIP

高级服务器设计与实现 - Erlang非业余研究.ppt

  1. 1、本文档共23页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
高级服务器设计与实现 - Erlang非业余研究

* 高级服务器设计和实现 ——技巧 余锋 (mryufeng@) 2008-06-08 实现语言的选择 C/C++ Erlang Lua C/C++的特点 优势 最大程度的挖掘硬件与系统的潜力 劣势 编码、维护困难 容易出问题 Erlang的特点 并发性 分布式 健壮性 软实时性 热代码升级 递增式代码装载 外部接口 Lua的特点 胶水语言 高性能 FP特性 体积小 非常灵活 采用成熟的网络框架 ACE libevent boost:asio 原则——简单就是美 除非必要不要用非常复杂的数据结构 数组 链表 解决大部分事情 数组方便利用硬件cache 不需要为未来的东西付出代价 错误处理 严谨的错误处理 处理信号 IO出错 异常 可恢复 明确的状态机和消息驱动 整个业务就是一个大的状态变迁图 一个物理链接对于一组状态机 状态的变化是消息引起的 消息是可以跟踪的 例:HTTP 插件设计 方便扩展业务 方便团队参与 接口要简单 可以考虑用脚本 定时器 大部分网络程序时间驱动的 高效的定时器管理 Wheel heap 协议设计 文本协议 二进制协议 xml RFC标准协议 协议解析 flex bison (lex yacc) ragel lemon 合适的库 手动解析 协议加密与压缩 lzo zlib xxtea rc4 aes des 考虑到cpu 和 内存的使用 配置文件 可以用Lua这样的脚本来描述 适应经常性的变化 Unix .conf文件 ini格式 稳定性 资源预分配 不可以发生泄漏,堆积 不可使用过多资源 避免频繁的分配/释放内存(内存碎片)

文档评论(0)

3471161553 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档