• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

NATS的Dart客户端

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

NATS的Dart客户端

作者:Chaitanya Munukutla

记得是在2015年初,我第一次听到消息经纪人这个词。我正在攻读硕士学位,关于P2P网络,需要模拟稳定吞吐量的传入消息。那时我不是一个极客,所以解决方法是做一个无限的Thread.sleep()循环。不要不满,那时我才21岁。

RabbitMQ是我与消息传递系统的第一次约会。我对这类关系很陌生,并没有太多可比性,所以RabbitMQ似乎很好。但是,自己托管它有点痛苦,而且我也厌倦了Java。那是我找到PubNub的时候,上帝是美丽的。我不需要处理任何事情,几乎所有你使用的环境都有驱动。并且,他们有一个免费等级可用,这是我透露我来自印度的时候,我们比任何人都更好地使用免费资源。

免责声明:我没有试图去找NATS,这是一个意外。

我看到了这个新的基金会,云原生计算基金会,它似乎是街头新的嘻哈孩子,所以我前往cncf.io,看看他们是否有他们吹嘘的东西。然后,我遇到这个名为NATS的新孵化项目。他们称之为“为微服务而设的消息传递”。它有类似于RabbitMQ、ActiveMQ、Pubnub等的消息代理抽象。那么我为什么要切换?

为何选择NATS?

惯用法。我一直在寻找令人兴奋的新语言,这些语言似乎无处不在。我试过Golang、Swift、Kotlin、Python、C#和Erlang(是的,我说过是真的)。新语言似乎带来了他们各自对编程的惯用方式。NATS似乎通过简单直接的驱动程序,带来了原生方式。NATS帮助我学习Golang频道、RxJava和Erlang主管模型。

强大功能。NATS功能强大。它优雅地处理pub-sub、请求-响应、排队和流媒体,甚至可以同时处理!

简单部署。我不能夸大这一点,NATS很容易部署和管理。只需在我的终端上运行./gnatsd即可!

极其省资源。我已经对NATS进行了基准测试,它从未占用超过150MB的RAM来为单个主机上的100万有效负载流入提供服务。仅供参考,单个谷歌Chrome浏览器所需更高。

惊人的表现。如果你到目前为止还没有使用NATS,请停止阅读并下载最新的二进制文件并尝试一下。试用PC可承受的最大负载,NATS让你满意。对于NATS的用户,你知道我在说什么。

那么为什么我会在所有语言中,以Dart为NATS编写驱动程序?

tl;dr - 必要是发明的母亲。

实际原因也简单。我正在编写一个带有无服务器触发器的Flutter应用程序,NATS似乎没有Dart驱动程序。所以我写了!!

过程直截了当吗?是,是的。NATS有非常直观的基于文本的协议。所以,我所要做的是打开TCP套接字,并开始发送字节流:)

棘手的部分?好吧,集群。虽然我没有浏览其他驱动程序,当一个群集的主机出现故障时,将订阅从一个主机移植到另一个主机有点棘手。但Dart拥有Future和Stream类的最佳流式抽象,所以,一旦掌握了它,就变得轻松。

为什么选择Dart?我个人认为Dart将在未来3-5年内成为编程语言的超人。谷歌正在大力**Flutter;Dart现在可用共享代码库开发服务器、iOS、Android、MacOS、Linux和Windows应用程序;Flutter团队现在通过Hummingbird项目将Flutter带到网上。我猜谷歌不会让我失望。

总结

在短时间内,你将无法在消息传递领域中找到像NATS这样棒的东西。它强调云原生操作、群集和闪电般快速的消息传递,这简直令人兴奋。因此,我建议大家使用你选择的语言来尝试一下。

任何Dart/Flutter的开发者,请在Github上查看nats-dart,并告诉我是否合适。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Dart语言学习(五)DartBool类型发布时间:2022-07-13
下一篇:
dart系列之:实时通讯,在浏览器中使用WebSockets发布时间:2022-07-13
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap