首页
学习
活动
专区
圈层
工具
发布

如何在 IntelliJ 上运行 Elixir 和 Phoenix 程序?

在开始之前确定你已经安装了 Elixir,安装 Elixir 同时会安装 Erlang,因为 Elixir 是运行在 Erlang 虚拟机上(BEAM)。...点击 IntelliJ 窗口上方的绿色按钮即可运行 hello.ex 文件 如何运行 Phoenix Elixir 插件同时也支持运行 Phoenix Web 框架,你需要先安装 Phoenix 并且通过命令行创建一个新的项目并构建相关的项目依赖...启动项目 浏览器访问 http://localhost:4000 错误解决 Elixir 和 Erlang 插件在安装之后可能出现无法正常运行的情况,可以通过以下方式解决: 如果出现一些无法找到文件或者模块的错误...如果出现无法找到 Erlang SDK 的错误,可以去通过 File -> Project Structure -> SDKs -> Elixir 来确认 Erlang Plugin 是否识别到 Erlang...自定义 Phoenix 页面 lib 文件夹下保存着 Elixir 代码,config 文件夹下保存着各种配置,assets 文件夹下存放的是静态文件。Phoenix 框架也是 MVC 架构。

2K20

如何在Ubuntu 16.04上使用Distillery和edeliver自动化Elixir-Phoenix部署

第1步 - 在本地开发机器上安装Elixir和Phoenix 因为Elixir在Erlang VM上运行,所以我们需要先安装VM才能安装Elixir。...第2步 - 在生产服务器上安装Elixir和Phoenix 因为我们需要我们的Phoenix项目在本地开发机器和生产服务器上运行,所以我们需要在两个地方安装所有相同的语言和工具。...[Yn] Y * creating .mix/archives/hex-0.17.1 本地开发机器和生产服务器现在都可以运行Phoenix了,但是通过设置SSH主机别名,可以更轻松地从本地开发机器连接到生产服务器...由于myproject项目需要生产服务器上的prod.secret.exs在正常运行而我们无法使用Git将其移动到那里,我们必须手动将其传输到服务器。...如果没有此配置,Channels将无法工作,因为WebSocket请求不会进入服务器。

5K00
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Phoenix 1.3,迈向正确的道路

    phoenix 相对于 rails,根本性的颠覆有二: 1) 基于 erlang VM 的 concurrency 能力。...当然我们随着系统的发展,把业务逻辑和数据模型抽取出来,放在 lib 下,甚至,用 elixir / erlang 惯有的方式,将它们包装成一个个独立的 app,然而,scaffolding 出来的目录结构还是会深深地影响和制约着你的代码结构...我不但喜欢把服务通过目录来划分势力范围,更钟情将它们构造成不同的 app 来进一步在运行时界定它们的边界。...一个 erlang VM,你可以将其看做是一个操作系统,这个操作系统里运行着很多各司其职的 application,每个 application 管理着它们各自的 process。...写起代码,很难直接使用已有的架构在 phoenix 1.2 之上的 lib,于是掣肘丛生,只能踯躅前行 —— 而且,在可预见的几个月内,这状况不太会有太多的改变。

    1.9K150

    Ruby vs Elixir | 2022 该选哪个?

    Elixir 的优势 经得起时间考验的解决方案(指 Elixir 运行在 Erlang VM 上) 上面已经提到,Elixir 是运行在 Erlang 虚拟机上(BEAM),不仅仅是因为 Erlang...使用 Elixir 的一个最大的好处就是你可以使用单核服务器上的单核 CPU 或者多核服务器上的多个 CPU 核心 plus:早期的语言如 Python、C 只能使用服务器的单核进行计算(即使服务器有多核...如果没有内置的并发性,开发者就无法有效地管理可用的硬件资源——这是每个大流量的应用程序所必需的。 性能与开发速度 Ruby速度不慢,但不如Elixir快。...但如果你设计了一款流量大的应用,Ruby 都可能无法胜任。 当然,随着 Ruby 3 的推出,这一点可能会发生变化,据说它的性能与以前的版本相比提高了三倍。...举个例子:比如在一台服务器上创建130万个连接!。

    2.7K10

    2017,忘掉「全栈」,迎向「一栈」!

    Elixir 无论是在语言设计还是运行性能上都优于Ruby,可谓吸收了函数式编程和 Ruby 语言的精髓。...当然,Elixir 不仅仅可以用来做网站,它可以用来构建大规模分布式服务,编写高性能游戏服务器,编写高速交易系统,深度学习/人工智能系统,构建物联网IoT系统等。...国内许多游戏公司都放弃 C++ 转而采用Erlang作为服务器开发语言,国外许多游戏公司已经开始采用 Elixir。...之前,我们也对Elixir和Phoenix做了许多篇的普及介绍: 1. Elixir: 编程语言的未来 2. Erlang 和 Elixir 介绍 3....Elixir for imperative Programmers》-> Erlang Elixir 实战教学 《Programming Phoenix》-> Phoenix 基础和实战教学 《What's

    1.4K70

    【微服务中间件】RabbitMQ 多平台安装搭建实践指南(Windows_macOS_Ubuntu_Docker 全场景)

    .安装Erlang下载对应系统的Erlang安装包(如otp_win64_24.1.7.exe)右键以管理员身份运行安装程序,一路点击"Next"(建议默认路径)配置环境变量:右键"此电脑"→属性→高级系统设置..."命令行执行rabbitmqctlstatus查看节点状态管理界面查看队列、交换机等组件是否正常常见问题及解决方案问题解决方案服务启动失败检查Erlang和RabbitMQ版本兼容性,参考官方版本矩阵管理界面无法访问检查防火墙是否开放...15672端口,重启服务命令行找不到erl/rabbitmqctl确认环境变量配置正确,重启命令提示符中文路径错误重新安装到纯英文路径(如`C:\ProgramFiles\`)macOS安装1.Homebrew...namerabbitmq\--hostnamerabbitmq-server\-p5672:5672\#AMQP协议端口-p15672:15672\#管理界面端口-v/data/rabbitmq/data:/var/lib.../data/rabbitmq/data:/var/lib/rabbitmq-.

    36221

    如何在Ubuntu上部署Elixir-Phoenix MySQL应用程序

    如果您的应用程序由于任何错误而无法编译,Ecto也会拒绝创建数据库。 现在您已将项目设置为连接到数据库,甚至使用Ecto在开发计算机中创建数据库,您可以继续修改服务器上的数据库。...现在,生产数据库已准备就绪,您可以将应用程序重新部署到服务器。 第五步 - 将项目部署到服务器 在此步骤中,您将使用新配置的应用程序及其新的Ecto存储库替换与数据库无连接的正在运行的应用程序。...虽然升级已成功完成,但在重新启动应用程序之前,您将无法运行与数据库相关的edeliver任务。 警告:以下命令将导致应用程序短时间脱机。...输出告诉我们生产服务器正在运行应用程序版本0.0.3。 您还可以访问您的https://example.com应用程序以确保它正在运行。...如果升级成功但无法更新应用程序,请确保您已提交代码并提升了应用程序版本。如果升级命令失败,edeliver将在错误发生时输出它在服务器上执行的bash代码以及错误消息本身。

    6.9K20

    ​在群晖docker上装elmlang可视调试编码器ellie

    elixir又作为erlang的一个库与可执行服务正如elmlang是nodejs的一个库与可执行服务一样,erlang也是源码形式发布的,所以erlang->elixir是语言源码套源码形式发布的。...elixir和elmlang,其中elmlang负责自身的执行,整个ellie app层次,nodejs源码是后端,负责elmlang代码的执行结果反馈(webpack框架),而elixir负责的是前端(phoenix.../app,只是原版的构建出来在单机跑起来没事,在迁移安装到别的docker主机上跑起来,会提示找不到文件(定位不到正确的app顶层。...所以deps.get时会找不到package.json等,entrypoint也找不到run.sh)。你多构建几次原版dockerfile与这里对比就知道了。...这个ip是你部署ellie所在机器的外网IP或被访问IP:4000所在的IP),这个变量不能放在dockerfile中,也不能放在run.sh中(因为这二个文件要做进docker image中的,而你无法预知要将这个

    1.7K60

    再谈 API 的撰写 - 总览

    在 adRise,我们有一套运行了数年的 API 系统,不符合 RFC,(几乎)没有文档,(几乎)没有测试,(几乎)没有监控,最要命的是,它的开发效率和运行效率都不高。...技术选型是无法脱离团队单独完成的,如果让我个人选择一个基础语言和框架,我大概会选择基于 Erlang/OTP,使用 Elixir 开发的 Phoenix,或者,干脆使用 Plug(Phoenix 的基石...因为 Plug / Phoenix 通过组合来构建 pipeline 的方式很符合我的思维,Elixir 对 macro 的支持和 Erlang 语言核心的 pattern matching 让诸如路由这样的子系统高效简洁美观...,而 Erlang / OTP 的高并发下的健壮性又是一个 API 系统苦苦追求的。...一套 API 系统可能包含多台服务器,所以日志需要集中收集,处理和可视化。一般而言,我们可以用 ELK,或者第三方的服务。

    1.7K70

    我用 Docker 部署 RabbitMQ 踩了 3 个大坑,10 分钟搞定的记录

    查轩辕文档才知道,RabbitMQ的数据存储路径跟节点名称(hostname)绑定,默认hostname是随机的,重启容器会变,导致数据找不到。我上次没加这个,白跑了半小时测试数据,血的教训。 2....我一开始用默认的匿名卷,后来容器删了想恢复数据,找不到卷在哪了,又花10分钟查docker volume ls。建议直接挂载到/data/rabbitmq这种明显的路径,后续维护方便。 4....当时慌了,赶紧查日志: docker logs rabbitmq-server # 报错信息:Error: cookie file /var/lib/rabbitmq/.erlang.cookie has...先查docker ps看容器是不是真的在运行,再查服务器防火墙有没有开放15672端口,我上次就是忘了开防火墙,白刷新10分钟页面。 2....解决:docker ps确认容器运行中,netstat -tuln看宿主机5672端口是否被监听。

    69130

    在 CentOS 7 上安装 RabbitMQ

    RabbitMQ 服务器在安装之前需要安装 erlang。 最新版本的 RabbitMQ 3.8.0 需要 Erlang 21.3 以上的版本支持。...下载地址和软件更新 使用登录上你的 CentOS 7 服务器后,首先需要查看你的服务器是否安装了 wget,如果没有安装 wget,请运行 yum install wget 进行安装。...yum install wget 当 wget 安装完成后,运行 yum update 来更新你的服务器。...在这里,你可以看到这显示的版本低 Erlang emulator 版本,与你下载的 Erlang 版本是不同的。 安装 RabbitMQ 运行下面的命令,将 RabbitMQ 下载到你服务器上。...如果你不能访问下面的登录界面,有可能是你的服务器防火墙。 最简单的办法是先禁用服务器的防火墙以确定所有的进程是正常运行的。 如果你登录成功后,你应该能够看到下面 RabbitMQ 的运行界面: ?

    1.6K20

    Rabbitmq群集部署

    相比内存节点虽然不写入磁盘,但是它执行比磁盘节点要好,集群中,只需要一个磁盘来保存状态就足够了,如果集群中只有内存节点,那么节点一旦宕机,所有的状态、消息都会丢失,无法实现数据的持久化。.../rabbitmq/.erlang.cookie root@192.168.171.135:/var/lib/rabbitmq/ [root@localhost ~]# scp /var/lib/rabbitmq.../.erlang.cookie root@192.168.171.140:/var/lib/rabbitmq/ [root@localhost ~]# scp /var/lib/rabbitmq/....erlang.cookie root@192.168.171.143:/var/lib/rabbitmq/ 4、重启所有要加入群集的节点服务器 在所有要加入群集的服务器上执行以下命令进行重启(包括rabbitmq01.../rabbitmq/.erlang.cookie /var/lib/rabbitmq/ [root@localhost src]# init 6 #重启本机 #加入群集 [root@rabbitmq04

    1.8K30

    rabbitmq集群部署详解_搭建hadoop集群的步骤

    保证各个节点 erlang 版本一致。 RabbitMQ 基于 erlang 语言,必须保证 各个节点 erlang 版本完全一致。 2. 可以跨操作系统建立集群。...因 RabbitMQ 基于 erlang 运行,因此只要 erlang 版本一致即可,与操作系统无关。 3. 如果节点加入集群失败,请根据 给出的错误原因 对症解决。 一般有以下几点: a....请检查磁盘节点是否正常运行以及提示中的端口是否对外开放。 b. 找不到目标主机。请检查目标主机ip,并检查/编辑当前节点服务器的hosts文件。顶部给出的集群搭建文档中有讲如何编辑。 c....当前运行节点名称与期望节点名称不一致。解决办法:如果是新搭建集群,则可以直接删除当前节点,参考文档 rabbitmq集群节点操作 d. 已连接到目标节点,但无法连接到集群。

    45120
    领券