All Projects → PearInc → Peardownloader.js

PearInc / Peardownloader.js

Licence: mit
一个支持多协议、多源、混合P2P-CDN的下载器

Programming Languages

javascript
184084 projects - #8 most used programming language

Projects that are alternatives of or similar to Peardownloader.js

Pearplayer.js
支持WebRTC的多源多协议混合P2P-CDN的流媒体播放器
Stars: ✭ 512 (+201.18%)
Mutual labels:  webrtc, p2p, cdn, browser
Peerjs
Simple peer-to-peer with WebRTC
Stars: ✭ 9,888 (+5716.47%)
Mutual labels:  webrtc, p2p, browser
Android P2p Engine
Let your viewers become your unlimitedly scalable CDN.
Stars: ✭ 70 (-58.82%)
Mutual labels:  webrtc, p2p, cdn
Peertransfer
📦 • Send a file p2p and e2e encrypted in your browser using WebRTC.
Stars: ✭ 238 (+40%)
Mutual labels:  webrtc, p2p, browser
Webtorrent
⚡️ Streaming torrent client for the web
Stars: ✭ 25,554 (+14931.76%)
Mutual labels:  webrtc, p2p, browser
Simple Peer
📡 Simple WebRTC video, voice, and data channels
Stars: ✭ 5,923 (+3384.12%)
Mutual labels:  webrtc, p2p, browser
Hlsjs P2p Engine
Let your viewers become your unlimitedly scalable CDN.
Stars: ✭ 759 (+346.47%)
Mutual labels:  webrtc, p2p, cdn
Ios P2p Engine
Let your viewers become your unlimitedly scalable CDN.
Stars: ✭ 31 (-81.76%)
Mutual labels:  webrtc, p2p, cdn
P2p Cdn Sdk Javascript
Free p2p cdn github javascript sdk to reduce video streaming costs of live and on demand video using webrtc by upto 90% and improve scalability by 6x - 🚀 Vadootv 🚀
Stars: ✭ 158 (-7.06%)
Mutual labels:  webrtc, p2p, cdn
U2web
stream video with p2p
Stars: ✭ 97 (-42.94%)
Mutual labels:  webrtc, p2p
Wikipediap2p
WikipediaP2P.org Chrome Extension
Stars: ✭ 105 (-38.24%)
Mutual labels:  p2p, browser
Spitfire
An easy to use WebRTC Datachannels library for .NET applications.
Stars: ✭ 164 (-3.53%)
Mutual labels:  webrtc, p2p
Libcrtc
WebRTC C++ library built on top of chromium webrtc.
Stars: ✭ 89 (-47.65%)
Mutual labels:  webrtc, p2p
Decentraleyes
This repository has a new home: https://git.synz.io/Synzvato/decentraleyes
Stars: ✭ 1,452 (+754.12%)
Mutual labels:  cdn, browser
Camus
Peer-to-peer group video chat using WebRTC, Python, and Javascript
Stars: ✭ 75 (-55.88%)
Mutual labels:  webrtc, p2p
Wave Share
Serverless, peer-to-peer, local file sharing through sound
Stars: ✭ 1,641 (+865.29%)
Mutual labels:  webrtc, p2p
Hublin
DEPRECATED - An easy and free video conference service based on WebRTC
Stars: ✭ 1,614 (+849.41%)
Mutual labels:  webrtc, p2p
Rdcli
The simple way to download and unrestrict DDL files, torrents and magnets
Stars: ✭ 75 (-55.88%)
Mutual labels:  p2p, download
Roll Call
📞 Free and reliable audio calls for everyone w/ browser p2p.
Stars: ✭ 1,563 (+819.41%)
Mutual labels:  webrtc, p2p
Metastream
Watch streaming media with friends.
Stars: ✭ 1,926 (+1032.94%)
Mutual labels:  webrtc, p2p


PearDownloader.js

一个支持多协议、多源和混合P2P-CDN的下载器

npm jsdelivr License


English

PearPlayer.js的发布吸引了业界的持续关注,同时,我们也收集到许多宝贵建议。 一方面我们将持续维护更新PearPlayer,使其支持更多的拓展功能; 另一方面我们将更底层、更基础且适用范围更广的相关组件重新整理,专注于节点的选择及数据的调度,将多源传输部分剥离出来,形成PearDownloader.js。

PearDownloader(梨享下载器)[Demo]PearPlayer的底层下载模块, 实现了融合HTTP(包含HTTPS、HTTP2)、WebRTC的多协议、多源、低延迟和高带宽利用率的无插件Web端下载加速能力。 基于高效的调度算法将来自多个节点的数据拼接形成完整的文件或将有序的数据/媒体流喂给上层应用,例如音视频播放器, PearDownloader由此能在保证下载速度的前提下最大化P2P率。

PearDownloader的发布,旨在降低已有成熟播放器的内容提供商(CP)的迁移成本:CP厂商可以按需将其集成到自有产品中,实现Web P2P能力;或者调度Pear Fog的海量节点资源,享受低成本、高质量的共享雾CDN服务。 PearDownloader支持更多样化的文件类型,以及更灵活的调度算法、调度策略的选择,满足更广阔、灵活、多变的业务场景与业务需求。

arch

通过<script>标签将pear-downloader.min.js导入到HTML即可使用。 参考以下代码示例,或查看/examples/downloader-test.htmlget-started了解使用方法。

特性

  • P2P能力基于国际标准的WebRTC,无须安装任何客户端或插件
  • 多协议(HTTP, HTTPS, WebRTC)、多源
  • 多源传输能力支持目前所有已知主流浏览器(当浏览器不支持WebRTC时全调度HTTP节点)
  • 通过浏览器内核的MSE,可支持音视频的边下边播
  • 自研的调度算法,在保证下载速度的前提下最大化P2P率(用户亦可实现自己的调度算法,以满足不同场景需求)
  • 默认无需填参数(内部根据文件属性作自适应),高级使用模式可自行调整算法和参数
  • 可选接入低成本、高可用的Pear Fog CDN
  • 协议默认通过TLS/DTLS全加密,无DPI特征;并可通过Pear Fog组件的动态端口映射进一步消除统计学特征
  • 具备Browser P2P能力(基于WebTorrent)

使用方法

首先通过script标签导入pear-downloader.min.js:

<script src="./dist/pear-downloader.min.js"></script>

或使用CDN:

<script src="https://cdn.jsdelivr.net/npm/[email protected]"></script>

假设要下载https://example.com/file.zip

<script>
  var downloader = new PearDownloader('https://example.com/file.zip');
</script>

如何为自己的文件加速?

示例中的文件是已经分发过的,那么如何为任意文件加速呢?很简单,只需在文件分发系统中添加您的文件url, 即可利用Pear的海量节点为您的文件下载加速!具体教程请点击这里(文件的名字需要加上Pear-Demo-前缀, 如Pear-Demo-file.zip

谁在使用我们的产品?

PearDownloader文档

致谢

特别感谢以下项目,为本项目提供了部分灵感以及API设计参考:

演讲与媒体报道

License

MIT. Copyright (c) Pear Limited

帮助与支持

E-mail: [email protected];用户QQ群:373594967CP/CDN接入、OEM与其他商务合作

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].