X-Git-Url: https://git.immae.eu/?a=blobdiff_plain;f=scripts%2Fsimulate-many-viewers.ts;h=a993e175a4b193963ba34f3bd30ddd849488a617;hb=04852e14b4290b51e929d0f3019f9663ccf3ac24;hp=4ec928aa8501b14b09eb2ae91d08708c5efa8801;hpb=b9e49a45f5441fd1a2d49a10b88aaf4d425dc992;p=github%2FChocobozzz%2FPeerTube.git diff --git a/scripts/simulate-many-viewers.ts b/scripts/simulate-many-viewers.ts index 4ec928aa8..a993e175a 100644 --- a/scripts/simulate-many-viewers.ts +++ b/scripts/simulate-many-viewers.ts @@ -1,6 +1,13 @@ import Bluebird from 'bluebird' import { wait } from '@shared/core-utils' -import { createSingleServer, doubleFollow, PeerTubeServer, setAccessTokensToServers, waitJobs } from '@shared/server-commands' +import { + createSingleServer, + doubleFollow, + killallServers, + PeerTubeServer, + setAccessTokensToServers, + waitJobs +} from '@shared/server-commands' let servers: PeerTubeServer[] const viewers: { xForwardedFor: string }[] = [] @@ -9,6 +16,7 @@ let videoId: string run() .then(() => process.exit(0)) .catch(err => console.error(err)) + .finally(() => killallServers(servers)) async function run () { await prepare() @@ -38,10 +46,12 @@ async function prepare () { } } + const env = { PRODUCTION_CONSTANTS: 'true' } + servers = await Promise.all([ - createSingleServer(1, config, { nodeArgs: [ '--inspect' ] }), - createSingleServer(2, config), - createSingleServer(3, config) + createSingleServer(1, config, { env, nodeArgs: [ '--inspect' ] }), + createSingleServer(2, config, { env }), + createSingleServer(3, config, { env }) ]) await setAccessTokensToServers(servers) @@ -69,9 +79,13 @@ async function prepare () { async function runViewers () { console.log('Will run views of %d viewers.', viewers.length) + const before = new Date().getTime() + await Bluebird.map(viewers, viewer => { return servers[0].views.simulateView({ id: videoId, xForwardedFor: viewer.xForwardedFor }) - }, { concurrency: 100 }) + }, { concurrency: 500 }) + + console.log('Finished to run views in %d seconds.', (new Date().getTime() - before) / 1000) await wait(5000) }