Elixir 1.9.0 发布,新增“release”特性

栏目: 编程语言 · 发布时间: 5年前

内容简介:Elixir 1.9.0 发布了。Elixir 是一种函数式编程语言,建立在 Erlang 虚拟机之上。它是一种动态语言,具有灵活的语法与宏支持,利用 Erlang 的能力来构建并发、分布式与容错应用,并可以进行热代码升级。此版本最主要的新特性是 release 功能,release 是一个独立的目录,由应用代码、所有依赖项以及整个 Erlang 虚拟机(VM)和运行时组成。release 组建后,如果另一台目标机器的操作系统与版本都相同,并且运行了 mix release 命令,那么可以直接把 relea

Elixir 1.9.0 发布了。Elixir 是一种函数式编程语言,建立在 Erlang 虚拟机之上。它是一种动态语言,具有灵活的语法与宏支持,利用 Erlang 的能力来构建并发、分布式与容错应用,并可以进行热代码升级。

此版本最主要的新特性是 release 功能,release 是一个独立的目录,由应用代码、所有依赖项以及整个 Erlang 虚拟机(VM)和运行时组成。release 组建后,如果另一台目标机器的操作系统与版本都相同,并且运行了 mix release 命令,那么可以直接把 release 打包并部署到目标上。

可以通过三个简单的步骤开始一个新项目并组建一个 release:

$ mix new my_app
$ cd my_app
$ MIX_ENV=prod mix release

release 将在 _build/prod/rel/my_app 中组建,在 release 中,将有一个 bin/my_app 文件,它是系统的入口点,支持多个命令,例如:

  • bin/my_app startbin/my_app start_iexbin/my_app restart 与  bin/my_app stop ,用于 release 的一般管理。

  • bin/my_app rpc COMMAND 与  bin/my_app remote 用于在正在运行的系统上运行命令或连接到正在运行的系统

  • bin/my_app eval COMMAND ,启动一个运行单个命令的新系统然后关闭

  • bin/my_app daemon 与  bin/my_app daemon_iex ,在类 Unix 系统上将系统作为守护进程启动

  • bin/my_app install ,在 Windows 计算机上将系统安装为服务 

release 功能允许开发人员将所有代码和运行时预编译并打包到一个单元中,这样的好处包括:

  • 代码预加载
  • 可配置和自定义:开发者可以对系统配置和用于启动系统的 VM 标志进行细粒度控制。
  • 自包含:release 甚至不需要服务器中的 Erlang 或 Elixir,因为它们默认包含 Erlang VM 及其运行时。此外,Erlang 和 Elixir 标准库都被剥离,只带来实际使用的部分。
  • 可为不同应用设置不同 release

此外,此版本还带来了其它许多功能增强,详情查看更新说明:

https://github.com/elixir-lang/elixir/releases/tag/v1.9.0


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

算法Ⅰ~Ⅳ(C++实现):基础、数据结构、排序和搜索

算法Ⅰ~Ⅳ(C++实现):基础、数据结构、排序和搜索

Sedgewick / 高等教育出版社 / 2002-1 / 49.00元

本书通过C++实现方案以简洁、直接的方式对书中的算法和数据结构进行表述,并向学生提供在实际应用中验证这种方法的手段。   本书广泛地论述了与排序、搜索及相关应用有关的基本数据结构和算法。覆盖了数组、链表、串、树和其他基本数据结构,更多地强调抽象数据类型(ADT)、模块化程序设计、面向对象程序设计和C++类。本书包括排序、选择、优先队列ADT实现和符号表ADT(搜索)实现,配有帮助学生学习计算......一起来看看 《算法Ⅰ~Ⅳ(C++实现):基础、数据结构、排序和搜索》 这本书的介绍吧!

CSS 压缩/解压工具
CSS 压缩/解压工具

在线压缩/解压 CSS 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

MD5 加密
MD5 加密

MD5 加密工具