BT

如何利用碎片时间提升技术认知与能力? 点击获取答案

Phoenix Web框架取得重大进展,1.0版本发布了

| 作者 James Chesters 关注 1 他的粉丝 ,译者 邱广 关注 0 他的粉丝 发布于 2015年9月7日. 估计阅读时间: 3 分钟 | 如何结合区块链技术,帮助企业降本增效?让我们深度了解几个成功的案例。

Chris McCord日前发布了Phoenix web框架的1.0版本。

Phoenix以Elixir语言写成,并实现了服务器侧的MVC模式,旨在将高开发效率与高应用性能结合起来。McCord在博客文章里宣布了版本发布的消息,并提到为达成1.0版本的发布,进行了“为时一年半的工作,提交代码2500次,发布了30个中间版本”。

Phoenix 1.0版本包括了众多的更新和变化,其中一项是引入了“channel”,这让开发者拥有“一个到服务器的用于双向通信的多路复用连接”。

McCord还表示,

Phoenix还抽象化了传输层,这样开发者就不必再去关心用户的连接方式了。无论用的是WebSocket、长轮询,还是自定义传输,使用channel的代码无需改变。

开发者只需针对抽象的“socket”编写代码,剩下的工作交给Phoenix处理。即使是在集群机器上,发出的消息都能自动地在节点间进行广播。Phoenix的javascript客户端还提供了API,支持客户端/服务器之间的简洁优雅的通信。

最新版本的Phoenix得到了开发社区的热烈回应。在Hacker News上,大量用户参与了Phoenix 1.0的讨论,其中一个用户oomkiller说

“在Ruby和Rails圈混迹了近七年之后,我换了工作,近三个月来我在工作中一直使用Elixir和Phoenix。对此我非常满意。Phoenix社区棒极了,提供的工具无懈可击,尤其是对这样一个年轻的项目来说,它的开源库的水准和可用性都很高。

用户ghayes在回复另一个用户fierycatnet提出的问题“设想一下,为什么会选择Phoenix而不是Rails去开发新的app?”中说道:

“Phoenix同样拥有许多Ruby on Rails的功能特性,比如,强大的MVC模型、集成的ORM以及路由系统等等。基于Elixir的Phoenix在并发和分布式计算上更有优势。对于应用程序来说,这意味着开发者能使用多个已激活的web socket,举例来说,当有效连接太多时,Rails应用程序就容易挂掉。而Phoenix使用轻量级的erlang进程来处理这些任务,在单台机器上能同时运行数以百万计的这样的erlang进程。”

此次Phoenix的发行版本还增加了许多用于提高开发效率的功能特性,包括且不限于:

  • 通过mix phoenix.new my_app生成项目
  • 通过Ecto集成了Postgres、MySQL、MSSQL和MongoDB资源
  • 支持资源生成器,例如可用mix phoenix.gen.html User users name:string age:integer来完成项目引导,并获得phoenix的最佳输入输出
  • 可使用Erlang OTP实时查看运行程序并进行问题诊断

Phoenix社区在freenode IRC上的频道为#elixir-lang,获取更多的信息请点这里

查看英文原文:Phoenix Web Framework Makes 1.0 Milestone

评价本文

专业度
风格

您好,朋友!

您需要 注册一个InfoQ账号 或者 才能进行评论。在您完成注册后还需要进行一些设置。

获得来自InfoQ的更多体验。

告诉我们您的想法

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我
社区评论

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

允许的HTML标签: a,b,br,blockquote,i,li,pre,u,ul,p

当有人回复此评论时请E-mail通知我

讨论

登陆InfoQ,与你最关心的话题互动。


找回密码....

Follow

关注你最喜爱的话题和作者

快速浏览网站内你所感兴趣话题的精选内容。

Like

内容自由定制

选择想要阅读的主题和喜爱的作者定制自己的新闻源。

Notifications

获取更新

设置通知机制以获取内容更新对您而言是否重要

BT