Erlang/Elixir Elixir 有人用吗?

tablecell · 2015年11月20日 · 最后由 kenshinji 回复于 2016年08月21日 · 7742 次阅读

用过的来说说效果,有没有坑

在学 Phoenix,感觉 非常不错

在看 OTP 🐶

直接从 Erlang 开始。

现在还不成熟吧

#5 楼 @tumayun 好多已经用于生产环境了,因为背后的 Erlang 很成熟了

同感,很不错,好用!

@nightire 你已经在项目里面用了?

已用于生产环境

http://www.phoenixframework.org/blog/the-road-to-2-million-websocket-connections 看看上面这篇文章可能会引起你相当大的兴趣,单机撑起 2 百万的 websocket 连接哦

#9 楼 @los 生成环境是用 Phoenix 吗?

我在用 Phoenix,前一阵子写了一个简单的有简单 CRUD 功能的 Demo: https://github.com/cassiuschen/workshop_elixir

总的来说语法糖有一些,写过 Ruby 会觉得很容易上手,总比直接写 Erlang 要好很多……Phoenix 框架响应速度也确实快,返回一个 404 只要 0.3ms,部署极其简单,编译成二进制文件直接运行就可以了。

要说坑,目前轮子还不够多,导致很多东西需要自己手写;Elixir 语言的抽象也不算很高,毕竟只是 Erlang 的 DSL,举例来说比如Array这个抽象,在 Ruby 中用的很爽,但在 Elixir 中很明确的没有数组这个概念,而是最基础的 List。用链表来直接当做数组用是一件很痛苦的事情……我想你也懂得……

很早开始关注了 Erlang 的特性确实很能安利人 未来 cpu 的方向是多核 能利用多核 才是未来

#11 楼 @cassiuschen List 用模式匹配很方便啊,想想 lisp,哈哈

#14 楼 @jiyinyiyong 站长开了坑就不管了

#11 楼 @cassiuschen 还能直接编译为二进制?

#19 楼 @fsword 也不能完全这么说……程序的入口文件是一个 Bash 脚本,会调用打包好的别的二进制包来运行,比如 evm 什么的。开发的时候首次启动 server 也需要先行编译链接的类库,如果项目大首次启动用时还挺长的……但最终生产环节不用装 Elixir,Phoenix 框架会把静态文件打包,然后代码编译成二进制包,再附上用于跑 Erlang 的工具链,直接放到服务器上跑就可以啦,超简单:

官方文档:http://www.phoenixframework.org/docs/advanced-deployment 教程:http://learnelixir.com/blog/2014/10/16/deploy-phoenix-application-to-a-ubuntu-server/

#20 楼 @cassiuschen 原来指的是这个,那倒不稀奇,面向分布式领域的技术必须解决软件包自包含的问题,所以 erlang 有这个基础设施,elixir 也继承了这份遗产。我本以为你说的是类似 golang 那样的静态编译技术呢

#21 楼 @fsword 嗯并不是……毕竟是 Erlang 的 DSL……

#17 楼 @hooooopo 主要有哪些坑呢?

@cassiuschen 就是说部署的机器只需要有 Erlang VM 环境就可以了,不需要装 Elixir 是吧?

#24 楼 @darkbaby123 不,evm 都不用…什么都不用…它打包完丢给你一个 tar.gz 的包,直接解压运行就可以了…

学习中,很看好 Elixir 的前景

我最近也在看 Erlang/Elixir,一直以为社区学习的人并不多,想不到一个帖子炸出这么多人 😃

已经用于生产环境,自造 web framework 和 ORM 😄 搞起搞起

学 elixir 还不如等 ruby3.0

#32 楼 @mizuhashi Ruby 3.0 还不知道什么时候

先肯下 erlang,再入 Elixir。看了 erlang,发现很多 scala 的设计可以理解了。

总体来说 Erlang 比 Elixir 更好。 个人感觉你又要函数,又要 OO,就用 scala

学习中。之前啃过 Erlang,遇上 Elixir 比较习惯。 正在做一个基于 Elixir/Phoenix 的项目,搞起~

elixir-cn 更新太少了也,不知道哪里交流多些。

#38 楼 @ericguo 进了,多谢~

#38 楼 @ericguo 这个没有邀请能进么?

需要 登录 后方可回复, 如果你还没有账号请 注册新账号