阅读更多
经过一年半的开发、2500次commit和30多个版本,Phoenix 1.0终于发布啦!无论你要开发APIs、HTML应用,还是服务于本地设备的网络应用,Phoenix 1.0都能为你提供强有力的支持。它用Elixir写成,拥有漂亮的语法、实用的工具和飞快的运行速度。目前已有很多公司在产品中使用Phoenix的成功案例

实时网络

一开始,Phoenix致力于创建可及时交互的网站,目标是做到就像在本地终端上一样在网站上实时交互。这个目标通过Channels实现了,通过原文提供的90s的视频你可以了解到它的强大。

Channels给服务器提供了多路复用的连接,来支持交互通信。同时Phoenix抽象了传输层,这样你无需关心用户连接服务的方式。无论是WebSocket、Long-polling还是自定义的连接,使用channel的代码都是一样的。你的代码只要针对一个抽象的“socket”就行了,Phoenix会做好剩下的工作。即使是在服务器集群中,你的信息也可以自动地广播到各个节点。Phoenix的JavaScript客户端也提供了了API,使客户端/服务器通信变得异常简单,就像下面这样:



不仅仅是浏览器

作为一个Web框架,Phoenix的目标是传统的Web应用,但是现在所谓的“web”的概念已经不同以往,框架也需要与时俱进。Phoenix不再局限于浏览器应用,已经可以连接iPhone、Android等其它智能设备。Justin SchneckEoin ShanaghyDavid Stump使用objC、Swift、C#和Java写了Channel客户端,实现了这个目标。为了展示这个成果,Justin做了一个Demo( 请见原文),展示Apple Watch、iPhone和Web浏览器通过本地Phoenix驱动来进行交互。

短期和长期的生产力

除了高可交互性,Phoenix还具有易用性,使团队能够快速开始,并提高生产效率。但是,软件不是一项短期的工作。Elixir也致力于长期项目的可维护性。Erlang的运行是为运行多年,尽可能减少关机时间的系统设计的,有了这些特性,你部署的系统就会支持自我修复、hot-code上传的特性,支持百万的用户连接。除此之外,Phoenix还支持:
短期可体验到的优势:
  • 通过mix phoenix.new my_app生成项目。
  • 开发中可见实时效果。在任何的模板、view或者asset中做修改可以马上在浏览器中检查效果。
  • 通过Ecto项目整合了Postgres,MySQL,MSSQL和MongoDB资源。
  • 支持资源产生器,像mix phoenix.gen.html User users name:string age:integer来驱动项目中的输入输出。
  • 使用了EEx模板的图层提前编译,加快了响应时间,通常是微秒级的时间。
  • 提供实时交互的Channel。
  • 以及更多特性……

长期可体验到的优势:




新手入门

Phoenix手册可以带你快速入门。如果之前没有接触过Elixir的话,下面是一个锐减的学习资源:

使用Phoenix将会是一段难忘的经历,让世界为Elixir和Phoenix震惊吧!

反馈

针对现在选择Elixir还是Go的问题,业界有着广泛的讨论。是选择Go的高性能,还是Elixir对长期项目的优势?有人总结了Elixir的优点:

社区:Ruby社区有很多喜欢Elixir的大牛,例如José Valim、Dave Thomas、Bruce Tate、Chris McCord等。

BEAM 和 OTP:Erlang VM和OTP在爱立信已是久经沙场,WhatsApp的百万并发也使它的可靠性得到了证实。

Hex:像Ruby的Rubygems,Elixir/Erlang的包管理软件是Hex,这已经成为了库的官方标准。

Phoenix:Rails让Ruby火了起来,现在,Phoenix正在将历史重现。

语法:从Ruby发展而来,它的语法简单明白,很容易读懂。

有位用Ruby工作了7年的程序员最近换了Elixir和Phoenix的工作,已经三个月了。他说对这个改变很满意——社区很棒,工具无敌好用,开源库的稳定性和性能都很好,年轻的项目尤其优秀。Elixir和Phoenix的未来很明朗!(责编:陈秋歌)

译者简介:赖信涛,关注Python,喜欢编程和电子游戏。个人博客: http://www.kawabangga.com/。

原文链接:Phoenix 1.0—the framework for the modern web just landed
  • 大小: 103.9 KB
  • 大小: 95.9 KB
来自: CSDN
3
0
评论 共 2 条 请登录后发表评论
2 楼 wxynxyo 2015-09-06 10:11
关注一下先
1 楼 windlike 2015-09-03 13:58
希望能成功吧!

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 重磅!滴滴跨端框架Chameleon 1.0正式发布

    导读:滴滴在 GitHub 上开源的跨端解决方案 Chameleon(简写 CML)正式发布 1.0 版本,中文名卡梅龙;中文意思变色龙,意味着就像变色龙一样能适应不同环境的企业级跨端整体解决方案,具有易用、轻量、面向未来等...

  • 历时一年 Apache Spark 3.3.0 正式发布,新特性详解

    Apache Spark 3.3.0 从2021年07月03日正式开发,历时近一年,终于在2022年06月16日正式发布,在 Databricks Runtime 11.0 也同步发布。这个版本一共解决了 1600 个 ISSUE,感谢 Apache Spark 社区为 Spark 3.3 版本...

  • 重磅!滴滴跨端框架Chameleon 1.0正式发布(学不动啦...)

    滴滴跨端框架Chameleon 1.0正式发布 Chameleon社区 滴滴在 GitHub 上开源的跨端解决方案 Chameleon(简写 CML)正式发布 1.0 版本,中文名卡梅龙;中文意思变色龙,意味着就像变色龙一样能适应不同环境的企业级跨...

  • 历时一年,我的著作《第一行代码——Android》已出版!

    到这里我的工作就已经基本完成了,后面的任务开始由出版社接手,他们审核、校对、排版、设计封面、印刷,终于在7月份的下旬开始预售了,一年的辛苦即将可以看到成果,我也表示非常期待。 比较 叙述完了创作的过程,...

  • 【机器学习高级实践】历时一年终于把因果推断与机器学习讲明白了

    不管是潜在结果框架还是结构因果模型,因果推断主要是从原因X推断结果Y的过程,为了保证原因X和结果Y之间没有混杂因子,一般选择在数据样本充足且实验条件允许的情况下做随机对照实验。当条件不允许做随机对照实验时...

  • 历时一年 RV1109 开发记录一

    RV1109 瑞芯微 嵌入式 带屏 测温 人脸识别 开发板

  • 历时半年,终于研发完成了Web网页对H.265(HEVC)直播和点播的支持,WebAssembly(wasm)

    历时半年,终于研发完成了H.265(HEVC)Web网页WebAssembly(wasm)播放的功能,感谢期间淘宝、Bilibili、金山云、360前端的开发同学的帮忙指点,该技术后续将大量用于EasyNVR、EasyDSS、EasyGBS等产品,H.265的支持...

  • Swoft 1.0 正式来袭,首个基于 Swoole 原生协程的框架

    历时 1 年多紧锣密鼓的开发,以及愉快而忙碌的春节假期,期间 github star 数从 500 到快破 1k,码云首页推荐,Swoole 作者 Rango 和社区的大力支持,Swoft 1.0 正式版终于要和大家见面。此次更新新增了大量特性,在...

  • Java集合框架总结

    集合框架:用于存储数据的容器。 集合框架是为表示和操作集合而规定的一种统一的标准的体系结构。 任何集合框架都包含三大块内容:对外的接口、接口的实现和对集合运算的算法。 接口:表示集合的抽象数据类型。接口...

  • RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.8 版本发布

    历时数月,RDIFramework.NET V2.8版本发布了,感谢大家的支持。  RDIFramework.NET,基于.NET的快速信息化系统开发、整合框架,为企业或个人在.NET环境下快速开发系统提供了强大的支持,开发人员不需要开发系统的...

  • 计算机网络之浅谈移动互联网(3G-4G-5G与WEB1.0-2.0-3.0)

    补充、WEB1.0 - 2.0 - 3.0 ?   一、什么是移动互联网?   移动互联网,就是将移动通信和互联网二者结合起来,成为一体。移动通信和互联网成为当今世界发展最快、市场潜力最大、前景最诱人的两大业务,...

  • RDIFramework.NET ━ .NET快速信息化系统开发框架 V2.7 版本发布

    框架采用目前最主流的C#语言开发完成,支持多种数据库类型,支持WinForm与Web。使用RDIFramework.NET能提高管理类软件系统的整体质量、提高模块与模块之间的兼容性、提高代码的重复利用率,使软件系统架构

  • 2020中国数据智能产业图谱1.0版发布丨数据猿产业全景图

    “说明:数据猿此次发布的“2020中国数据智能产业图谱/全景图”为1.0版,本年度金猿策划(金猿榜单发布+金猿奖杯颁发)活动期间,还将发布2.0版,如对本图谱有异议或申报参与2.0版,可...

  • 从MVC框架看MVC架构的设计

    从MVC框架看MVC架构的设计尽管MVC早已不是什么新鲜话题了,但是从近些年一些优秀MVC框架的设计上,我们还是会发现MVC在架构设计上的一些新亮点。本文将对传统MVC架构中的一些弊病进行解读,了解一些优秀MVC框架是...

  • 这一年,这些书:2022年读书笔记

    生活在今天的现代人平均脑容量为1 500毫升左右,据罗宾·邓巴先生的观察和统计,现代人的团体规模极限是148人,粗略估算大概为150人,这就是著名的“邓巴数”,是现代人在社交时建立稳定关系的人数极限,一旦生活...

  • Go+ Together!——Go+ 1.0 发布在即

    会上将正式对外发布 Go+ 1.0 的相关特性和 Go+ 的发展路线图,并启动 Go+ 开发者基金会。知名院士、开发者领域资深专家将在本次发布会中与大家共同探讨开发者的成长方向、路径,以及对于开发者生态的思考与探究。 ...

  • 历时近半个世纪,C++ 为什么依旧流行?

    作为一种在首部 iPhone 发布前近十年就已标准化的编程语言,C++ 如何以及为何在云计算和高性能计算的时代仍然具有相关性?SDTimes 做出了如下分析: Still popular, still relevant C++ 在大众市场上持续存在的...

  • LILIUM百合计划历时半年,在2022年元旦的伦敦粉墨登场

    在2022年即将到来的关键时刻,一个好消息让各界精英企业纷纷祝贺,让众多投资者擦亮眼睛翘首以待,这个好消息就是,LILIUM百合计划将在公元2022年1月1日的伦敦正式启动! LILIUM公司作为顶尖的差价合约经纪商, 在2020...

  • 支持H.265网页播放的H5播放器EasyPlayer.js发布了

    在之前的多篇博客《历时半年,终于研发完成了Web网页对H.265(HEVC)直播和点播的支持,WebAssembly(wasm)》、《EasyPlayer.js开发Web H5网页播放H.265视频播放支持FLV与HLS直播与点播的过程》里面,我们提到的...

  • Android之全面解析Retrofit网络框架封装库

    Retrofit是Square公司推出的一个HTTP的框架,主要用于Android和Java,Retrofit会将每一个HTTP的API请求变成一个Java的接口,使用起来非常方便,同时Retrofit又是一个Restful HTTP的网络请求框架的封装。 介绍与使用 ...

Global site tag (gtag.js) - Google Analytics