【养成记1】Erlang-21.3华为鲲鹏云最佳实践方案

举报
tuoxinquyu 发表于 2019/12/11 16:00:32 2019/12/11
【摘要】 Erlang是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erlang是运行于虚拟机的解释性语言,但是现在也包含有乌普萨拉大学高性能Erlang计划(HiPE)开发的本地代码编译器,自R11B-4版本开始,Erlang也开始支持脚本

一、 软件介绍

Erlang是一种通用的面向并发的编程语言,它由瑞典电信设备制造商爱立信所辖的CS-Lab开发,目的是创造一种可以应对大规模并发活动的编程语言和运行环境。Erlang问世于1987年,经过十年的发展,于1998年发布开源版本。Erlang是运行于虚拟机解释性语言,但是现在也包含有乌普萨拉大学高性能Erlang计划(HiPE)开发的本地代码编译器,自R11B-4版本开始,Erlang也开始支持脚本式解释器。在编程范型上,Erlang属于多重范型编程语言,涵盖函数式、并发式及分布式。顺序执行的Erlang是一个及早求值,单次赋值和动态类型的函数式编程语言。

Erlang是一个结构化,动态类型编程语言,内建并行计算支持。最初是由爱立信专门为通信应用设计的,比如控制交换机或者变换协议等,因此非常适 合于构建分布式,实时软并行计算系统。使用Erlang编写出的应用运行时通常由成千上万个轻量级进程组成,并通过消息传递相互通讯。进程间上下文切换对于Erlang来说仅仅 只是一两个环节,比起C程序的线程切换要高效得多得多了。

使用Erlang来编写分布式应用要简单的多,因为它的分布式机制是透明的:对于程序来说并不知道自己是在分布式运行。Erlang运行时环境是一个虚拟机,有点像Java虚拟机,这样代码一经编译,同样可以随处运行。它的运行时系统甚至允许代码在不被中断 的情况下更新。另外如果需要更高效的话,字节代码也可以编译成本地代码运行。

二、 支持的操作系统

经过华为云严格实测,以下操作系统在鲲鹏生态中可以完整运行Varnish的全部功能:

     CentOS7.6

三、 支持版本和获取方式

下载地址:http://erlang.org/download/ 

四、 编译与测试环境

本文选用华为鲲鹏云服务器ECS KC1实例做测试,KC1实例的处理器为兼容ARMv8指令集的鲲鹏920。详细规格如下:

类别

子项

版本

云主机配置

ECS实例类型

kc1.large.4

ECS配置

4U16GB

EVS

高IO(80GB)

云OS

Kernel

4.18.0

 

五、 编译安装与测试

依赖安装

yum install libtool libtool-ltdl-devel libevent-devel lua  ncurses-devel openssl-devel flex

编译安装

1) 执行以下命令,获取安装包。

wget http://erlang.org/download/otp_src_21.3.tar.gz

2) 执行以下命令,解压安装包:

tar -zxvf otp_src_21.3.tar.gz

3) 执行以下命令,进入安装目录.

cd otp_src_21.3

4) 执行以下命令,生成makefile文件。

./configure

5) 执行如下命令,编译安装erlang。

make

make install

验证测试

1) 执行如下命令,进入erl环境。

erl

当系统回显类似如下信息时,表示进入erl环境。

image.png 

2) 输入“1+1.”后按“Enter”.

系统回显如下所示,表示erlang基本功能调测试成功。

image.png 

问题总结

./configure的时候可能会出现如下问题:

image.png 

执行以下的命令:

yum install -y java-1.8.0-openjdk-devel unixODBC unixODBC-devel

再次./configure,问题就解决了,继续后面的安装

image.png 


【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。