angularjs - Node.js + Angular + Redis + Socket.io 堆栈有什么好处?

标签 angularjs node.js laravel redis

<分区>

我试过这个教程:

http://kodeinfo.com/post/realtime-app-using-laravel-nodejs-angularjs-redis

简而言之,就是使用 Node.js + Angular + Redis + Socket.io + Laravel(PHP 作为后端)构建一个实时应用程序。

困扰我的问题是,为什么要尝试利用所有这些技术来实现实时功能?使用这个(Node.js + Angular + Redis + Socket.io)堆栈是否还有更多好处,比方说,对后端的简单 AJAX 调用?您还针对哪些其他用例使用了此堆栈?

最佳答案

您列出的每项技术都不是实时所必需的,但我认为您可能会发现进一步了解每项技术及其用途很有用。

每种技术都有其优势和用途。我建议您分别对每种技术进行更深入的阅读。您始终可以只使用 ajax,但您会错过每种技术的很多优势。所有这些都经过严格测试、DRY 和组件化,这意味着您可能会更快地提高工作效率并减少重新发明轮子的次数。

此外,这些技术往往可以很好地协同工作,并且基于许多相似的概念。

  1. Node.js - 您肯定需要一些后端技术,您可以使用 php、node.js 或您喜欢的任何一种。然而,node.js 有一些明显的优势。 除了是 JavaScript,您还可以共享代码,而 node.js 非阻塞 i/o 让您可以使用更多资源。
  1. Why use node
  2. Top 10 reasons to use node
  3. How to decide when to use Node
  1. Angular - angular 是您的前端 mvc。有很多框架(Ember、Backend 等等)。您可以选择任何人或不选择任何人,但这不会取代 AJAX。他们的框架带来了更多负载,例如双向数据绑定(bind)、组件、数据层等等。又是构建高影响力专业应用程序的重要组成部分。
  1. Why use angular
  2. Three reasons to use angular
  3. what does angular do better than jquery
  1. Redis 是一个 nosql 数据库。实时与它关系不大,但它可以用于此。然而,它已被用于许多 pub-sub 实现,以跨实例/客户端维护状态。阅读有关 Redis 的文章
  1. What is redis and when to use it
  2. why is redis ecosystem flourishing?
  1. Socket.io - 这是最面向实时的组件,也是您实际上可以用 Ajax“替换”的主要组件。我强烈建议你,即使你决定不使用任何其他组件,你仍然使用 socket.io/另一个套接字库。 Socket.io 为浏览器/服务器提供类似接口(interface)的套接字(类似于 Windows 上的 winsock)。意味着浏览器可以发送和接收消息。 Just FYI 套接字在很大程度上依赖于 Ajax,但是它简化了使用并且不需要您自己维护连接状态,处理浏览器不一致等等。虽然您可能会使用纯 Ajax 编写更快的代码,但您最终引入更多问题的可能性更大……但这是您的决定:)
  1. Why use socket.io
  2. Ajax vs Socket.io performance

关于angularjs - Node.js + Angular + Redis + Socket.io 堆栈有什么好处?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30976683/

相关文章:

css - AngularJS datepicker 更改日期元素 CSS

javascript - 如何在 Streoids.js 转换后重新加载页面?

javascript - AngularJS ng-repeat 不会在页面加载时呈现

javascript - 如何在 NodeJS 中使用相对路径(参数)获取文件

Laravel 通过数据库记录进行验证

php - 使用 axios 的 API 请求总是未经 Laravel API 授权

javascript - 如何在angularjs中声明 Controller

javascript - node.js 服务器端的监听器太多?

javascript - 使用KOA调用ES6类中间件

php - SoapClient 和 Laravel