2
0
Fork
You've already forked catalyst-proxy
0
A proxy that accelerates requests via multipart downloading
  • CoffeeScript 99.6%
  • JavaScript 0.4%
Find a file
2014年01月08日 21:12:06 +01:00
bin rename to catalyst-proxy, add a CLI utility 2014年01月06日 21:22:59 +01:00
src v0.2.0: bunch of bugfixes (requests now correctly end), add proxy CLI option, preliminary redirect support 2014年01月08日 21:12:06 +01:00
.gitignore first commit 2014年01月03日 22:46:05 +01:00
.npmignore first commit 2014年01月03日 22:46:05 +01:00
Gruntfile.coffee first commit 2014年01月03日 22:46:05 +01:00
LICENSE first commit 2014年01月03日 22:46:05 +01:00
package.json v0.2.0: bunch of bugfixes (requests now correctly end), add proxy CLI option, preliminary redirect support 2014年01月08日 21:12:06 +01:00
README.md fix README 2014年01月06日 23:30:43 +01:00

catalyst-proxy

A proxy that silently accelerates requests via multipart downloading. Officially the best thing ever.

catalyst-proxy establishes multiples connections to download a single resource from a web server, potentially increasing the download speed.

Only supports "streaming" acceleration for now: resources are cut into parts of equal length (--partSize CLI option) that are downloaded concurrently (--threads CLI option) and served sequentially. This behavior differs from most download managers and allows to consume the resource while downloading it.

Use-cases

  • Speed up video streaming websites, such as YouTube.
  • Speed up software and game downloaders/installers.
  • Speed up everything.

Installation

You need to have Node.JS >= 0.10.0 installed on your system.

$ npm install -g catalyst-proxy

To update:

$ npm update -g catalyst-proxy

Usage

$ catalyst start to boot up the proxy. Simply add the printed address and port as an HTTP proxy in your system settings and you're set.

$ catalyst start -h to list all available options.

Configuration

--partSize, --threads and --contentLength are the three CLI options you should be tweaking.

  • partSize specifies the size of each thread part. For example, if set to 1048576, it will cut the resource into parts of 1 megabyte = 1048576 bytes each. For video streaming, you should try to set this as low as is reasonable.
  • threads specifies the maximum amount of concurrent threads. For example, if set to 12, it will launch as many as 12 concurrent threads, each downloading a resource part of size partSize. Note that download speed will be balanced between threads.
  • contentLength specifies the minimum size of a resource for catalyst to try to download it using threaded downloading.