JavaScript рдХреЛрдбрдордзреАрд▓ рдХреНрд░рд┐рдпрд╛ рд▓рдкрд╡рд┐рдгреНрдпрд╛рд╕рд╛рдареА рдЕрджреГрд╢реНрдп рдпреБрдирд┐рдХреЛрдб рд╡рд░реНрдг рд╡рд╛рдкрд░рдгреЗ

рджреНрд╡рд┐рджрд┐рд╢рд╛рддреНрдордХ рдордЬрдХреВрд░рд╛рдЪрд╛ рдбрд┐рд╕реНрдкреНрд▓реЗ рдХреНрд░рдо рдмрджрд▓рдгрд╛рд▒реНрдпрд╛ рдпреБрдирд┐рдХреЛрдб рдЕрдХреНрд╖рд░рд╛рдВрдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЯреНрд░реЛрдЬрди рд╕реЛрд░реНрд╕ рдЕрдЯреЕрдХ рдкрджреНрдзрддреАрдЪреЗ рдЕрдиреБрд╕рд░рдг рдХрд░реВрди, рд▓рдкрд╡рд┐рд▓реЗрд▓реНрдпрд╛ рдХреНрд░рд┐рдпрд╛рдВрдЪреА рдУрд│рдЦ рдХрд░реВрди рджреЗрдгрд╛рд░реЗ рджреБрд╕рд░реЗ рддрдВрддреНрд░ рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЗрд▓реЗ рдЧреЗрд▓реЗ рдЖрд╣реЗ, рдЬреЗ JavaScript рдХреЛрдбрд▓рд╛ рд▓рд╛рдЧреВ рдЖрд╣реЗ. рдирд╡реАрди рдкрджреНрдзрдд рдпреБрдирд┐рдХреЛрдб рд╡рд░реНрдг тАЬуЕдтАЭ (рдХреЛрдб 0x3164, тАЬрд╣рдВрдЧреБрд▓ рдлрд┐рд▓рд░тАЭ) рдЪреНрдпрд╛ рд╡рд╛рдкрд░рд╛рд╡рд░ рдЖрдзрд╛рд░рд┐рдд рдЖрд╣реЗ, рдЬреА рдЕрдХреНрд╖рд░рд╛рдВрдЪреНрдпрд╛ рд╢реНрд░реЗрдгреАрд╢реА рд╕рдВрдмрдВрдзрд┐рдд рдЖрд╣реЗ, рдкрд░рдВрддреБ рдХреЛрдгрддреАрд╣реА рджреГрд╢реНрдпрдорд╛рди рд╕рд╛рдордЧреНрд░реА рдирд╛рд╣реА. рдпреБрдирд┐рдХреЛрдб рд╢реНрд░реЗрдгреА рдЬреНрдпрд╛рдордзреНрдпреЗ рд╣реЗ рд╡рд░реНрдг рдЖрд╣реЗ рддреЗ ECMAScript 2015 рд╕реНрдкреЗрд╕рд┐рдлрд┐рдХреЗрд╢рди рдкрд╛рд╕реВрди JavaScript рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдирд╛рд╡рд╛рдВрдордзреНрдпреЗ рд╡рд╛рдкрд░рдгреНрдпрд╛рд╕рд╛рдареА рдкрд░рд╡рд╛рдирдЧреА рджреЗрдгреНрдпрд╛рдд рдЖрд▓реА рдЖрд╣реЗ, рдЬреНрдпрд╛рдореБрд│реЗ Notepad++ рдЖрдгрд┐ VS рдХреЛрдб рд╕рд╛рд░рдЦреНрдпрд╛ рд▓реЛрдХрдкреНрд░рд┐рдп рдХреЛрдб рдПрдбрд┐рдЯрд░рдордзреНрдпреЗ рдЕрджреГрд╢реНрдп рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕ рдХрд┐рдВрд╡рд╛ рдирд╡реАрди рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓реНрд╕ рддрдпрд╛рд░ рдХрд░рдгреЗ рд╢рдХреНрдп рдЭрд╛рд▓реЗ рдЖрд╣реЗ.

рдЙрджрд╛рд╣рд░рдг рдореНрд╣рдгреВрди, Node.js рдкреНрд▓реЕрдЯрдлреЙрд░реНрдорд╕рд╛рдареА рдХреЛрдб рджрд┐рд▓реЗрд▓рд╛ рдЖрд╣реЗ, рдЬреНрдпрд╛рдордзреНрдпреЗ, "уЕд" рдПрдХрд▓ рд╡рд░реНрдг рдЕрд╕рд▓реЗрд▓реЗ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рд╡рд╛рдкрд░реВрди, рдПрдХ рдмреЕрдХрдбреЛрдЕрд░ рд▓рдкрд╡рд┐рд▓рд╛ рдЖрд╣реЗ рдЬреЛ рдЖрдХреНрд░рдордгрдХрд░реНрддреНрдпрд╛рдиреЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХреЗрд▓реЗрд▓рд╛ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгреНрдпрд╛рд╕ рдЕрдиреБрдорддреА рджреЗрддреЛ: app.get('/ network_health', async (req, res) = > { const { timeout,уЕд} = req.query; // рдЦрд░рдВ рддрд░ рддреЗ "const { timeout,уЕд \u3164}" const checkCommands = [ 'ping -c 1 google. com', 'curl -s http:// example.com/',уЕд // рд╕реНрд╡рд▓реНрдкрд╡рд┐рд░рд╛рдо рдирдВрддрд░ рд╡рд░реНрдг \u3164 ];

рдкрд╣рд┐рд▓реНрдпрд╛ рджреГрд╖реНрдЯреАрдХреНрд╖реЗрдкрд╛рдд, рдмрд╛рд╣реНрдп рдкреЕрд░рд╛рдореАрдЯрд░рдордзреВрди рдХреЗрд╡рд│ рдХрд╛рд▓рдмрд╛рд╣реНрдп рдореВрд▓реНрдп рдкрд╛рд╕ рдХреЗрд▓реЗ рдЬрд╛рддреЗ рдЖрдгрд┐ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реНрдпрд╛ рдЬрд╛рдгрд╛рд▒реНрдпрд╛ рдЖрджреЗрд╢рд╛рдВрд╕рд╣ ре▓рд░реЗрдордзреНрдпреЗ рдПрдХ рдирд┐рд░реБрдкрджреНрд░рд╡реА рдирд┐рд╢реНрдЪрд┐рдд рд╕реВрдЪреА рдЕрд╕рддреЗ. рдкрдг рдЦрд░рдВ рддрд░, рдХрд╛рд▓рдмрд╛рд╣реНрдп рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓ рдирдВрддрд░, рдХреЕрд░реЗрдХреНрдЯрд░ рдХреЛрдб \u3164 рд╕рд╣ рджреБрд╕рд░реНрдпрд╛ рдЕрджреГрд╢реНрдп рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓рдЪреЗ рдореВрд▓реНрдп рдирд┐рдпреБрдХреНрдд рдХреЗрд▓реЗ рдЬрд╛рддреЗ, рдЬреЗ рдПрдХреНрдЭрд┐рдХреНрдпреБрдЯреЗрдмрд▓ рдХрдорд╛рдВрдбрдЪреНрдпрд╛ ре▓рд░реЗрдордзреНрдпреЗ рджреЗрдЦреАрд▓ рдмрджрд▓рд▓реЗ рдЬрд╛рддреЗ. рдЕрд╢рд╛ рдкреНрд░рдХрд╛рд░реЗ, рдЕрд╢реА рд░рдЪрдирд╛ рдЙрдкрд▓рдмреНрдз рдЕрд╕рд▓реНрдпрд╛рд╕, рдЖрдХреНрд░рдордгрдХрд░реНрддрд╛ рдмреЕрдХрдбреЛрдЕрд░ рд╕рдХреНрд░рд┐рдп рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА рдЖрдгрд┐ рддреНрдпрд╛рдВрдЪрд╛ рдХреЛрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд░рдгреНрдпрд╛рд╕рд╛рдареА тАЬhttps://host:8080/network_health?%E3%85%A4=commandтАЭ рд╕рд╛рд░рдЦреА рд╡рд┐рдирдВрддреА рдкрд╛рдард╡реВ рд╢рдХрддреЛ.

рджреБрд╕рд░реЗ рдЙрджрд╛рд╣рд░рдг рдореНрд╣рдгрдЬреЗ "╟Г" (рдЕрд▓реНрд╡реНрд╣реЛрд▓рд░ рдХреНрд▓рд┐рдХ) рд╡рд░реНрдг, рдЬреНрдпрд╛рдЪрд╛ рдЙрдкрдпреЛрдЧ рдЙрджреНрдЧрд╛рд░ рдмрд┐рдВрджреВ рджрд░реНрд╢рд╡рд┐рдгрд╛рд░рд╛ рджреЗрдЦрд╛рд╡рд╛ рджреЗрдгреНрдпрд╛рд╕рд╛рдареА рдХреЗрд▓рд╛ рдЬрд╛рдК рд╢рдХрддреЛ. рдЙрджрд╛рд╣рд░рдгрд╛рд░реНрде, Node.js 14 рдордзреНрдпреЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреЗрд▓реНрдпрд╛рд╡рд░ тАЬif(environment╟Г=ENV_PROD){тАЭ рд╣реА рдЕрднрд┐рд╡реНрдпрдХреНрддреА рдиреЗрд╣рдореАрдЪ рд╕рддреНрдп рдЕрд╕реЗрд▓, рдХрд╛рд░рдг рддреА рдлрд░рдХ рддрдкрд╛рд╕рдд рдирд╛рд╣реА, рдкрд░рдВрддреБ ENV_PROD рдЪреЗ рдореВрд▓реНрдп тАЬenvironment╟ГтАЭ рд╡реНрд╣реЗрд░рд┐рдПрдмрд▓рд▓рд╛ рдирд┐рдпреБрдХреНрдд рдХрд░рддреЗ. рдЗрддрд░ рджрд┐рд╢рд╛рднреВрд▓ рдХрд░рдгрд╛рд▒реНрдпрд╛ рдпреБрдирд┐рдХреЛрдб рд╡рд░реНрдгрд╛рдВрдордзреНрдпреЗ "я╝П", "тИТ", "я╝Л", "тй╡", "тЭи", "тл╜", "ъУ┐" рдЖрдгрд┐ "тИЧ" рдпрд╛рдВрдЪрд╛ рд╕рдорд╛рд╡реЗрд╢ рд╣реЛрддреЛ.

рд╕реНрддреНрд░реЛрдд: opennet.ru

DDoS рд╕рдВрд░рдХреНрд╖рдг, VPS VDS рд╕рд░реНрд╡реНрд╣рд░ рдЕрд╕рд▓реЗрд▓реНрдпрд╛ рд╕рд╛рдЗрдЯрд╕рд╛рдареА рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛрд╕реНрдЯрд┐рдВрдЧ рдЦрд░реЗрджреА рдХрд░рд╛ ЁЯФе рдбреАрдбреЙрд╕ рд╕рдВрд░рдХреНрд╖рдгрд╛рд╕рд╣ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╡реЗрдмрд╕рд╛рдЗрдЯ рд╣реЛрд╕реНрдЯрд┐рдВрдЧ, рд╡реНрд╣реАрдкреАрдПрд╕ (VPS) рд╡реНрд╣реАрдбреАрдПрд╕ (VDS) рд╕рд░реНрд╡реНрд╣рд░реНрд╕ рдЦрд░реЗрджреА рдХрд░рд╛ | ProHoster