Merge branch 'master' into standalone-server
Conflicts: app.js npm-shrinkwrap.json package.json
This commit is contained in:
commit
c56ef8e0da
42
NEWS.md
42
NEWS.md
@ -1,10 +1,50 @@
|
|||||||
# Changelog
|
# Changelog
|
||||||
|
|
||||||
## 2.8.1
|
## 2.12.1
|
||||||
|
|
||||||
Released 2015-mm-dd
|
Released 2015-mm-dd
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
## 2.12.0
|
||||||
|
|
||||||
|
Released 2015-08-27
|
||||||
|
|
||||||
|
Announcements:
|
||||||
|
- Upgrades windshaft to [0.51.0](https://github.com/CartoDB/Windshaft/releases/tag/0.51.0)
|
||||||
|
|
||||||
|
New features:
|
||||||
|
- Make http and https globalAgent options configurable
|
||||||
|
* If config is not provided it configures them with default values
|
||||||
|
|
||||||
|
|
||||||
|
## 2.11.0
|
||||||
|
|
||||||
|
Released 2015-08-26
|
||||||
|
|
||||||
|
Announcements:
|
||||||
|
- Upgrades windshaft to [0.50.0](https://github.com/CartoDB/Windshaft/releases/tag/0.50.0)
|
||||||
|
|
||||||
|
|
||||||
|
## 2.10.0
|
||||||
|
|
||||||
|
Released 2015-08-18
|
||||||
|
|
||||||
|
New features:
|
||||||
|
- Exposes metatile cache configuration for tilelive-mapnik, see configuration sample files for more information.
|
||||||
|
|
||||||
|
Announcements:
|
||||||
|
- Upgrades windshaft to [0.49.0](https://github.com/CartoDB/Windshaft/releases/tag/0.49.0)
|
||||||
|
|
||||||
|
|
||||||
|
## 2.9.0
|
||||||
|
|
||||||
|
Released 2015-08-06
|
||||||
|
|
||||||
|
New features:
|
||||||
|
- Send memory usage stats
|
||||||
|
|
||||||
|
|
||||||
## 2.8.0
|
## 2.8.0
|
||||||
|
|
||||||
Released 2015-07-15
|
Released 2015-07-15
|
||||||
|
30
app.js
30
app.js
@ -1,6 +1,10 @@
|
|||||||
|
var http = require('http');
|
||||||
|
var https = require('https');
|
||||||
var path = require('path');
|
var path = require('path');
|
||||||
var fs = require('fs');
|
var fs = require('fs');
|
||||||
|
|
||||||
|
var _ = require('underscore');
|
||||||
|
|
||||||
var ENVIRONMENT;
|
var ENVIRONMENT;
|
||||||
if ( process.argv[2] ) {
|
if ( process.argv[2] ) {
|
||||||
ENVIRONMENT = process.argv[2];
|
ENVIRONMENT = process.argv[2];
|
||||||
@ -38,6 +42,17 @@ if (global.environment.uv_threadpool_size) {
|
|||||||
process.env.UV_THREADPOOL_SIZE = global.environment.uv_threadpool_size;
|
process.env.UV_THREADPOOL_SIZE = global.environment.uv_threadpool_size;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// set global HTTP and HTTPS agent default configurations
|
||||||
|
// ref https://nodejs.org/api/http.html#http_new_agent_options
|
||||||
|
var agentOptions = _.defaults(global.environment.httpAgent || {}, {
|
||||||
|
keepAlive: false,
|
||||||
|
keepAliveMsecs: 1000,
|
||||||
|
maxSockets: Infinity,
|
||||||
|
maxFreeSockets: 256
|
||||||
|
});
|
||||||
|
http.globalAgent = new http.Agent(agentOptions);
|
||||||
|
https.globalAgent = new https.Agent(agentOptions);
|
||||||
|
|
||||||
if ( global.environment.log_filename ) {
|
if ( global.environment.log_filename ) {
|
||||||
var logdir = path.dirname(global.environment.log_filename);
|
var logdir = path.dirname(global.environment.log_filename);
|
||||||
// See cwd inlog4js.configure call below
|
// See cwd inlog4js.configure call below
|
||||||
@ -79,12 +94,19 @@ server.listen(serverOptions.bind.port, serverOptions.bind.host);
|
|||||||
var version = require("./package").version;
|
var version = require("./package").version;
|
||||||
|
|
||||||
server.on('listening', function() {
|
server.on('listening', function() {
|
||||||
console.log(
|
console.log(
|
||||||
"Windshaft tileserver %s started on %s:%s (%s)",
|
"Windshaft tileserver %s started on %s:%s PID=%d (%s)",
|
||||||
version, serverOptions.bind.host, serverOptions.bind.port, ENVIRONMENT
|
version, serverOptions.bind.host, serverOptions.bind.port, process.pid, ENVIRONMENT
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
setInterval(function() {
|
||||||
|
var memoryUsage = process.memoryUsage();
|
||||||
|
Object.keys(memoryUsage).forEach(function(k) {
|
||||||
|
global.statsClient.gauge('windshaft.memory.' + k, memoryUsage[k]);
|
||||||
|
});
|
||||||
|
}, 5000);
|
||||||
|
|
||||||
process.on('SIGHUP', function() {
|
process.on('SIGHUP', function() {
|
||||||
global.log4js.clearAndShutdownAppenders(function() {
|
global.log4js.clearAndShutdownAppenders(function() {
|
||||||
global.log4js.configure(log4js_config);
|
global.log4js.configure(log4js_config);
|
||||||
|
@ -101,6 +101,17 @@ var config = {
|
|||||||
// wasted time.
|
// wasted time.
|
||||||
metatile: 2,
|
metatile: 2,
|
||||||
|
|
||||||
|
// tilelive-mapnik uses an internal cache to store tiles/grids
|
||||||
|
// generated when using metatile. This options allow to tune
|
||||||
|
// the behaviour for that internal cache.
|
||||||
|
metatileCache: {
|
||||||
|
// Time an object must stay in the cache until is removed
|
||||||
|
ttl: 0,
|
||||||
|
// Whether an object must be removed after the first hit
|
||||||
|
// Usually you want to use `true` here when ttl>0.
|
||||||
|
deleteOnHit: false
|
||||||
|
},
|
||||||
|
|
||||||
// Override metatile behaviour depending on the format
|
// Override metatile behaviour depending on the format
|
||||||
formatMetatile: {
|
formatMetatile: {
|
||||||
png: 2,
|
png: 2,
|
||||||
@ -185,6 +196,13 @@ var config = {
|
|||||||
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
||||||
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
||||||
}
|
}
|
||||||
|
// For more details about this options check https://nodejs.org/api/http.html#http_new_agent_options
|
||||||
|
,httpAgent: {
|
||||||
|
keepAlive: true,
|
||||||
|
keepAliveMsecs: 1000,
|
||||||
|
maxSockets: 25,
|
||||||
|
maxFreeSockets: 256
|
||||||
|
}
|
||||||
,varnish: {
|
,varnish: {
|
||||||
host: 'localhost',
|
host: 'localhost',
|
||||||
port: 6082, // the por for the telnet interface where varnish is listening to
|
port: 6082, // the por for the telnet interface where varnish is listening to
|
||||||
|
@ -95,6 +95,17 @@ var config = {
|
|||||||
// wasted time.
|
// wasted time.
|
||||||
metatile: 2,
|
metatile: 2,
|
||||||
|
|
||||||
|
// tilelive-mapnik uses an internal cache to store tiles/grids
|
||||||
|
// generated when using metatile. This options allow to tune
|
||||||
|
// the behaviour for that internal cache.
|
||||||
|
metatileCache: {
|
||||||
|
// Time an object must stay in the cache until is removed
|
||||||
|
ttl: 0,
|
||||||
|
// Whether an object must be removed after the first hit
|
||||||
|
// Usually you want to use `true` here when ttl>0.
|
||||||
|
deleteOnHit: false
|
||||||
|
},
|
||||||
|
|
||||||
// Override metatile behaviour depending on the format
|
// Override metatile behaviour depending on the format
|
||||||
formatMetatile: {
|
formatMetatile: {
|
||||||
png: 2,
|
png: 2,
|
||||||
@ -179,6 +190,13 @@ var config = {
|
|||||||
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
||||||
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
||||||
}
|
}
|
||||||
|
// For more details about this options check https://nodejs.org/api/http.html#http_new_agent_options
|
||||||
|
,httpAgent: {
|
||||||
|
keepAlive: true,
|
||||||
|
keepAliveMsecs: 1000,
|
||||||
|
maxSockets: 25,
|
||||||
|
maxFreeSockets: 256
|
||||||
|
}
|
||||||
,varnish: {
|
,varnish: {
|
||||||
host: 'localhost',
|
host: 'localhost',
|
||||||
port: 6082, // the por for the telnet interface where varnish is listening to
|
port: 6082, // the por for the telnet interface where varnish is listening to
|
||||||
|
@ -95,6 +95,17 @@ var config = {
|
|||||||
// wasted time.
|
// wasted time.
|
||||||
metatile: 2,
|
metatile: 2,
|
||||||
|
|
||||||
|
// tilelive-mapnik uses an internal cache to store tiles/grids
|
||||||
|
// generated when using metatile. This options allow to tune
|
||||||
|
// the behaviour for that internal cache.
|
||||||
|
metatileCache: {
|
||||||
|
// Time an object must stay in the cache until is removed
|
||||||
|
ttl: 0,
|
||||||
|
// Whether an object must be removed after the first hit
|
||||||
|
// Usually you want to use `true` here when ttl>0.
|
||||||
|
deleteOnHit: false
|
||||||
|
},
|
||||||
|
|
||||||
// Override metatile behaviour depending on the format
|
// Override metatile behaviour depending on the format
|
||||||
formatMetatile: {
|
formatMetatile: {
|
||||||
png: 2,
|
png: 2,
|
||||||
@ -179,6 +190,13 @@ var config = {
|
|||||||
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
||||||
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
||||||
}
|
}
|
||||||
|
// For more details about this options check https://nodejs.org/api/http.html#http_new_agent_options
|
||||||
|
,httpAgent: {
|
||||||
|
keepAlive: true,
|
||||||
|
keepAliveMsecs: 1000,
|
||||||
|
maxSockets: 25,
|
||||||
|
maxFreeSockets: 256
|
||||||
|
}
|
||||||
,varnish: {
|
,varnish: {
|
||||||
host: 'localhost',
|
host: 'localhost',
|
||||||
port: 6082, // the por for the telnet interface where varnish is listening to
|
port: 6082, // the por for the telnet interface where varnish is listening to
|
||||||
|
@ -95,6 +95,17 @@ var config = {
|
|||||||
// wasted time.
|
// wasted time.
|
||||||
metatile: 2,
|
metatile: 2,
|
||||||
|
|
||||||
|
// tilelive-mapnik uses an internal cache to store tiles/grids
|
||||||
|
// generated when using metatile. This options allow to tune
|
||||||
|
// the behaviour for that internal cache.
|
||||||
|
metatileCache: {
|
||||||
|
// Time an object must stay in the cache until is removed
|
||||||
|
ttl: 0,
|
||||||
|
// Whether an object must be removed after the first hit
|
||||||
|
// Usually you want to use `true` here when ttl>0.
|
||||||
|
deleteOnHit: false
|
||||||
|
},
|
||||||
|
|
||||||
// Override metatile behaviour depending on the format
|
// Override metatile behaviour depending on the format
|
||||||
formatMetatile: {
|
formatMetatile: {
|
||||||
png: 2,
|
png: 2,
|
||||||
@ -181,6 +192,13 @@ var config = {
|
|||||||
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
unwatchOnRelease: false, // Send unwatch on release, see http://github.com/CartoDB/Windshaft-cartodb/issues/161
|
||||||
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
noReadyCheck: true // Check `no_ready_check` at https://github.com/mranney/node_redis/tree/v0.12.1#overloading
|
||||||
}
|
}
|
||||||
|
// For more details about this options check https://nodejs.org/api/http.html#http_new_agent_options
|
||||||
|
,httpAgent: {
|
||||||
|
keepAlive: true,
|
||||||
|
keepAliveMsecs: 1000,
|
||||||
|
maxSockets: 25,
|
||||||
|
maxFreeSockets: 256
|
||||||
|
}
|
||||||
,varnish: {
|
,varnish: {
|
||||||
host: '',
|
host: '',
|
||||||
port: null, // the por for the telnet interface where varnish is listening to
|
port: null, // the por for the telnet interface where varnish is listening to
|
||||||
|
642
npm-shrinkwrap.json
generated
642
npm-shrinkwrap.json
generated
File diff suppressed because it is too large
Load Diff
@ -1,7 +1,7 @@
|
|||||||
{
|
{
|
||||||
"private": true,
|
"private": true,
|
||||||
"name": "windshaft-cartodb",
|
"name": "windshaft-cartodb",
|
||||||
"version": "2.8.1",
|
"version": "2.12.1",
|
||||||
"description": "A map tile server for CartoDB",
|
"description": "A map tile server for CartoDB",
|
||||||
"keywords": [
|
"keywords": [
|
||||||
"cartodb"
|
"cartodb"
|
||||||
|
Loading…
Reference in New Issue
Block a user