Skip to content

Commit 491b05f

Browse files
committed
feat: node code perf
1 parent 5985dbe commit 491b05f

File tree

56 files changed

+3463
-2867
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

56 files changed

+3463
-2867
lines changed

conf/cfg.json

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -37,11 +37,7 @@
3737
"router": {
3838
"filter": {
3939
"whiteDir": [
40-
"socket",
41-
"tables",
42-
"worker",
43-
"oss",
44-
"openai"
40+
4541
],
4642
"whiteFile": [
4743
"router.js"

local.js

Lines changed: 36 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,47 @@
1-
const express = require("express"); //express
2-
const conf = require("./conf/cfg"); //conf
3-
const fileApiRouters = require("./src/router")(conf); //file routers
1+
const express = require("express");
2+
const conf = require("./conf/cfg.json");
3+
const fileApiRouters = require("./src/controller/router")();
44
let resRouter = conf.router.res;
5+
const db = require("./src/tables/db"); //db
56

67
let app = express();
7-
console.log("resource including...")
8+
console.log("api init start ...")
89

910
//res
10-
for(let key in resRouter) app.use(key,express.static(resRouter[key]));
11+
for (let key in resRouter) {
12+
app.use(key, express.static(resRouter[key]));
13+
}
1114

1215
//file api
13-
for(let key in fileApiRouters) app.use(key,fileApiRouters[key])
16+
for (let key in fileApiRouters) {
17+
app.use(key, fileApiRouters[key])
18+
}
1419

20+
if (!conf.db.open) {// 没开db
1521

16-
app.listen(conf.node.port);
17-
console.log("express init...")
22+
app.use(async function (req, res, next) {
23+
req.ctx = {};
24+
req.ctx.tables = {};
25+
req.ctx.dbClient = {};
26+
await next();
27+
})
28+
app.listen(conf.node.port);
29+
console.log("express init done ...")
30+
console.log("web server runing on ", conf.node.port, " successful");
31+
} else { // 开了db
1832

33+
(async () => {
34+
let { tables, dbClient } = await db.excute(conf)
35+
console.log("db init done ...")
36+
app.use(async function (req, res, next) {
37+
req.ctx = {};
38+
req.ctx.tables = tables;
39+
req.ctx.dbClient = dbClient;
40+
await next();
41+
})
1942

20-
console.log("server runing on ",conf.node.port," successful");
43+
app.listen(conf.node.port);
44+
console.log("express init done ...")
45+
console.log("web server runing on ", conf.node.port, " successful");
46+
})();
47+
}

localsocket.js

Lines changed: 17 additions & 37 deletions
Original file line numberDiff line numberDiff line change
@@ -1,45 +1,25 @@
11
const http = require('http'); // http
22
const socketIO = require('socket.io'); //socket
3-
const app = require("express")(); //express
43
const db = require("./src/tables/db"); //db
54
const conf = require("./conf/cfg.json"); //conf
6-
const utils = require("./utils/utils"); //utils
75
const socket = require("./src/socket/index") //socket handler
86

9-
let tables = {};
10-
let sql = {};
7+
// Socket连接监听
8+
let io = socketIO.listen(http.createServer().listen(conf.ws.port));
119

12-
if(conf.db.open){
13-
// db init
14-
let dbData = db.excute(conf);
15-
tables = dbData.tables;
16-
sql = dbData.sql;
17-
18-
app.use(async function (req,res,next) {
19-
req.ctx = {};
20-
req.ctx.tables = tables;
21-
req.ctx.sql = sql;
22-
req.ctx.Sql = Sql;
23-
await next();
24-
})
25-
console.log("db init...")
26-
}
10+
if (!conf.db.open) {// 没开db
11+
12+
console.log("db not open ...")
13+
socket.excute({}, {}, io);
14+
console.log("socket init done ...")
15+
console.log("socket server listen on ", conf.ws.port, " successful");
16+
} else { // 开了db
2717

28-
29-
//log flow init --日志流水初始
30-
app.use(async function (req,res,next) {
31-
res.tl = {};
32-
res.tl.flowId = utils.genFlow();
33-
await next();
34-
})
35-
console.log("flow init...")
36-
37-
//Socket连接监听
38-
let io = socketIO.listen(
39-
http.createServer().listen(conf.ws.port)
40-
);
41-
conf.ws.io = io;
42-
socket.excute(tables, sql, conf);
43-
console.log("socket init...")
44-
45-
console.log("socket listen on ",conf.ws.port," successful");
18+
(async () => {
19+
let { tables, dbClient } = await db.excute(conf)
20+
console.log("db init done ...")
21+
socket.excute(tables, dbClient, io);
22+
console.log("socket init done ...")
23+
console.log("socket server listen on ", conf.ws.port, " successful");
24+
})();
25+
}

res/js/index.js

Lines changed: 17 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1662,7 +1662,12 @@ axios.get(window.prefix + "/api/comm/initData", {}).then((initData) => {
16621662
return;
16631663
}
16641664
this.setNickName();
1665-
this.socket.emit('createAndJoin', { room: this.roomId, nickName : this.nickName });
1665+
this.socket.emit('createAndJoin', {
1666+
room: this.roomId,
1667+
type : 'password',
1668+
password : '',
1669+
nickName : this.nickName
1670+
});
16661671
this.isJoined = true;
16671672
this.addPopup({
16681673
title : "文件房间",
@@ -1694,7 +1699,11 @@ axios.get(window.prefix + "/api/comm/initData", {}).then((initData) => {
16941699
return;
16951700
}
16961701
this.setNickName();
1697-
this.socket.emit('createAndJoin', { room: this.roomId, type: type, nickName : this.nickName });
1702+
this.socket.emit('createAndJoin', {
1703+
room: this.roomId,
1704+
type: type,
1705+
nickName : this.nickName
1706+
});
16981707
this.isJoined = true;
16991708
this.addPopup({
17001709
title : "流媒体房间",
@@ -1735,7 +1744,12 @@ axios.get(window.prefix + "/api/comm/initData", {}).then((initData) => {
17351744
return;
17361745
}
17371746
this.setNickName();
1738-
this.socket.emit('createAndJoin', { room: this.roomId, password: password, nickName : this.nickName });
1747+
this.socket.emit('createAndJoin', {
1748+
room: this.roomId,
1749+
type : 'password',
1750+
password: password,
1751+
nickName : this.nickName
1752+
});
17391753
this.isJoined = true;
17401754
this.addPopup({
17411755
title : "密码房间",

server.js

Lines changed: 45 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,57 @@
1-
const express = require("express"); //express
2-
const conf = require("./conf/cfg"); //conf
3-
const fileApiRouters = require("./src/router")(conf); //file routers
1+
const express = require("express");
2+
const fs = require('fs');
3+
const https = require('https');
4+
const conf = require("./conf/cfg.json");
5+
const fileApiRouters = require("./src/controller/router")();
46
let resRouter = conf.router.res;
5-
const fs = require('fs'); // fs
6-
const https = require('https'); // http
7+
const db = require("./src/tables/db");
78

89
let app = express();
9-
console.log("resource including...")
10+
console.log("api init start ...")
1011

1112
//res
1213
for(let key in resRouter) app.use(key,express.static(resRouter[key]));
1314

1415
//file api
1516
for(let key in fileApiRouters) app.use(key,fileApiRouters[key])
1617

17-
let options = {
18-
key: fs.readFileSync('./conf/keys/server.key'),
19-
cert: fs.readFileSync('./conf/keys/server.crt')
20-
}
21-
https.createServer(options,app).listen(conf.node.port);
22-
console.log("express init...")
18+
if (!conf.db.open) {// 没开db
19+
20+
app.use(async function (req, res, next) {
21+
req.ctx = {};
22+
req.ctx.tables = {};
23+
req.ctx.dbClient = {};
24+
await next();
25+
})
26+
let options = {
27+
key: fs.readFileSync('./conf/keys/server.key'),
28+
cert: fs.readFileSync('./conf/keys/server.crt')
29+
}
30+
https.createServer(options,app).listen(conf.node.port);
31+
console.log("express init done ...")
32+
console.log("web server runing on ", conf.node.port, " successful");
33+
34+
} else {// 开了db
35+
36+
(async () => {
37+
let { tables, dbClient } = await db.excute(conf)
38+
console.log("db init done ...")
39+
app.use(async function (req, res, next) {
40+
req.ctx = {};
41+
req.ctx.tables = tables;
42+
req.ctx.dbClient = dbClient;
43+
await next();
44+
})
2345

46+
let options = {
47+
key: fs.readFileSync('./conf/keys/server.key'),
48+
cert: fs.readFileSync('./conf/keys/server.crt')
49+
}
50+
https.createServer(options,app).listen(conf.node.port);
51+
console.log("express init done ...")
52+
console.log("web server runing on ", conf.node.port, " successful");
53+
})();
54+
55+
}
2456

25-
console.log("server runing on ",conf.node.port," successful");
57+
console.log("web server runing on ",conf.node.port," successful");

serversocket.js

Lines changed: 25 additions & 42 deletions
Original file line numberDiff line numberDiff line change
@@ -1,50 +1,33 @@
1-
const https = require('https'); // http
2-
const socketIO = require('socket.io'); //socket
3-
const app = require("express")(); //express
4-
const fs = require('fs'); // fs
5-
const db = require("./src/tables/db"); //db
6-
const conf = require("./conf/cfg.json"); //conf
7-
const utils = require("./utils/utils"); //utils
8-
const socket = require("./src/socket/index") //socket handler
9-
10-
let tables = {};
11-
let sql = {};
12-
if(conf.db.open){
13-
// db init
14-
let dbData = db.excute(conf);
15-
tables = dbData.tables;
16-
sql = dbData.sql;
17-
app.use(async function (req,res,next) {
18-
req.ctx = {};
19-
req.ctx.tables = tables;
20-
req.ctx.sql = sql;
21-
req.ctx.Sql = Sql;
22-
await next();
23-
})
24-
console.log("db init...")
25-
}
26-
27-
28-
//log flow init --日志流水初始
29-
app.use(async function (req,res,next) {
30-
res.tl = {};
31-
res.tl.flowId = utils.genFlow();
32-
await next();
33-
})
34-
console.log("flow init...")
35-
1+
const https = require('https');
2+
const socketIO = require('socket.io');
3+
const fs = require('fs');
4+
const db = require("./src/tables/db");
5+
const conf = require("./conf/cfg.json");
6+
const socket = require("./src/socket/index")
367

378
//Socket连接监听
389
let options = {
39-
key: fs.readFileSync('./conf/keys/server.key'),
40-
cert: fs.readFileSync('./conf/keys/server.crt')
10+
key: fs.readFileSync('./conf/keys/server.key'),
11+
cert: fs.readFileSync('./conf/keys/server.crt')
4112
}
4213
let io = socketIO.listen(
43-
https.createServer(options).listen(conf.ws.ssl_port)
14+
https.createServer(options).listen(conf.ws.ssl_port)
4415
);
45-
conf.ws.io = io;
46-
socket.excute(tables, sql, conf);
47-
console.log("socket init...")
4816

17+
if (!conf.db.open) {// 没开db
18+
19+
console.log("db not open ...")
20+
socket.excute({}, {}, io);
21+
console.log("socket init done ...")
22+
console.log("socket server listen on ", conf.ws.port, " successful");
23+
24+
} else {// 开了db
4925

50-
console.log("socket listen on ",conf.ws.ssl_port," successful");
26+
(async () => {
27+
let { tables, dbClient } = await db.excute(conf)
28+
console.log("db init done ...")
29+
socket.excute(tables, dbClient, io);
30+
console.log("socket init done ...")
31+
console.log("socket server listen on ", conf.ws.port, " successful");
32+
})();
33+
}

src/bussiness/dog/dog.js

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
const dog = require("./../../dao/dog/dog");
2+
3+
/**
4+
* 操作记录
5+
* @param {*} data
6+
*/
7+
async function dogData(data) {
8+
let req = {
9+
ctx: {
10+
tables: data.tables
11+
},
12+
params: data
13+
};
14+
let res = 0;
15+
16+
try {
17+
res = await dog.addDogData(req, null);
18+
} catch (e) {
19+
console.log(e)
20+
}
21+
22+
return res && res.dataValues ? res.dataValues.id : 0
23+
}
24+
25+
26+
27+
/**
28+
* 获取最近10条公共聊天室数据
29+
* @param {*} data
30+
*/
31+
async function getDogChating10Info(data) {
32+
let req = {
33+
ctx: {
34+
tables: data.tables,
35+
dbClient: data.dbClient
36+
}
37+
};
38+
39+
return await dog.getDogChating10Info(req, null);
40+
}
41+
42+
/**
43+
* 获取操作数据信息
44+
* @param {*} data
45+
* @returns
46+
*/
47+
async function getDogManageInfo(data){
48+
let req = {
49+
ctx: {
50+
tables: data.tables,
51+
dbClient: data.dbClient,
52+
sockets: data.sockets
53+
},
54+
params: {
55+
limit: 10,
56+
day: data.day,
57+
}
58+
}
59+
return await dog.getDogManageInfo(req, null);
60+
}
61+
62+
63+
module.exports = {
64+
dogData,
65+
getDogChating10Info,
66+
getDogManageInfo
67+
}

0 commit comments

Comments
 (0)