рдбрд╛рд░реНрдЯ рдмрдирд╛рдо Node.js: HTTP рд╕рд░реНрд╡рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд░ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛


рд╕рднреА рдХреЛ рд╢реБрдн рджрд┐рди!


рдЗрд╕ рд╕рд╛рд▓, рдХреНрд░реЙрд╕-рдкреНрд▓реЗрдЯрдлрд╝реЙрд░реНрдо рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдбреЗрд╡рд▓рдкрдореЗрдВрдЯ рдХреЗ рд▓рд┐рдП рдПрдХ рд░реВрдкрд░реЗрдЦрд╛ рдлрд╝реНрд▓рдЯрд░ рдХреА рд░рд┐рд▓реАрдЬрд╝ рдХреЗ рд╕рд╛рде, рдбрд╛рд░реНрдЯ рднрд╛рд╖рд╛ рдореЗрдВ рдкреНрд░рдЪрд╛рд░ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╣реБрдИ рд╣реИред рдХрд┐рд╕реА рднреА рдкреВрд░реНрдгрддрд╛рд╡рд╛рджреА рдХреА рддрд░рд╣ рдмреЛрд░рд┐рдВрдЧ рдЖрд▓рд╕реА рдХреЗ рд▓рд┐рдП рдореИрдВрдиреЗ рдбрд╛рд░реНрдЯ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдХреЗ рд╕рд░реНрд╡рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛ Node.s.s. рдХреЗ рд╡реНрдпрдХреНрддрд┐ рдореЗрдВ рдЗрд╕рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рддрд┐рдкрдХреНрд╖реА рдХреЗ рд╕рд╛рде рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрд╛ред рдореБрдЭреЗ рддреБрд░рдВрдд рдпрд╣ рдХрд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рдореЗрд░реЗ рднреАрддрд░ рдпрд╣ рдЖрд╢рд╛ рдЬрдЧ рд░рд╣реА рдереА рдХрд┐ рдбрд╛рд░реНрдЯ рдЬреАрдд рдЬрд╛рдПрдЧрд╛, рдФрд░ рдореИрдВ рддреАрди рдкрд╛рдБрдЪ рд╕рд╛рд▓ рдХреА рдЕрд╡рдзрд┐ рдХреЗ рд▓рд┐рдП рд╕рдВрднрд╛рд╡рд┐рдд рдкреНрд░рддрд┐рдпреЛрдЧрд┐рдпреЛрдВ рдкрд░ рд╢реНрд░реЗрд╖реНрдарддрд╛ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реБрдП рдкрд╡рд┐рддреНрд░ рдХрдмреНрд░ рд╣рд╛рд╕рд┐рд▓ рдХрд░реВрдВрдЧрд╛, рд▓реЗрдХрд┐рди рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдереЛрдбрд╝реА рдЕрд▓рдЧ рдереА ...


рдЙрдкрдХрд░рдг


  • рдЯреЗрд╕реНрдЯ рдорд╢реАрди: рдХреЛрд░ I7, SSD, 12GB RAM (рдХреГрдкрдпрд╛ рдореЗрд░реЗ рдкрд┐рдЫрд▓реЗ рдирд┐рдпреЛрдХреНрддрд╛ рджреНрд╡рд╛рд░рд╛ рдкреНрд░рджрд╛рди рдХреА рдЧрдИ)
  • рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг: k6.io (рд╡реИрд╕реЗ, рдЗрд╕рдХреА рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдореЗрдВ рд░реВрдкрд░реЗрдЦрд╛ рдмрд╣реБрдд рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ)

рдЖрд╡реЗрджрди рдХреЛрдб рдХрд╛ рд╕рдВрдЧрдарди


рд╕реНрд░реЛрдд рдХреЛрдб


рддрдм рдореИрдВрдиреЗ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдкрд░реЗрд╢рд╛рди рдирд╣реАрдВ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдФрд░ рдЙрди рд╕рд┐рдлрд╛рд░рд┐рд╢реЛрдВ рдХрд╛ рдкрд╛рд▓рди рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдЬреЛ рдореИрдВрдиреЗ рдПрдХ рд╕рдордп рдореЗрдВ рд╣рдмреЗрд░реА рдкрд░ рдкрдврд╝реА рдереАред рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ:


  • рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдбреЗрдЯрд╛ рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХреЗ рдХрд╛рдо рдХреЗ рд░реВрдк рдореЗрдВ рдПрдХ рдкреЗрд▓реЛрдб рдЬреЛрдбрд╝рд╛ рдЧрдпрд╛ (рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рдВрднрд╛рд╡рд┐рдд рдХреИрд╢рд┐рдВрдЧ рдХреЛ рд╕рдорд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рдбреЗрдЯрд╛)

class Human { constructor (id, name, surname, age, gender) { this.id = id this.name = name this.surname = surname this.age = age this.gender = gender } } 

  • рдбрд╛рд░реНрдЯ рдФрд░ Node.js рджреЛрдиреЛрдВ рдиреЗ рд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдФрд░ рдПрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдЕрдиреБрд░реЛрдз рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдХрд▓реНрдкреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред
  • рдЙрджреНрдпреЛрдЧ рдХреЗ рдврд╛рдВрдЪреЗ рдкрд░ рдореВрд▓ рд╕рдорд╛рдзрд╛рди рдФрд░ рд╕рдорд╛рдзрд╛рди рдХрд╛ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХрд┐рдпрд╛ (рдиреЛрдб рдХреЗ рд▓рд┐рдП рдбрд╛рд░реНрдЯ рдФрд░ рдПрдХреНрд╕рдкреНрд░реЗрд╕ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╡рд╛рдбрдХреНрдЯ)
  • рдЪреВрдВрдХрд┐ рдЕрдзреНрдпрдпрди рдПрдХреНрд╡рд╛рдбрдХреНрдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп рдбрд╛рд░реНрдЯ рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рддреНрд╡рд░рдг рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛, рдЬреЛ рдкреНрд░рддреНрдпреЗрдХ рдХреЛрд░ рдкрд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЪрд▓рддрд╛ рд╣реИ, рдореИрдВрдиреЗ рд╕рдВрддреБрд▓рди рдХреЗ рд▓рд┐рдП рдиреЛрдб рдореЙрдбреНрдпреВрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдкрд░реАрдХреНрд╖рдг рдкрджреНрдзрддрд┐


  • рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рджрд┐рдП рдЧрдП рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ (500, 750) рдФрд░ рдкрд░реАрдХреНрд╖рдг рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреА рд╕реАрдорд╛ (рдкреВрд░реНрдг рдЕрдиреБрд░реЛрдзреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛) рдХреЗ рд╕рд╛рде рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг рдЪрд▓рд╛рдПрдВред
  • рдЕрдиреБрдкреНрд░рдпреЛрдЧ рдФрд░ рдкрд░реАрдХреНрд╖рдг рдврд╛рдБрдЪрд╛ рджреЛрдиреЛрдВ рдПрдХ рд╣реА рдорд╢реАрди рдкрд░ рдЪрд▓рд╛рдП рдЧрдП рдереЗ, рдЗрд╕рд▓рд┐рдП рдЖрдкрдХреЛ рдпрд╣ рд╕рдордЭрдирд╛ рдЪрд╛рд╣рд┐рдП рдХрд┐ рд╕рднреА рдкрд░рд┐рдгрд╛рдо рд╕рд╛рдкреЗрдХреНрд╖ рд╣реИрдВ рдФрд░ рдХреЗрд╡рд▓ рдПрдХ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ

рдкрд░рд┐рдгрд╛рдо


рджреЗрд╢реА рдбрд╛рд░реНрдЯ


500 рдЖрд░рдкреАрдПрд╕



750 рдЖрд░рдкреАрдПрд╕


  • http_reqs: 309.10154 / s

рдбрд╛рд░реНрдЯ рдХреЗ рд▓рд┐рдП рдПрдХреНрд╡рд╛рдбрдХреНрдЯ рдлреНрд░реЗрдорд╡рд░реНрдХ


500 рдЖрд░рдкреАрдПрд╕



750 рдЖрд░рдкреАрдПрд╕



рджреЗрд╢реА рдиреЛрдб .js


500 рдЖрд░рдкреАрдПрд╕



750 рдЖрд░рдкреАрдПрд╕



рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд╕рд╛рде рдиреЛрдб рдПрдХреНрд╕рдкреНрд░реЗрд╕


500 рдЖрд░рдкреАрдПрд╕



750 рдЖрд░рдкреАрдПрд╕



рдирд┐рд╖реНрдХрд░реНрд╖


  • рдмреЗрд╢рдХ, рдмрд╣реБрдд рдХреБрдЫ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдЖрдкрдиреЗ рдЖрд╡реЗрджрди рддрд░реНрдХ рдХреЛ рдХреИрд╕реЗ рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рд╣реИ, рдореБрдЭреЗ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдореЗрд░рд╛ рдХреЛрдб рдбрд╛рд░реНрдЯ рдФрд░ рдиреЛрдб рджреЛрдиреЛрдВ рдХреЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╖реНрдЯрддрдо рд╣реИред
    • рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд╕рд░рдгреА рдЙрддреНрдкрдиреНрди рдХрд░рдиреЗ рдХрд╛ рдХрд╛рд░реНрдп рдЕрд╕рд┐рдВрдХреНрд░реЛрдирд╕ рдЖрдЙрдЯрдкреБрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рдЕрд▓рдЧ рдХрд╛рд░реНрдпрдХрд░реНрддрд╛ рд╕реНрдЯреНрд░реАрдо рдореЗрдВ рдкреНрд░рджрд░реНрд╢рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдореЗрд░реЗ рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрд╕реЗ рд▓рд╛рдЧреВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП, рдкреВрд░реЗ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ mosh рдХрд╛ рдЙрдкрдпреЛрдЧ рдпрд╣рд╛рдВ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
    • Dart рдФрд░ Node.js рджреЛрдиреЛрдВ рдореЗрдВ, рдЖрдЙрдЯрдкреБрдЯ рдХреЛ рдПрдХ рд╕реНрдЯреНрд░реАрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╡реНрдпрд╡рд╕реНрдерд┐рдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ
    • рдЗрд╕рд▓рд┐рдП, рдкреНрд░рджрд░реНрд╢рди рдЕрдиреБрд╕рдВрдзрд╛рди рдФрд░ рдЕрдиреБрдХреВрд▓рди рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрднреА рднреА рдмрд╣реБрдд рдЬрдЧрд╣ рд╣реИред
  • рд╣реИрдВрдбрд▓рд░ рдХреЗ рдореВрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдореЗрдВ рдбрд╛рд░реНрдЯ рдиреЗ рдПрдХ рдорд╣рд╛рдХрд╛рд╡реНрдп рдлрд╝рд╛рдЗрд▓ рджрд┐рдЦрд╛рдИ, рдлрд┐рд░ рднреА, рдЬрдм рд░реВрдкрд░реЗрдЦрд╛ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛, рддреЛ рдЗрд╕рдиреЗ рдкреНрд░рднрд╛рд╡рд╢рд╛рд▓реА рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рдП, рдЬрд┐рд╕рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдбрд╛рд░реНрдЯ рдЖрднрд╛рд╕реА рдорд╢реАрди рдЕрдм Node.js рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд╕реНрдкрд░реНрдзрд╛ рдХрд░ рд╕рдХрддреА рд╣реИред
  • рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ, V8 рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирд╡-рдШрдВрдЯреЗ рдХреЗ рдХрд╛рдо рдХрд╛ рдПрдХ рдЬрдмрд░рджрд╕реНрдд рдирд┐рд╡реЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдореБрдЭреЗ рдпрдХреАрди рд╣реИ рдХрд┐ рдбрд╛рд░реНрдЯ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдореЗрдВ рдмрд╣реБрдд рдХрдо рд╕рдордп рдХрд╛ рдирд┐рд╡реЗрд╢ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рджреВрд╕рд░реЗ рдореЗрдВ рд╕рдВрднрд╡рддрдГ V8 рд╕реЗ рдкрд╣рд▓реЗ рдЕрдиреБрдХреВрд▓рди рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдмрдбрд╝реА рдХреНрд╖рдорддрд╛ рд╣реИ

Source: https://habr.com/ru/post/hi435014/


All Articles