首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    使用flv.js直播

    为什么要在这个时候探索flv.js直播呢?原因在于各大浏览器厂商已经默认禁用Flash,之前常见Flash直播方案需要用户同意使用Flash后才可以正常使用直播功能,这样用户体验很致命。...可以看出在浏览器里直播,使用HTTP-FLV协议是不错,性能优于RTMP+Flash,延迟可以做到和RTMP+Flash一样甚至更好。...flv.js兼容方案 由于目前flv.js兼容性还不是很好,要用在产品中必要要兼顾到不支持flv.js浏览器。...缩短这个收集时间(也就是减少GOP长度)可以优化延迟,但这样坏处是导致视频压缩率不高,传输效率低。 关闭音视频服务器I桢缓存可以优化延迟,坏处是用户看到直播首屏时间变大。...浏览器端开启flv.jsWorker,多进程运行flv.js提升解析速度可以优化延迟,这样flv.js配置代码是:{ enableWorker: true, enableStashBuffer

    13.2K105

    Node.js 使用 RSA 加密

    A 和 B 都提供一个公开公钥。A 把需要传递信息,先用自己私钥签名,再用 B 公钥加密。B 接收到这串密文后,用自己私钥解密,用 A 提供公钥验签。 为什么要先签名后加密?...如果你先加密后签名,非法用户通过获取公钥就可以破解签名,破解之后就可以替换签名。...详细原理可以参考以下文档: RSA算法原理(一) RSA算法原理(二) node-rsa 在 node.js 中使用 rsa 算法,我们使用是 node-rsa 这个包。...,所以我们需要把对象按一定顺序排列并序列化成字符串再进行签名加密操作 const serialize = (obj) => { const str = []; Object.keys(obj...,加上 Node 不适合做计算密集型操作。

    6.5K21

    理论 | 使用flv.js直播

    为什么要在这个时候探索flv.js直播呢?原因在于各大浏览器厂商已经默认禁用Flash,之前常见Flash直播方案需要用户同意使用Flash后才可以正常使用直播功能,这样用户体验很致命。...可以看出在浏览器里直播,使用HTTP-FLV协议是不错,性能优于RTMP+Flash,延迟可以做到和RTMP+Flash一样甚至更好。...flv.js兼容方案 由于目前flv.js兼容性还不是很好,要用在产品中必要要兼顾到不支持flv.js浏览器。...缩短这个收集时间(也就是减少GOP长度)可以优化延迟,但这样坏处是导致视频压缩率不高,传输效率低。 关闭音视频服务器I桢缓存可以优化延迟,坏处是用户看到直播首屏时间变大。...浏览器端开启flv.jsWorker,多进程运行flv.js提升解析速度可以优化延迟,这样flv.js配置代码是: 这里是优化后完整代码 扫码下方二维码, 随时关注更多前端干货文章!

    3.7K10

    网站-推荐3种CSS,JS合并方式

    下面网站小编就简单介绍一个方法,十分简单. 下面介绍以合并js文件为例 保留疑问 : JS 合并与 JS 压缩区别 ? 分别对页面有什么影响?...,十分简单,GT_bin.js 为合并之后文件名称 , /b是固定参数,文件合并之后,页面就只引用GT_bin.js就可以了,从而减少了js文件引用,到达了减少http请求次数,提高了网站性能....缺点: #页面可能会加载到本页面不使用代码。 不适用场景: #这种方式肯定不适用于大型Web应用,且不论单文件代码量,业务复杂性也不允许我们这样干(我没见过那个网站这样)。...往期热点文章: #网站-如何用DIV+CSS网页 #网站-3家国外VPS主机商对比 #网站-页面内锚点定位几种方法 #网站-如何将设计稿还原为网页 #网站-面向对象面向过程区别 #网站...-必备10款网站性能测试工具(推荐) #网站-前端工程师都用啥编辑器 #网站-虚拟主机与独立服务器区别 网站公众平台(zwangz888)每天为您分享原创Web开发资讯,开发经验,为您技能充电

    3.3K110

    JS】asyncawait异常捕获,这样才完美

    前言缘由JS中async/await异步调用,只能通过try-catch吗?你想听故事:作为一个合格全栈搬砖工,那必须文武双全,前后必备。...遂吾日三省吾身,偶发觉前端长时间不写有些落下,便抽用了摸鱼时间,检查一下前端小老弟代码。不查不知道,一查吓一跳。...小伙伴们可以看到,此时就掉入没有捕获异常坑了,非常遗憾,后续牵连接口一并因错误戛然而止,出错连坐!...插件库await-to-js是什么await-to-js 是一个辅助开发者处理异步错误库await-to-js怎么下# npm安装npm i await-to-js --save# yarn安装yarn...add await-to-jsawait-to-js怎么写import to from 'await-to-js'const init = async () => { const [err, data

    11710

    JS:用rem来响应式开发

    电脑版商城昨晚做完了,今天赶着做手机端,提到手机端网站第一个想到就是要 适应不同手机屏幕宽度,保证在不同手机上都能正常显示给用户,我之前这类网站都是无脑引进bootstrap。...(我现在知道尚浅)目前我了解有 1.百分比法: 顾名思义,页面的元素margin,padding,width,height,等等都用%来计算,CSS中百分比中百指是什么,指的是父元素,所有百分比都是这样...子元素宽度50%,那么父元素宽度就是百,子元 素padding-left:50%,父元素宽度是百,子元素margin-top:20%,那么父元素高是百。...那就要用到js在页面加载时获取window宽度(浏览器窗口宽度)$(window).width();在开发手机页面的时候,一般我们设置最大宽度为640px,因为640px可以保证在至今最宽手机上显示时网页两端刚好贴合屏幕...height:10.6rem; border:1px solid #000; box-sizing: border-box; } js

    6.1K10

    Node.js 是如何 GC (垃圾回收)

    今天我们来研究一下 Node.js 是如何 GC 。 GC,Garbage Collection,垃圾回收。在编程中,一般指的是内存自动回收机制,会定时将不需要用到数据进行清除。...堆:存放对象等数据; 堆内存 Node.js 底层使用是 V8,下面讲解一下 V8 内存回收机制。 首先 JS 中所有的对象都会保存在堆内存中。...这种基于 copy 算法,优点是可以很好地处理内存碎片问题,缺点是会浪费一些空间作为搬移空间位置,此外因为拷贝比较耗费时间,所以不适合分配太大内存空间,更多是一种辅助 GC。...,不要用 Buffer 测试。...因为 Buffer 是 Node.js 特有的处理二进制对象,它不是在 V8 中实现,是 Node.js 用 C++ 另外实现,不通过 V8 分配内存,属于堆外内存。

    82420

    node.js + mongodb 项目的详解(二)

    第一步 当然还是准备工作了,在bootstrap官网下载好需要东西了,怎么用官网已经写很详细,在这就不细说了。...下载地址:http://v3.bootcss.com/getting-started/ 第二步 就是登陆和注册了 写在router文件中 index.js /*ucenter-登录*/router.post...,没有用Ajax,这里为了方便讲解,如果你写用Ajax请求写法 请看:http://www.hubwiz.com/coursecenter 中express课程  其中有详细做法。...第三步 就是expresssession问题了 在express 4.0之前版本,像session之类中间件是伴随express自动安装, 网上有的教程使用express版本正是4.0之前版本...,所以在使用4.0及其之后版本时候一定要注意这点。

    1.2K20

    Node.js静态资源服务器

    在上一篇文章介绍了Node.js基础API 接下来我们做一个案例,用Node.js实现静态资源服务器 目录结构 首先新键如下目录结构 config:存放一些配置文件 helper:辅助文件 template...:模板文件(后面会使用到模板引擎) app.js:入口文件 搭建服务 我们要根据客户端请求url返回相应文件/目录信息,所以我们要先搭建服务 使用http模块搭建 const http = require...中我们引入promisify模块引入,将相关文件操作封装成promise对象,这样可以使我们在读取文件时不用进行各种回调,通过async与await时同步方式去做异步事情。...我们还引入了自定义模块mime这个模块放置了文件类型对应contentType,以确保我们发送给客户端正确contentType helper/mime.js const path = require...(html|js|css|md)/ } 新键helper/compress.js const {createGzip,createDeflate} = require('zlib') module.exports

    2.3K20
    领券