核心系统数据库组 褚霸 http://yufeng.info 2011-07-29 高性能集群服务器 Erlang解决方案 核心系统数据库组 褚霸 http://yufeng.info 2011-07-29.

Slides:



Advertisements
Similar presentations
Erlang 分布式系统的的领域语言 淘宝核心系统资深专家 余锋 淘宝褚霸
Advertisements

高级服务器设计和实现 1 —— 基础与进阶 余锋
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
初级会计电算化 (用友T3) 制作人:张爱红.
Erlang全接触 褚霸 2010/07/20.
华为- B 产品类型:CPE 建议零售价格:799元 上市时间: 2014年2月21日 目标人群:家庭用户,提供LTE上网的业务
余锋 (褚霸) 淘宝网技术专家 中国软件技术大会 北京 2010
淘宝核心系统资深专家 我为什么要选择RabbitMQ 淘宝核心系统资深专家
实用操作系统概念 张惠娟 副教授 1.
第8章 机床操作 主讲:臧红彬 博士.
2008年高考趋向与高考英语复习方法暨备考导航.
基于解释性语言的手机跨平台架构 Sloan Yi. Qt MTK.
兒 童 營 養 高雄長庚醫院營養治療科 營養師 洪凱殷.
企业级云计算 A Enterprise Cloud Serivce
Cell organized Distributed File Storage
Information & Security System in China China North Eastern Air Traffic Control Bureau (CAAC) Customer Background Subsidiary of General Administration of.
产品介绍:智联天地-N5 产品类型:数据终端 建议零售价1980元 上市时间:2016 年 6 月 目标人群:物流、快递及仓储等行业从业人员
Kvm异步缺页中断 浙江大学计算机体系结构实验室 徐浩.
LSF系统介绍 张焕杰 中国科学技术大学网络信息中心
余锋 2009/03/11 Erlang及其应用 余锋 2009/03/11
产品介绍 产品类型:数据终端 建议零售价2800元 上市时间:2017 年 2 月 目标人群:物流、快递及仓储等行业从业人员
MariaDB Spider分库分表引擎调研
嵌入式系统课程简介 宋健建 南京大学软件学院 2004/02/10.
核心系统数据库组 余锋 了解内存 核心系统数据库组 余锋
第二讲 搭建Java Web开发环境 主讲人:孙娜
Chinese Virtual Observatory
R in Enterprise Environment 企业环境中的R
从现在做起 彻底改变你自己 Sanjay Mirchandani EMC公司高级副总裁、首席信息官.
存储系统.
大学计算机基础 典型案例之一 构建FPT服务器.
管理信息结构SMI.
Jul 2014 HEAT部署Hadoop集群
Qt网络编程实战之HTTP服务器 安晓辉(foruok)
第11章:一些著名开源软件介绍 第12章:服务安装和配置 本章教学目标: 了解当前一些应用最广泛的开源软件项目 搭建一个网站服务器
大数据管理技术 --NoSQL数据库 HBase 陈 辉 大数据分析技术.
深圳市藏海科技有限公司—CH7852 建议零售价格:140元 上市时间:2017年 12 月 11 日
Erlang emulator 实现分析 2007/10.
淘宝核心系统资深专家 (v0.1) MySQL云平台和Erlang实现 淘宝核心系统资深专家 (v0.1)
《手把手教你学STM32》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司 淘宝店铺:
数据挖掘工具性能比较.
厂商—型号 海尔-PAD002 外观设计 建议零售价格:2999元 上市时间:2011年3月 目标人群:有移动互联需求的商务人士
实习前你需要知道的 PRESENTED BY Yisa.
三:基于Eclipse的集成开发环境搭建与使用
Unit 11.Operating System 11.1 What’s OS 11.2 Related Courses
程序设计工具实习 Software Program Tool
何勉 新浪微博: Scrum框架及其背后的原则 原始图片 何勉 新浪微博:
新一代安全网上银行 小组成员:杨志明 王晶 任毅 刘建中 关昊 刘超.
厂商—型号 荣耀-HiRouter-H1 外观设计 产品类型:无线路由器 建议零售价格:149元 上市时间:2017 年 5月
内容摘要 ■ 课程概述 ■ 教学安排 ■ 什么是操作系统? ■ 为什么学习操作系统? ■ 如何学习操作系统? ■ 操作系统实例
C语言程序设计 主讲教师:陆幼利.
微机系统的组成.
软件设计演进和系列训练营 实践 丁辉 Tel:
产品介绍 TOPOLF-T198 产品类型:4G MIFI 建议零售价格:699元 上市时间: 2015年1月 目标人群:差旅人士
Cassandra应用及高性能客户端 董亚军 来自Newegg-NESC.
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
信号量(Semaphore).
解决“最后1公里”问题.
JSP实用教程 清华大学出版社 第2章 JSP运行环境和开发环境 教学目标 教学重点 教学过程 2019年5月7日.
静定结构位移计算 ——互等定理 主讲教师:戴萍.
VRP教程 2011.
临界区问题的硬件指令解决方案 (Synchronization Hardware)
OpenStack vs CloudStack
GIS基本功能 数据存储 与管理 数据采集 数据处理 与编辑 空间查询 空间查询 GIS能做什么? 与分析 叠加分析 缓冲区分析 网络分析
ARM裸机第一部分-ARM那些你得知道的事
C++语言程序设计 C++语言程序设计 第一章 C++语言概述 第十一组 C++语言程序设计.
FVX1100介绍 法视特(上海)图像科技有限公司 施 俊.
《手把手教你学STM32-STemWin》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司
DEV243 Visual Studio Team System 测试深入探讨
2019/9/19 互联网产业、立法与网规 张钦坤 腾讯法务部.
《手把手教你学STM32-STemWin》 主讲人 :正点原子团队 硬件平台:正点原子STM32开发板 版权所有:广州市星翼电子科技有限公司
Presentation transcript:

核心系统数据库组 褚霸 http://yufeng.info 2011-07-29 高性能集群服务器 Erlang解决方案 核心系统数据库组 褚霸 http://yufeng.info 2011-07-29

十万英尺高度看Erlang

我是谁?

Erlang是什么? 江湖传说 官方定义 支持高并发 伤眼睛 怪异难学 通用的语言和运行环境 内置并发,集群,容错机制 电信行业大规模部署应用 经过时间验证的成熟商业系统

Erlang的历史 很老的FP语言,始于80年代末 爱立信投资10亿美金主导开发 EPL版权方式开源 需要记住的几个年份 1987  The first experiments with Erlang.  1993  Distribution is added to Erlang. 2006  SMP support is added to Erlang.

Erlang社区

印象Erlang “Erlang was built from the ground up for concurrency.  Not just in a single machine, but in clusters of machines.  Lots of machines.  Lost of machines running many processes.  Sounds like a cloud, right?” -Colin Clark

Erlang适合做什么 互联网应用服务器 消息系统 海量存储 需要软实时的数据库应用  网关代理服务器 异构系统粘合 …

Erlang成熟项目

显微镜看Erlang

语言和虚拟机天生可伸缩 最酷的语言特性: 函数式语言,方便排错 轻量级进程 异步消息机制 软实时 代码热升级  

集群特点及规模 集群全连通或者分区连通 访问授权: nothing or all策略 节点规模可强力伸缩 节点热插拔 规模可达上千台 典型系统的集群进程组织图

Erlang语言运行和开发效率

Erlang对SMP的支持 从2006年发布的R11B开始. SMP开发人员的信条: "SMP should be transparent to programers in much the way as erlang distribution."   -Ulf Wiger, Ericsson AB

Erlang进程调度及策略

Erlang调度器的伸缩性

稳定性 In 1998, the Ericsson AXD301 switch was announced, containing over a million lines of Erlang, and reported to achieve a reliability of nine "9"s.   -Joe Armstrong

异构性 不同的平台 不同的体系结构 Windows(smp支持的有待改进) Linux(*NIX) 无需关心endianess问题 工业级协议的支持(asn.1, snmp等)

历史遗留系统粘合 API: nif C系统: ei Java: jinterface Cobra: cos* TCP/HTTP

Erlang技术发展路线图 虚拟机的运行期持续改进计划涵盖了对众核NUMA体系结构的支持,保证了它在未来新的硬件体系结构下能持续获得更好的性能。

软件生命周期看Erlang

设计 基于Actor模型 异步消息传递 无类型系统, 模块化,内置大部分应用模块 行为提炼: gen_server, gen_fsm,gen_event 90%的模块都是gen_server

开发 工具 效率 编辑器 Emacs或者其他文本编辑器 编译器:内置 Make工具: rebar 开发人员素质要求中等 开发效率是C/C++的7倍(摩托罗拉,4399游戏)

排错 静态分析器:dialyzer 动态分析器: debugger 完善的日志系统和出错原因 完善的coredump分析

测试 单元测试 eunit 系统测试 common_test test_server

部署 独立的安装包自带运行环境 无需停机维护 在线升级,系统同时跑新旧代码 发现问题在线降级 工具化,一切自动化

远程维护 强大的内置shell 内置SSH和SFTP服务器, 分布式日志系统

监控功能 操作系统,CPU,内存,磁盘监控 无比详细的运行期状态 支持工业标准SNMP/HTTP

从淘宝看Erlang

淘宝的业务特点 用户数目庞大 海量数据 应用繁多 …

淘宝现存软件的特点 开源基础改进 自家酿造,门派繁多 开发周期长,软件生命周期长 稳定性要求高 …

Erlang来救助 IO密集型:小菜一碟 计算密集型: 无助 网络密集型:拿手好戏 集群密集型:拿手好戏 稳定密集型:拿手好戏 粘合型:小菜一碟 数据库:小菜一碟 …

推广障碍 函数式语言, 开发人员少, 招聘成本高 独特的并发和错误处理哲学 开发社区偏小,知识积累不够 应用库偏少 软件经理不了解 …

提问时间 谢谢大家!