Soumettre la recherche
Mettre en ligne
Inside Erlang Vm II
•
2 j'aime
•
744 vues
Feng Yu
Suivre
你所需要知道的Erlang VM细节
Lire moins
Lire la suite
Signaler
Partager
Signaler
Partager
1 sur 24
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
高级服务器设计和实现2
高级服务器设计和实现2
Feng Yu
Erlang分布式系统的的领域语言
Erlang分布式系统的的领域语言
Feng Yu
Erlang全接触
Erlang全接触
Feng Yu
Oprofile linux
Oprofile linux
Feng Yu
作業系統祕笈(張逸)
作業系統祕笈(張逸)
逸 張
儲存三二話
儲存三二話
JacksonWang59
Ch10 firewall(2013 ncu-nos_nm)
Ch10 firewall(2013 ncu-nos_nm)
Kir Chou
MySQL调优
MySQL调优
moonbingbing
Recommandé
高级服务器设计和实现2
高级服务器设计和实现2
Feng Yu
Erlang分布式系统的的领域语言
Erlang分布式系统的的领域语言
Feng Yu
Erlang全接触
Erlang全接触
Feng Yu
Oprofile linux
Oprofile linux
Feng Yu
作業系統祕笈(張逸)
作業系統祕笈(張逸)
逸 張
儲存三二話
儲存三二話
JacksonWang59
Ch10 firewall(2013 ncu-nos_nm)
Ch10 firewall(2013 ncu-nos_nm)
Kir Chou
MySQL调优
MySQL调优
moonbingbing
Erlang高级原理和应用
Erlang高级原理和应用
Feng Yu
Linux内存管理
Linux内存管理
zijia
Taobao图片存储与cdn系统到服务
Taobao图片存储与cdn系统到服务
Wensong Zhang
Erlang及其应用
Erlang及其应用
Feng Yu
Linux内存管理
Linux内存管理
zijia
LVS development and experience
LVS development and experience
Wensong Zhang
Git 实战
Git 实战
Edward Lee
DAE
DAE
Qiangning Hong
高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查
bluedavy lin
Python在豆瓣的应用
Python在豆瓣的应用
Qiangning Hong
Java常见问题排查
Java常见问题排查
bluedavy lin
Redis原生命令介绍
Redis原生命令介绍
Edward Lee
线上问题排查交流
线上问题排查交流
Edward Lee
分布式Key Value Store漫谈
分布式Key Value Store漫谈
Tim Y
Performance of fractal tree databases
Performance of fractal tree databases
Lixun Peng
TIP1 - Overview of C/C++ Debugging/Tracing/Profiling Tools
TIP1 - Overview of C/C++ Debugging/Tracing/Profiling Tools
Xiaozhe Wang
Linux Performance Analysis and Tools
Linux Performance Analysis and Tools
Brendan Gregg
Erlang Optimize
Erlang Optimize
Feng Yu
Erlang low cost_clound_computing
Erlang low cost_clound_computing
Feng Yu
0513 深入Windows Server 2008 系統核心
0513 深入Windows Server 2008 系統核心
Timothy Chen
基于Erlang的
基于Erlang的
hnoutman
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
George Ang
Contenu connexe
En vedette
Erlang高级原理和应用
Erlang高级原理和应用
Feng Yu
Linux内存管理
Linux内存管理
zijia
Taobao图片存储与cdn系统到服务
Taobao图片存储与cdn系统到服务
Wensong Zhang
Erlang及其应用
Erlang及其应用
Feng Yu
Linux内存管理
Linux内存管理
zijia
LVS development and experience
LVS development and experience
Wensong Zhang
Git 实战
Git 实战
Edward Lee
DAE
DAE
Qiangning Hong
高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查
bluedavy lin
Python在豆瓣的应用
Python在豆瓣的应用
Qiangning Hong
Java常见问题排查
Java常见问题排查
bluedavy lin
Redis原生命令介绍
Redis原生命令介绍
Edward Lee
线上问题排查交流
线上问题排查交流
Edward Lee
分布式Key Value Store漫谈
分布式Key Value Store漫谈
Tim Y
Performance of fractal tree databases
Performance of fractal tree databases
Lixun Peng
TIP1 - Overview of C/C++ Debugging/Tracing/Profiling Tools
TIP1 - Overview of C/C++ Debugging/Tracing/Profiling Tools
Xiaozhe Wang
Linux Performance Analysis and Tools
Linux Performance Analysis and Tools
Brendan Gregg
En vedette
(17)
Erlang高级原理和应用
Erlang高级原理和应用
Linux内存管理
Linux内存管理
Taobao图片存储与cdn系统到服务
Taobao图片存储与cdn系统到服务
Erlang及其应用
Erlang及其应用
Linux内存管理
Linux内存管理
LVS development and experience
LVS development and experience
Git 实战
Git 实战
DAE
DAE
高性能的Java代码编写及常见问题排查
高性能的Java代码编写及常见问题排查
Python在豆瓣的应用
Python在豆瓣的应用
Java常见问题排查
Java常见问题排查
Redis原生命令介绍
Redis原生命令介绍
线上问题排查交流
线上问题排查交流
分布式Key Value Store漫谈
分布式Key Value Store漫谈
Performance of fractal tree databases
Performance of fractal tree databases
TIP1 - Overview of C/C++ Debugging/Tracing/Profiling Tools
TIP1 - Overview of C/C++ Debugging/Tracing/Profiling Tools
Linux Performance Analysis and Tools
Linux Performance Analysis and Tools
Similaire à Inside Erlang Vm II
Erlang Optimize
Erlang Optimize
Feng Yu
Erlang low cost_clound_computing
Erlang low cost_clound_computing
Feng Yu
0513 深入Windows Server 2008 系統核心
0513 深入Windows Server 2008 系統核心
Timothy Chen
基于Erlang的
基于Erlang的
hnoutman
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
George Ang
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
areyouok
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
topgeek
Erlang开发及应用
Erlang开发及应用
litaocheng
智慧化的IT架構管理
智慧化的IT架構管理
Galaxy Software Services
Erlang游戏开发
Erlang游戏开发
litaocheng
9439AD2
9439AD2
maolins
Aix操作系统培训文档
Aix操作系统培训文档
lwj2012
Hp Storage
Hp Storage
amulopan
淘宝商品库MySQL优化实践
淘宝商品库MySQL优化实践
Feng Yu
White paper apc4.0
White paper apc4.0
ahnlabchina
Baidu Cloud Foundry
Baidu Cloud Foundry
James Watters
Erlang Emulator Implementation
Erlang Emulator Implementation
Feng Yu
华为 余洲 定制化服务器
华为 余洲 定制化服务器
colderboy17
华为 余洲 定制化服务器
华为 余洲 定制化服务器
guiyingshenxia
17 cpu01
17 cpu01
Huaijin Chen
Similaire à Inside Erlang Vm II
(20)
Erlang Optimize
Erlang Optimize
Erlang low cost_clound_computing
Erlang low cost_clound_computing
0513 深入Windows Server 2008 系統核心
0513 深入Windows Server 2008 系統核心
基于Erlang的
基于Erlang的
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
腾讯大讲堂45 解剖ttc
Erlang开发及应用
Erlang开发及应用
智慧化的IT架構管理
智慧化的IT架構管理
Erlang游戏开发
Erlang游戏开发
9439AD2
9439AD2
Aix操作系统培训文档
Aix操作系统培训文档
Hp Storage
Hp Storage
淘宝商品库MySQL优化实践
淘宝商品库MySQL优化实践
White paper apc4.0
White paper apc4.0
Baidu Cloud Foundry
Baidu Cloud Foundry
Erlang Emulator Implementation
Erlang Emulator Implementation
华为 余洲 定制化服务器
华为 余洲 定制化服务器
华为 余洲 定制化服务器
华为 余洲 定制化服务器
17 cpu01
17 cpu01
Plus de Feng Yu
Cpu高效编程技术
Cpu高效编程技术
Feng Yu
Erlang开发实践
Erlang开发实践
Feng Yu
mnesia脑裂问题综述
mnesia脑裂问题综述
Feng Yu
了解集群
了解集群
Feng Yu
低成本和高性能MySQL云架构探索
低成本和高性能MySQL云架构探索
Feng Yu
了解应用服务器
了解应用服务器
Feng Yu
我为什么要选择RabbitMQ
我为什么要选择RabbitMQ
Feng Yu
了解网络
了解网络
Feng Yu
利用新硬件提升数据库性能
利用新硬件提升数据库性能
Feng Yu
了解内存
了解内存
Feng Yu
MySQL和IO(上)
MySQL和IO(上)
Feng Yu
MySQL和IO(下)
MySQL和IO(下)
Feng Yu
了解Cpu
了解Cpu
Feng Yu
了解IO协议栈
了解IO协议栈
Feng Yu
了解IO设备
了解IO设备
Feng Yu
Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践
Feng Yu
SSD在淘宝的应用实践
SSD在淘宝的应用实践
Feng Yu
Rethink db&tokudb调研测试报告
Rethink db&tokudb调研测试报告
Feng Yu
高性能集群服务器(Erlang解决方案)
高性能集群服务器(Erlang解决方案)
Feng Yu
开源混合存储方案(Flashcache)
开源混合存储方案(Flashcache)
Feng Yu
Plus de Feng Yu
(20)
Cpu高效编程技术
Cpu高效编程技术
Erlang开发实践
Erlang开发实践
mnesia脑裂问题综述
mnesia脑裂问题综述
了解集群
了解集群
低成本和高性能MySQL云架构探索
低成本和高性能MySQL云架构探索
了解应用服务器
了解应用服务器
我为什么要选择RabbitMQ
我为什么要选择RabbitMQ
了解网络
了解网络
利用新硬件提升数据库性能
利用新硬件提升数据库性能
了解内存
了解内存
MySQL和IO(上)
MySQL和IO(上)
MySQL和IO(下)
MySQL和IO(下)
了解Cpu
了解Cpu
了解IO协议栈
了解IO协议栈
了解IO设备
了解IO设备
Flash存储设备在淘宝的应用实践
Flash存储设备在淘宝的应用实践
SSD在淘宝的应用实践
SSD在淘宝的应用实践
Rethink db&tokudb调研测试报告
Rethink db&tokudb调研测试报告
高性能集群服务器(Erlang解决方案)
高性能集群服务器(Erlang解决方案)
开源混合存储方案(Flashcache)
开源混合存储方案(Flashcache)
Inside Erlang Vm II
1.
Inside Erlang VM
Yu Feng mryufeng@gmail.com 2010/04/26 www.yufeng.info
2.
目的 通过对Erlang VM的内部部件的解刨, 能够对VM的运作原理有 个深度的把握和了解,
对系统的设计和实现有指导作用. 包含的内容: Erlang是什么 ERTS的优势 高级网络程序几个要素,ERTS如何实现 Erlang VM的特点 Erlang集群的设施 Erlang自省机制 代码的热升级 内置强大的数据库 稳定和移植性
3.
Erlang是什么?FP语言还是平台
4.
ERTS的核心优势 高性能 多核心SMP的支持
FP语言支持,自动GC 透明分布的支持 轻量进程的支持 完善的系统信息 商业产品上经过时间的验证成熟
5.
典型网络服务器几大要素 CPU IO 消息传递 定时器 业务抽象
6.
ERTS就是个网络程序的框架
谁说的?我说的
7.
CPU
多核心, 多调度器 running on full load or not 抢占式调度 调度器公平调度 保持少量的CPU忙 CPU亲缘性/进程绑定
8.
CPU续 每个核心一个调度器 每个调度器一个调度队列
9.
cpu续 CPU负载均衡和迁移
10.
IO 对外的通讯通道 POLL事件派遣机制
公平调度 透过系统管道连接异构系统
11.
IO续 Port负责对外的IO通信 Port都有个宿主进程,
用于协调通信
12.
消息传递 消息传递是唯一的进程间通信方式 消息高效传递 消息透明传递 消息的跟踪 高效的消息编解码
13.
消息续 进程级别的消息队列 选择性接收 超时
14.
定时器 支持time jump detection
and correction 定时器wheel实现, 支持百万级别的定时器 多样的使用支持 语法 驱动 BIF
15.
业务抽象 面向并发编程 轻量进程对应于现实世界的Actor Actor互动透过消息 模块提供基本的业务抽象
16.
典型的一个应用有不同的进程,充当不同的角色
17.
那么相比, Erlang VM的特点是
高效的数据结构 Atom, Binary, List, Tuple 4种基础数据 GC Mark and sweep, 隔代, 进程级别 软实时 资源自动回收 异步线程机制 驱动可用 高效的内存分配 CPU独立内存池 多种类型和类别的高速内存池, 可微调 高效的锁机制 高效的锁和检查机制
18.
Erlang集群的设施 Net_kernel, EPMD核心部件
可替换的传输介质 Inet_tcp_dist Inet_ssl_dist group_leader的设计和用途 截获输出 dist trap 透明的进行握手动作 Connect and handshake 名称登记和维护 Local/global 维护网络全联通 Net tick Nodeup nodedown
19.
图例分布消息通信
20.
Erlang自省机制 巨强大的Trace机制和工具支持 巨完善的系统信息,
可以不夸张的说可以获取任何信息 多样的监控 OS层面的cpu, memory, disk VM层面的CPU, memory,GC活动等 规范的信息获取, 每个模块都有个info函数 CrashDump 完善的获取手段 Eshell RPC SSH TOP/MAN等工具
21.
代码的热升级 支持代码从压缩包和网络读取 代码热升级 Beam文件
驱动层面(动态库)
22.
内置强大的数据库 ETS内存数据库 支持Hash和Tree模式
内置的虚拟机, 执行高效的Match操作 完善的接口 不参与GC DETS持久数据库 缺点只支持2G文件 Mnesia集群数据库 无中心节点的模式 读写都在内存
23.
稳定和移植性 稳定性
号称6个9 Link/Monitor机制 异常机制 监督树 目前平台移植性: Solaris Linux Freebsd Mac Windows
24.
谢谢大家 联系我: mryufeng@gmail.com
Télécharger maintenant