使用纯 erlang OTP 代替带有 React.js 和 phoenix 框架的 elixir 后端

Posted

技术标签:

【中文标题】使用纯 erlang OTP 代替带有 React.js 和 phoenix 框架的 elixir 后端【英文标题】:Using pure erlang OTP instead of elixir back-end with React.js and phoenix framework 【发布时间】:2020-06-13 08:35:31 【问题描述】:

我目前正在设计一个 Web 应用程序,并计划使用 React.js 前端,并希望使用 Erlang OTP 来管理服务器。 我听说使用 phoenix 框架可以做到这一点,但是没有太多关于使用 Erlang 代替默认 Elixir 的信息,

欢迎任何提示:)

【问题讨论】:

但是没有太多关于使用 Erlang 代替默认 Elixir 的信息,欢迎提供任何提示 -- Erlang 带有一个名为 inets 的 http 服务器。还有称为YawsCowboyChicagoBoss 等的第三方服务器。请参见此处:elixirforum.com/t/yaws-vs-cowboy-and-phoenix/3348/3。你可能想在那里问你的问题。 但是没有太多关于使用 Erlang 代替默认 Elixir 的信息, 那是因为 Phoenix 是一个使用 Elixir 编程语言的框架。你的问题有点像在问,我想使用 Ruby on Rails,但是没有很多关于使用 Python 代替默认 Ruby 的信息。这不是一个公平的比较,因为在 Elixir 编程语言中,您实际上可以调用 erlang 函数。但是,您仍然需要学习 Elixir 才能使用 Phoenix 框架。 【参考方案1】:

一些提示和提示:

在很大程度上,elixir 只是 erlang,具有不同的(有人说更现代)语法。还有宏。 Elixir 和 erlang 都在同一个 BEAM 虚拟机上运行它们的代码。 Elixir 基于 erlang 构建,并为您提供与 erlang 相同的酷炫功能。 Elixir 为您提供了大量基于 erlang 的 OTP 库,例如 Agent、GenServer、Supervisor、热代码重载等。 Elixir 有一些非常好的内置/一流工具,例如 mixex_unit,您将学会欣赏它们。 Phoenix 框架是用 elixir 编写的,所以您必须使用 elixir 编译器来使用 Phoenix。 您在网上找到的所有关于 Phoenix 的信息和教程都将使用 elixir,而不是 erlang。

长话短说:如果你想使用 Phoenix 框架,你必须使用 Elixir。

【讨论】:

以上是关于使用纯 erlang OTP 代替带有 React.js 和 phoenix 框架的 elixir 后端的主要内容,如果未能解决你的问题,请参考以下文章

如何安装特定版本的 Erlang/OTP?

如何使用 com.ericsson.otp.erlang 确定 erlang 术语是不是为空

为啥在 Erlang 中使用 OTP?

erlang驱动使用mysql-otp

Erlang/OTP 生产应用部署简介

Erlang/OTP 18.0 正式版发布