在JavaScript开发中,事件循环是一个非常重要的概念,它决定了代码的执行顺序和性能表现。虽然浏览器和Node.js都使用事件循环来处理异步任务,但它们的实现和行为存在一些关键差异。本文将详细介绍Node.js中的事件循环机制,并与浏览器环境进行对比,帮助你更好地理解和应用这些知识。
2025年08月07日
在JavaScript开发中,事件循环是一个非常重要的概念,它决定了代码的执行顺序和性能表现。虽然浏览器和Node.js都使用事件循环来处理异步任务,但它们的实现和行为存在一些关键差异。本文将详细介绍Node.js中的事件循环机制,并与浏览器环境进行对比,帮助你更好地理解和应用这些知识。
2025年08月07日
Netty 是一个提供 asynchronous event-driven (异步事件驱动)的网络应用框架,是一个用以快速开发高性能、可扩展协议的服务器和客户端。
换句话说,Netty 是一个 NIO 客户端服务器框架,使用它可以快速简单地开发网络应用程序,比如服务器和客户端的协议。Netty 大大简化了网络程序的开发过程比如 TCP 和 UDP 的 socket 服务的开发。
“快速和简单”并不意味着应用程序会有难维护和性能低的问题,Netty 是一个精心设计的框架,它从许多协议的实现中吸收了很多的经验比如 FTP、SMTP、HTTP、许多二进制和基于文本的传统协议.因此,Netty 已经成功地找到一个方式,在不失灵活性的前提下来实现开发的简易性,高性能,稳定性。
2025年08月07日
作者: 五月君 来源:编程界|
事件循环是一种控制应用程序的运行机制,在不同的运行时环境有不同的实现,上一节讲了浏览器中的事件循环,它们有很多相似的地方,也有着各自的特点,本节讨论下 Node.js 中的事件循环。
2025年08月07日
推流直播就是把采集阶段封包好的内容传输到服务器的过程。其实就是将现场的视频信号从手机端,电脑端,摄影机端打包传到服务器的过程。“推流”对网络要求比较高,如果网络不稳定,直播效果就会很差,观众观看直播时就会发生卡顿等现象,观看体验比较糟糕。主流推送协议有RTMP、HLS、SRT等。RTMP是目前最主流的流媒体传输协议,对CDN支持良好,实现难度较低,是大多数的直播平台的选择。使用RTMP传输的延时通常在1–3秒,适合手机端。不过RTMP不支持浏览器,如果直播服务需要浏览器,需要另外的推送协议支持。HLS是Apple公司定义的基于HTTP的流媒体实时传输协议。HLS是以点播的技术实现了直播的体验。因为每个小文件的时长很短,客户端可以很快地切换码率,以适应不同带宽条件下的播放。但是,HLS的延迟一般会高于普通的流媒体直播协议。RTC是一个支持浏览器进行实时语音、视频对话的开源协议。RTC支持目前的主流浏览器,即便在网络信号一般的情况下也具备较好的稳定性。可以实现点对点通信,通信双方延时低,是实现“连麦”功能比较好的选择。
2025年08月07日
要想将视频监控设备的实时视频放到网页预览,基本上的方案都是要先推流,推流到流媒体服务后,然后网页再从流媒体服务这边拉流,一般会选择拉hls也就是m3u8,这个延迟很大,最低延迟估计都要3s,所以后面很多方案选择flv,这个延迟可以做到2s左右,但是又有6个同源的限制,也就是一个网页上只能同时打开6路视频流,所以后面又出来个ws-flv,也就是通过websocket的方式来传输flv流解码显示,这个突破额6个的限制,广大的用户们依然不满足,因为延迟超过1s其实还是很明显的,所以后面主推webrtc,这个就非常屌了,延迟能做到0.3s内,这项技术不知道底层怎么实现的,当然依赖谷歌浏览器内核。
2025年08月05日
typora收费了,该易主了
几天前,升级了typora,之后,嗯,收费了。
打开卸载软件,食指与鼠标左键一碰撞,瞬时烟消云散。
为什么收费,咱不去问也不去品评,已经依赖它的买断即可,也不贵。
对于喜欢尝试新事物的人而言,换一个即可,也不难。
下面这些是个人觉得好用的,其他的一眼就不喜欢的就不放进来了。
2025年08月05日
1. Webstorm
WebStorm是一种轻量级的、功能强大的 IDE,为Node.js复杂的客户端开发和服务器端开发提供完美的解决方案。 WebStorm的智能代码编辑器支持JavaScript, Node.js, HTML和 CSS。 WebStorm支持Windows, Mac OS和Linux平台。(WebStorm目前7折促销,还有打折心愿,自己想怎么打折就怎么打折。【年终大促 巅峰盛"慧" 】促销火热进行中 iPhone 6 Plus、 iPhone 6、iPad Air满就送,还不赶快买买买!)