• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Erlang low cost_clound_computing
 

Erlang low cost_clound_computing

on

  • 6,265 views

Erlang低成本云计算

Erlang低成本云计算

Statistics

Views

Total Views
6,265
Views on SlideShare
3,597
Embed Views
2,668

Actions

Likes
13
Downloads
162
Comments
0

12 Embeds 2,668

http://blog.yufeng.info 2634
http://xianguo.com 11
http://static.slidesharecdn.com 6
http://cache.baidu.com 4
http://reader.youdao.com 3
http://webcache.googleusercontent.com 3
http://cache.baiducontent.com 2
http://www.zhuaxia.com 1
http://zhuaxia.com 1
http://twitter.com 1
https://si0.twimg.com 1
http://127.0.0.1 1
More...

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Erlang low cost_clound_computing Erlang low cost_clound_computing Presentation Transcript

    • Erlang零成本实现云计算 余锋 (褚霸) 淘宝网技术专家 http://yufeng.info 中国软件技术大会 北京 2010
    • 议题 1. Erlang天生适合云计算 2 .Erlang并行计算的效率 3. Erlang云计算基础构件 4. Erlang集群管理和维护 5. 讨论
    • Erlang是什么?• 通用的语言和运行环境• 内置并发,集群,容错机制• 电信和互联网行业大规模部署应用• 经过时间验证的成熟商业系统
    • Erlang的历史• 很老的FP语言,始于80年代末• 爱立信投资10亿美金主导开发• EPL版权方式开源• 需要记住的几个年份 o 1987 The first experiments with Erlang. o 1993 Distribution is added to Erlang. o 2006 SMP support is added to Erlang.
    • 云计算定义云计算就是应用公共网络设施对逻辑的组建,像水和电一样融入大家的生活,为用户提供海量一站式的服务. -腾讯首席执行官马化腾Cloud = "CPU + Storage + Queues + Management" -The Amazon Web Services says essentially
    • Erlang的进程, 天上的云"Erlang was built from the ground up for concurrency. Not justin a single machine, but in clusters of machines. Lots ofmachines. Lost of machines running many processes. Soundslike a cloud, right?" -Colin Clark
    • 语言和虚拟机天生可伸缩 最COOL的语言特性: • 函数式语言,方便排错 • 轻量级进程 • 异步消息机制 • 软实时 • 代码热升级
    • 内置集群和分布的基础设施和库• 进程分布和名称同步管理• 进程和节点容错管理• rpc• gen_server• mnesia数据库
    • 稳定性In 1998, the Ericsson AXD301 switch wasannounced, containing over a million lines of Erlang, andreported to achieve a reliability of nine "9"s. -Joe Armstrong
    • Erlang零成本云计算适用的领域• 互联网应用服务器• 消息推送系统• 网关代理服务器• 软实时的服务• 集群管理
    • Erlang社区快速壮大, 见证云计算的增长
    • 小结Erlang天生适合特定领域 的云计算
    • 议题 1. Erlang天生适合云计算 2 .Erlang并行计算的效率 3. Erlang云计算基础构件 4. Erlang集群管理和维护 5. 讨论
    • Erlang语言运行和开发效率 摩托罗拉C/Erlang开发效率比较纯Erlang的运行效率大概是C的1/5, 编码效率是C的7倍,在脚本语言中属于中等水平.但是云计算不仅仅是纯计算,任务调度和集群管理是Erlang的强项,从而拉升系统的整体表现.第三方独立评测网站 The Computer Language Benchmarks Game
    • Erlang对SMP的支持从2006年发布的R11B开始.SMP开发人员的信条:"SMP should be transparent to programers in much the way aserlang distribution." -Ulf Wiger, Ericsson AB
    • Erlang进程调度及策略Full load or not 多个运行队列,动态迁移进程调度器看起来很像操作系统,实际上Erlang的第一个进程名字叫做otp_ring
    • Erlang调度器的伸缩性小消息,大计算原则
    • 架构设计方面的考虑• 不共享• 没有显式的同步• 并发导向的编程• 进程是低廉的,和现实世界对象1:1模型• 所有无依赖的任务,都抽象为进程并发执行• 终止的进程,一切都是垃圾,资源集中回收• 简洁为王
    • Erlang技术发展路线图虚拟机的运行期持续改进计划涵盖了对众核和NUMA体系结构的支持,保证了它在未来新的硬件体系结构下能持续获得更好的性能。
    • 小结 Erlang并行计算效率高
    • 议题 1. Erlang天生适合云计算 2 .Erlang并行计算的效率 3. Erlang云计算基础构件 4. Erlang集群管理和维护 5. 小结
    • 从Vmware收购谈起...Vmware 计算虚拟化Redis 存储RabbitMQ 消息交换系统我们可以清楚的看到云计算的三个基础设施!
    • 存储系统(noSQL)CouchDBRiakMembase
    • 消息交换系统RabbitMQEjabberd
    • WEB服务器MochiwebErlyweb
    • Map/Reduce系统Disco
    • 小结 Erlang基础设施齐全, 开发成本低
    • 议题 1. Erlang天生适合云计算 2 .Erlang并行计算的效率 3. Erlang云计算基础构件 4. Erlang集群管理和维护 5. 讨论
    • 集群特点及规模• 集群全连通或者分区连通• 访问授权: nothing or all策略• 节点规模可强力伸缩• 节点热插拔• 规模可达上千台 典型系统的集群进程组织图
    • 异构性• 不同的平台 o Windows(smp支持的有待改进) o *nix• 不同的体系结构 o 无需关心endianess问题 o 工业级协议的支持(asn.1, snmp等)
    • 强大的交互性, 与其他遗留系统整合• NIF• C节点(ei)• Java (jinterface)• Cobra• TCP/HTTP• 内置RPC
    • 部署• Standalone发布,无需单独安装Erlang运行期• 不停机维护• 在线升级,系统同时运行新旧代码• 发现问题在线降级• 工具化, 一切自动化
    • 代码安全• 代码可远程从网络加载, Diskless减少维护的成本• 代码可加密, 强加密防止反编译
    • 远程维护• 强大的内置shell• ssh/sftp• 可集中管理的日志系统
    • 监控功能• OS mon• SNMP• HTTP
    • 小结 Erlang集群管理成本低
    • 议题 1. Erlang天生适合云计算 2 .Erlang并行计算的效率 3. Erlang云计算基础构件 4. Erlang集群管理和维护 5. 讨论
    • 典型成功案例国内:• 校内网• 腾讯• 华为• 游戏公司 (如4399)• ...国外:• Facebook• Github• ...
    • 应用障碍• FP语言, 开发人员少, 招聘成本高• 独特的并发和错误处理哲学• 开发社区偏小,知识积累不够• 应用库偏少
    • 谢谢大家!Any questions?