refactor(cli): move the benchmarkd command to folder

pull/90/head
moonrailgun 2 years ago
parent 3f6c3b08d8
commit 48145a01ee

@ -0,0 +1,11 @@
import { CommandModule } from 'yargs';
import { benchMessageCommand } from './message';
// https://docs.docker.com/engine/api/v1.41/
export const benchmarkCommand: CommandModule = {
command: 'benchmark',
describe: 'Tailchat Benchmark Test',
builder: (yargs) => yargs.command(benchMessageCommand).demandCommand(),
handler(args) {},
};

@ -10,15 +10,11 @@ import ora from 'ora';
import prettyMs from 'pretty-ms';
import filesize from 'filesize';
export const benchCommand: CommandModule = {
command: 'bench',
describe: 'Benchmark',
builder: (yargs) =>
yargs
.command(
'message',
export const benchMessageCommand: CommandModule = {
command: 'message',
describe:
'Stress testing through Tailchat network requests (suitable for pure business testing)',
(yargs) =>
builder: (yargs) =>
yargs
.option('groupId', {
describe: 'Group ID',
@ -50,8 +46,7 @@ export const benchCommand: CommandModule = {
type: 'number',
default: Infinity,
}),
async (args) => {
async handler(args) {
config(); // 加载环境变量
const broker = new TcBroker({
@ -66,9 +61,9 @@ export const benchCommand: CommandModule = {
console.log('===============');
await startBenchmark<number>({
parallel: args.parallel,
parallelLimit: args.parallelLimit,
number: args.num,
parallel: args.parallel as boolean,
parallelLimit: args.parallelLimit as number,
number: args.num as number,
task: async (i) => {
const start = process.hrtime();
await broker.call(
@ -97,10 +92,7 @@ export const benchCommand: CommandModule = {
});
await broker.stop();
}
)
.demandCommand(),
handler() {},
},
};
/**

@ -4,7 +4,7 @@ import { createCommand } from './commands/create';
import { connectCommand } from './commands/connect';
import { appCommand } from './commands/app';
import { declarationCommand } from './commands/declaration';
import { benchCommand } from './commands/bench';
import { benchmarkCommand } from './commands/benchmark';
import { dockerCommand } from './commands/docker';
import { usageCommand } from './commands/usage';
import { registryCommand } from './commands/registry';
@ -15,7 +15,7 @@ yargs
.command(createCommand)
.command(connectCommand)
.command(appCommand)
.command(benchCommand)
.command(benchmarkCommand)
.command(declarationCommand)
.command(dockerCommand)
.command(registryCommand)

Loading…
Cancel
Save