catalyst-proxy/README.md
2014-01-06 23:30:43 +01:00

39 lines
1.8 KiB
Markdown

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.