Skip to content

Commit 83cb974

Browse files
committed
perf(reactive-rpc): ⚡️ benchmark new ws server
1 parent 0617436 commit 83cb974

File tree

2 files changed

+14
-3
lines changed

2 files changed

+14
-3
lines changed

src/server/__bench__/ping.bench.ts

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,21 +6,25 @@ import {Suite} from 'benchmark';
66
import {RpcPersistentClient, WebSocketChannel} from '../../reactive-rpc/common';
77
import {Writer} from '../../util/buffers/Writer';
88
import {BinaryRpcMessageCodec} from '../../reactive-rpc/common/codec/binary';
9+
import {CompactRpcMessageCodec} from '../../reactive-rpc/common/codec/compact';
910
import {CborJsonValueCodec} from '../../json-pack/codecs/cbor';
11+
import {JsonJsonValueCodec} from '../../json-pack/codecs/json';
1012
import {RpcCodec} from '../../reactive-rpc/common/codec/RpcCodec';
1113
import {WebSocket} from 'ws';
1214

1315
const main = async () => {
1416
const writer = new Writer(1024 * 4);
15-
const msg = new BinaryRpcMessageCodec();
16-
const req = new CborJsonValueCodec(writer);
17+
// const msg = new BinaryRpcMessageCodec();
18+
// const req = new CborJsonValueCodec(writer);
19+
const msg = new CompactRpcMessageCodec();
20+
const req = new JsonJsonValueCodec(writer);
1721
const codec = new RpcCodec(msg, req, req);
1822
const client = new RpcPersistentClient({
1923
codec,
2024
channel: {
2125
newChannel: () =>
2226
new WebSocketChannel({
23-
newSocket: () => new WebSocket('ws://localhost:9999/rpc', [codec.specifier()]) as any,
27+
newSocket: () => new WebSocket('ws://localhost:9999/rpc', [codec.specifier()], {perMessageDeflate: false}) as any,
2428
}),
2529
},
2630
});

src/server/index.ts

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,16 @@ import {RpcApp} from '../reactive-rpc/server/uws/RpcApp';
55
import {createCaller} from './routes';
66
import {Services} from './services/Services';
77
import type {MyCtx} from './services/types';
8+
import {RpcServer} from '../reactive-rpc/server/http1/RpcServer';
89

910
const app = new RpcApp<MyCtx>({
1011
uws: App({}),
1112
caller: createCaller(new Services()).caller,
1213
});
1314
app.startWithDefaults();
15+
16+
// const server = RpcServer.startWithDefaults({
17+
// port: 9999,
18+
// caller: createCaller(new Services()).caller,
19+
// logger: console,
20+
// });

0 commit comments

Comments
 (0)