Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/component/network
Measure network latency to make dynamic adjustments to content
https://github.com/component/network
Last synced: 12 days ago
JSON representation
Measure network latency to make dynamic adjustments to content
- Host: GitHub
- URL: https://github.com/component/network
- Owner: component
- Created: 2013-04-24T20:07:26.000Z (over 11 years ago)
- Default Branch: master
- Last Pushed: 2013-08-21T17:33:06.000Z (over 11 years ago)
- Last Synced: 2024-05-08T17:07:06.544Z (8 months ago)
- Language: JavaScript
- Size: 51.8 KB
- Stars: 39
- Watchers: 7
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- Changelog: History.md
Awesome Lists containing this project
README
# network
Measure network latency to make dynamic adjustments to content.
## Installation
$ component install component/network
## API
### network.measure(options)
Start a measurement with the given byte `.size` specified. A function
is returned which should be called _after_ the data transfer is complete. This
function returns the measurements:```js
{
duration: 5749,
size: 994868,
bps: 1408912.01,
kbps: 1375.89,
mbps: 1.34
}
```## Example
The following example measures image s3 download latency, and may be used
to detect a poor connection and respond with smaller images.```js
var network = require('network');
var latency = network.measure({ size: 994868 });var url = 'http://i.cloudup.com/iSVZF2meyeA.jpg?' + Date.now();
var img = new Image;img.onload = function(){
var res = latency();
console.log('%s mbps', res.mbps.toFixed(2));
};img.src = url;
```## License
MIT