问题标签 [event-driven]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
425 浏览

real-time - 建议 - 从客户端到服务器的实时数据处理

我正在寻找有关如何实现以下目标的建议/指导:

我安装了一个电路并连接到 Arduino,我可以使用 Python 和 pySerial 模块轻松地从中检索数据。它允许我确定模拟输入随时间变化的值。

目前我将该数据存储到一个文件中,带有时间戳和相应的值,我很想听听关于如何将这些数据“共享”到网络服务器并“播放”它的意见和想法。

是否可以通过 AJAX 请求将值“流式传输”到转储文件中并同时从中检索数据,或者我应该查看事件驱动的 Web 服务器,如“Tornado”、“Twisted”......

我有点迷失在这里。只是为了记录,我对最终输出的 PHP 和 JavaScript 很满意,我只是不知道如何不断地“流式传输”我需要的数据。

提前致谢。

0 投票
1 回答
1811 浏览

multithreading - HTTP 服务器中“每个连接一个线程”的优势是什么?

如果我正在编写 HTTP 服务器,为什么要考虑在自己的线程中处理每个 HTTP 连接?

我读过很多关于事件驱动的 HTTP 服务器比线程驱动的服务器更快、更具可扩展性的论点。(例如,请参阅Nginx上的 Ars Technica )。然而,世界上最受欢迎的服务器 Apache 是线程驱动的。为什么?有什么优势?

0 投票
4 回答
10777 浏览

design-patterns - 管理主干视图的模式

来自 GWT,Backbone 似乎错过了如何处理视图生命周期的内置解决方案。在 GWT 中,每个 Activity 或多或少相当于 Backbone 中的 View,由 ActivityManager 管理,ActivityManager 在 Activity 上调用 onStart/onStop,传递 eventBus 和可以渲染 Activity 的元素。在停止时, ActivityManager 将取消绑定活动已绑定到事件总线的所有事件,并从 DOM 中删除视图。

在 Backbone 中,将事件绑定到模型和集合很容易,但是您必须手动删除它们,并且没有通用的 api 方法可以执行此操作。

因此,我正在寻找有关如何管理视图以确保没有被杀死或禁用的视图正在监听不必要的事件的最佳实践模式。

0 投票
1 回答
841 浏览

cocoa - Cocoa 的事​​件驱动系统:后台任务在哪里运行?

在 Mac OS X 上,Cocoa 是事件驱动的。我的意思是每件事都是由 UI 驱动的——用户单击某物或在某个区域上移动会导致调用事件处理程序。Main 只是调用 NSApplicationMain () 来创建一个无限循环,直到程序退出。

那些不是用户驱动的任务呢?我应该将需要在后台工作以提供程序基本功能的任务放在哪里?例如,当用户与 UI 交互时,Photo Booth 会执行某些操作(即当用户单击某个按钮时更改为摄像机)。但是,Photo Booth 也不断地从相机中检索帧以提供视频流。

所以我的问题是非 UI 任务代码去哪里了?Main() 是不可能的,因为我需要任务在程序的整个生命周期中运行,而不是在程序刚启动时运行。

我在 Mac OS X Snow Leopard 上(我想要一些适用于所有 Mac 系统的东西:即 Lion OS X)并且在 Xcode 中使用 Obj-C Cocoa 应用程序。

0 投票
1 回答
299 浏览

node.js - 事件驱动设计工具

最近我一直在试验 node.js,我发现它的事件驱动性质非常好。如果有任何用于事件驱动设计的工具,最好是开源的,我一直在徘徊。你知道/使用任何吗?将可能的应用程序流路径可视化的东西会非常好。

0 投票
0 回答
205 浏览

java - 分布式系统 - P2P 文件传输应用程序的事件驱动视角

我有一个在后台工作的 P2P 文件传输应用程序,只有在两台机器都不使用时才应该激活文件共享。假设在一台与其他n台机器相连的机器上,共享程序在n+1 个线程中运行以下代码:

我的问题是,一般而言,如何以事件驱动的角度来实现这个程序?我如何以及为什么在每一刻选择下一个要执行的事件?

此致

0 投票
1 回答
346 浏览

event-driven - 关于事件驱动编程的好资料

我现在正在学习Java的事件驱动编程,但大多数材料都是关于摇摆的。不知道有没有关于事件驱动编程的资料可以教我如何做一个事件驱动风格的编程。然后我可以创建自己的事件选择和事件处理功能。那么谁能告诉我什么是好的材料?

0 投票
2 回答
300 浏览

c++ - 如何同时处理用户交互和套接字事件?

我正在编写这个使用 ncurses 作为界面的聊天程序。我想如何同时处理套接字文件描述符和用户交互?我的想法如下。现在的问题是循环只为我按下的每个按钮执行一次。如何构建我的程序,以便套接字和用户交互一旦准备好就立即处理?我试着让我的投票包括标准输入和输出的文件描述符,但这不起作用。

也作为一个更普遍的问题。通常如何编写程序来同时处理用户交互和其他事情?似乎会有一种标准的方法来做到这一点。

0 投票
1 回答
1016 浏览

php - Nginx with non thread safe php ... can I code with the assumption of no race conditions when persisting?

I might be misunderstanding what it means for nginx to be event-driven opposed to process driven (thus we don't have mod_php in every thread like Apache would). I am assuming that since I have 1 instance of php-cgi running for all the nginx worker threads that all php executions will be synchronous. Does this mean that when I access objects from the database I do not have to worry about race conditions when it comes to saving data?

Not sure if I have the correct thinking or am completely off-base.

Thanks. I am new to web-programming/database/web-servers

0 投票
1 回答
598 浏览

python - 龙卷风阻止代码

我只是想到了龙卷风和事件驱动编程的非阻塞基础设施。实际上,我正在编写一个简单的 webapp,它正在访问外部 web 服务的 HTTP-API。我明白为什么我应该将此 API 称为非阻塞。但是,如果我只做第一次非阻塞调用,这样 IOLoop 可以进一步循环,会有什么缺点吗?

例如:

对比