Commit a2bd1205 authored by mercury233's avatar mercury233

update load users

parent c0f441a9
......@@ -107,6 +107,21 @@ roomlist = require './roomlist.js' if settings.modules.enable_websocket_roomlist
# cache users of mycard login
users_cache = {}
if settings.modules.mycard_auth and process.env.MYCARD_AUTH_DATABASE
pgClient = require('pg').Client
pg_client = new pgClient(process.env.MYCARD_AUTH_DATABASE)
pg_query = pg_client.query('SELECT username, id from users')
pg_query.on 'row', (row) ->
#log.info "load user", row.username, row.id
users_cache[row.username] = row.id
return
pg_query.on 'end', (result) ->
log.info "users loaded", result.rowCount
return
pg_client.on 'drain', pg_client.end.bind(pg_client)
log.info "loading mycard user..."
pg_client.connect()
# 获取可用内存
get_memory_usage = ()->
prc_free = spawnSync("free", [])
......@@ -1299,19 +1314,6 @@ if settings.modules.tips
return
, 30000
if settings.modules.mycard_auth and process.env.MYCARD_AUTH_DATABASE
pg = require('pg')
pg.connect process.env.MYCARD_AUTH_DATABASE, (error, client, done)->
throw error if error
client.query 'SELECT username, id from users', (error, result)->
throw error if error
done()
for row in result.rows
users_cache[row.username] = row.id
console.log("users loaded", _.keys(users_cache).length)
return
return
ygopro.stoc_follow 'DUEL_START', false, (buffer, info, client, server)->
room=ROOM_all[client.rid]
return unless room
......
// Generated by CoffeeScript 1.10.0
(function() {
var Cloud_replay_ids, Graveyard, ROOM_all, ROOM_bad_ip, ROOM_ban_player, ROOM_connected_ip, ROOM_find_by_name, ROOM_find_by_port, ROOM_find_or_create_ai, ROOM_find_or_create_by_name, ROOM_find_or_create_random, ROOM_players_banned, ROOM_players_oppentlist, ROOM_validate, Room, _, ban_user, bunyan, crypto, date, defaultconfig, execFile, fs, get_memory_usage, http, http_server, https, https_server, list, load_dialogues, load_tips, log, moment, nconf, net, options, os, path, pg, redis, redisdb, request, requestListener, roomlist, settings, spawn, spawnSync, tribute, url, users_cache, wait_room_start, windbot_process, ygopro, zlib;
var Cloud_replay_ids, Graveyard, ROOM_all, ROOM_bad_ip, ROOM_ban_player, ROOM_connected_ip, ROOM_find_by_name, ROOM_find_by_port, ROOM_find_or_create_ai, ROOM_find_or_create_by_name, ROOM_find_or_create_random, ROOM_players_banned, ROOM_players_oppentlist, ROOM_validate, Room, _, ban_user, bunyan, crypto, date, defaultconfig, execFile, fs, get_memory_usage, http, http_server, https, https_server, list, load_dialogues, load_tips, log, moment, nconf, net, options, os, path, pgClient, pg_client, pg_query, redis, redisdb, request, requestListener, roomlist, settings, spawn, spawnSync, tribute, url, users_cache, wait_room_start, windbot_process, ygopro, zlib;
net = require('net');
......@@ -155,6 +155,21 @@
users_cache = {};
if (settings.modules.mycard_auth && process.env.MYCARD_AUTH_DATABASE) {
pgClient = require('pg').Client;
pg_client = new pgClient(process.env.MYCARD_AUTH_DATABASE);
pg_query = pg_client.query('SELECT username, id from users');
pg_query.on('row', function(row) {
users_cache[row.username] = row.id;
});
pg_query.on('end', function(result) {
log.info("users loaded", result.rowCount);
});
pg_client.on('drain', pg_client.end.bind(pg_client));
log.info("loading mycard user...");
pg_client.connect();
}
get_memory_usage = function() {
var actualFree, buffers, cached, free, line, lines, percentUsed, prc_free, total;
prc_free = spawnSync("free", []);
......@@ -1587,28 +1602,6 @@
}, 30000);
}
if (settings.modules.mycard_auth && process.env.MYCARD_AUTH_DATABASE) {
pg = require('pg');
pg.connect(process.env.MYCARD_AUTH_DATABASE, function(error, client, done) {
if (error) {
throw error;
}
client.query('SELECT username, id from users', function(error, result) {
var k, len, ref, row;
if (error) {
throw error;
}
done();
ref = result.rows;
for (k = 0, len = ref.length; k < len; k++) {
row = ref[k];
users_cache[row.username] = row.id;
}
console.log("users loaded", _.keys(users_cache).length);
});
});
}
ygopro.stoc_follow('DUEL_START', false, function(buffer, info, client, server) {
var deck_name, deck_text, k, len, player, ref, room;
room = ROOM_all[client.rid];
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment