Optimization

This commit is contained in:
2026-07-09 15:58:22 -03:00
parent d4046526c9
commit 4a0383dce1
5 changed files with 174 additions and 54 deletions
+4
View File
@@ -95,6 +95,7 @@ async function loadServerConfig() {
// SSH / general
document.getElementById("cfgLimitUp").value = c.default_limit_mbps_up || 0;
document.getElementById("cfgLimitDown").value = c.default_limit_mbps_down || 0;
document.getElementById("cfgMaxTotalConns").value = c.max_total_connections || 0;
document.getElementById("cfgQuiet").checked = !!c.quiet;
document.getElementById("cfgUserCount").checked = !!c.user_count;
@@ -133,6 +134,7 @@ async function loadServerConfig() {
const u = c.udpgw || {};
document.getElementById("cfgUdpgwListen").value = u.listen || "";
document.getElementById("cfgUdpgwMaxConns").value = u.max_client_conns || 0;
document.getElementById("cfgUdpgwMaxClients").value = u.max_clients || 0;
document.getElementById("cfgUdpgwIdle").value = u.idle_timeout || "";
document.getElementById("cfgUdpgwMapTTL").value = u.map_ttl || "";
document.getElementById("cfgUdpgwAutoRestart").value = u.auto_restart_interval || "";
@@ -175,6 +177,7 @@ async function saveServerConfig() {
admin_dir: "/opt/sshpanel/admin",
default_limit_mbps_up: parseInt(document.getElementById("cfgLimitUp").value || "0", 10),
default_limit_mbps_down: parseInt(document.getElementById("cfgLimitDown").value || "0", 10),
max_total_connections: parseInt(document.getElementById("cfgMaxTotalConns").value || "0", 10),
quiet: document.getElementById("cfgQuiet").checked,
user_count: document.getElementById("cfgUserCount").checked,
banner: document.getElementById("cfgBanner").value,
@@ -204,6 +207,7 @@ async function saveServerConfig() {
udpgw: document.getElementById("cfgUdpgwEnabled").checked ? {
listen: document.getElementById("cfgUdpgwListen").value.trim(),
max_client_conns: parseInt(document.getElementById("cfgUdpgwMaxConns").value || "0", 10),
max_clients: parseInt(document.getElementById("cfgUdpgwMaxClients").value || "0", 10),
idle_timeout: document.getElementById("cfgUdpgwIdle").value.trim(),
map_ttl: document.getElementById("cfgUdpgwMapTTL").value.trim(),
auto_restart_interval: document.getElementById("cfgUdpgwAutoRestart").value.trim(),
+8
View File
@@ -976,6 +976,10 @@
<label>Default Download Limit (Mbps)</label>
<input type="number" id="cfgLimitDown" min="0" placeholder="0 = unlimited"/>
</div>
<div class="field">
<label>Max Total SSH Connections <span class="hint">0 = default (10000) · -1 = unlimited</span></label>
<input type="number" id="cfgMaxTotalConns" min="-1" placeholder="10000" title="Global cap across all users. New connections past this are rejected before the SSH handshake, so a surge cannot exhaust memory/CPU. Raise it if the server has resources for more; set -1 to remove the cap entirely."/>
</div>
</div>
<div style="display:flex;gap:16px;margin-top:8px;flex-wrap:wrap;">
<label style="font-size:.73rem;display:flex;align-items:center;gap:5px;cursor:pointer;">
@@ -1104,6 +1108,10 @@
<label>Max UDP Sessions Per Client <span class="hint">(not total server users)</span></label>
<input type="number" id="cfgUdpgwMaxConns" min="0" placeholder="10" title="Per connected client. This is not the total number of UDPGW users allowed on the server."/>
</div>
<div class="field">
<label>Max Total Clients <span class="hint">0 = default (10000)</span></label>
<input type="number" id="cfgUdpgwMaxClients" min="0" placeholder="10000" title="Total concurrent UDPGW client connections allowed on the server. New clients past this are rejected. Raise it if the server has resources for more."/>
</div>
<div class="field">
<label>Idle Timeout</label>
<input type="text" id="cfgUdpgwIdle" placeholder="2m"/>