Vert.x - рдПрдХ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ, рдШрдЯрдирд╛-рдЪрд╛рд▓рд┐рдд рдврд╛рдВрдЪрд╛ рдиреЛрдб рдХреЗ рдкреНрд░рднрд╛рд╡ рдХреЗ рддрд╣рдд рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ редjs. рднрд╛рдЧ 1

рд╕рднреА рдХреЛ рдирдорд╕реНрдХрд╛рд░!
рдЗрд╕ рд╕рдордп рдиреЛрдб.рдЬреЗрдПрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рдЯреНрд░реЗрдВрдбреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рд░ рдХреЛрдИ рдЙрд╕реЗ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рд╕рдореАрдХреНрд╖рд╛ рдореЗрдВ, рдореИрдВ рдЙрд╕ рдкреНрд░рддрд┐рдпреЛрдЧреА рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдереЛрдбрд╝реА рдмрд╛рдд рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛ рдЬреЛ рдиреЛрдб.рдЬреЗрдПрд╕ рдХреЗ рдкреНрд░рднрд╛рд╡ рдореЗрдВ рд▓рд┐рдЦрд╛ рдЧрдпрд╛ рдерд╛
Vert.x рдПрдХ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ, рдШрдЯрдирд╛-рдЪрд╛рд▓рд┐рдд рдврд╛рдВрдЪрд╛ рд╣реИ рдЬрд┐рд╕рдХрд╛ рд▓рдХреНрд╖реНрдп рд▓реЛрдХрдкреНрд░рд┐рдп рдиреЛрдб рдХреЗ рд╕рд╛рде рдЕрдВрддрд░ рдХрд░рддрд╛ рд╣реИред рдЙрдЪреНрдЪ рдкреНрд░рджрд░реНрд╢рди, рд╕рд░рд▓ рдЕрддреБрд▓реНрдпрдХрд╛рд▓рд┐рдХ рдФрд░ рд╡рд┐рдиреНрдпрд╛рд╕ рд╕рднреА рд▓рдВрдмрд╡рдд рд╣реИрдВред
рдлреНрд░реЗрдорд╡рд░реНрдХ рдХрд╛ рдкрд╣рд▓рд╛ рд╕рдВрд╕реНрдХрд░рдг 2012 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЬрдмрдХрд┐ рдиреЛрдб.рдЬреЗрдПрд╕ 2009 рдореЗрдВ рдЬрд╛рд░реА рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╡реАрдПрдорд╡реЗрдпрд░ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рд╕рдорд░реНрдерд┐рдд рд╣реИ рдФрд░ рдХреНрд▓рд╛рдЙрдбрдлрд╛рдЙрдВрдбреНрд░реА рдкрд░ рдЪрд▓ рд╕рдХрддрд╛ рд╣реИред
рдХрдЯ рдХреЗ рддрд╣рдд рдЙрддреНрдкрд╛рдж рдХреА рдореБрдЦреНрдп рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ:


рд░реБрдЪрд┐ рд░рдЦрддреЗ рд╣реИрдВ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП scala рдкрд░ рд╣реЗрд▓реЛрд╡рд░реНрд▓реНрдб рдмрд╛рдХреА:

class SampleResticle extends Resticle { override def handles = { GET("/hello") :> OK( _ => "world ") } } 


рдпрд╛ рдПрдХ рд╕рд░рд▓ рд╕рд░реНрд╡рд░ рдЙрджрд╛рд╣рд░рдг webroot рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреА рд╕реЗрд╡рд╛ред рдЧреНрд░реВрд╡реА рдЙрджрд╛рд╣рд░рдг:
 vertx.createHttpServer().requestHandler { req -> def file = req.uri == "/" ? "index.html" : req.uri req.response.sendFile "webroot/$file" }.listen(8080) 

рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП рдЕрдВрддрд┐рдо рд╣рд▓реЛрд╡рд░реНрд▓реНрдб рдЪрд▓рд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
 vertx run Server.groovy -instances 32 

рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рд╕рдм рдХреБрдЫ рдмреЗрд╣рдж рд╕рд░рд▓ рдФрд░ рд╕реНрдкрд╖реНрдЯ рд╣реИред

рдХреЛрдб рдХреЗ рдЙрджрд╛рд╣рд░рдгреЛрдВ рдХреЛ рджреЗрдЦрдиреЗ рдФрд░ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдХреЛ рдкрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рд╕реНрд╡рд╛рднрд╛рд╡рд┐рдХ рд░реВрдк рд╕реЗ рд╕реБрдкрд░ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд▓реЗрдЦрдХреЛрдВ рдХреЗ рдмрдпрд╛рди рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред рдореИрдВрдиреЗ рдиреЛрдб .js. рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛ рдХреА рддрд▓рд╛рд╢ рдХреАред
рдкрд╣рд▓рд╛ рдЧреНрд░рд╛рдлрд╝ рдкрд░реАрдХреНрд╖рд╛ рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдЬрдм рдХреЗрд╡рд▓ 200 / рдареАрдХ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджреА рдЬрд╛рддреА рд╣реИ

рджреВрд╕рд░рд╛ рдкрд░реАрдХреНрд╖рдг 72-рдмрд╛рдЗрдЯ html рдкреГрд╖реНрда рд▓реМрдЯрд╛рддрд╛ рд╣реИ:

рдкрд░реАрдХреНрд╖рдг рдпрд╣рд╛рдБ рд╕реЗ рд▓рд┐рдпрд╛ рдЧрдпрд╛ ред рдпреЗ рдкрд░реАрдХреНрд╖рдг рдЕрдкреЗрдХреНрд╖рд╛рдХреГрдд рдмрд╣реБрдд рдкрд╣рд▓реЗ рдХрд┐рдП рдЧрдП рдереЗред рдореЗрд░реЗ рдкрд╛рд╕ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рдкрд░реАрдХреНрд╖рдг рд╕рд╛рдордЧреНрд░реА рддреИрдпрд╛рд░ рд╣реИред рдореИрдВ рдЙрд╕рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рддреАрд╕рд░реЗ рднрд╛рдЧ рдореЗрдВ рдмрддрд╛рдКрдВрдЧрд╛ред
рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдЗрди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рд╕реНрдХреИрд▓рд╛ рдкрд░реАрдХреНрд╖рдг рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВред рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдЬрд╛рд╡рд╛ рд╕реЗ рдХрдИ рдорд╛рдорд▓реЛрдВ рдореЗрдВ рд╕реНрдХреЗрд▓рд╛ рддреЗрдЬ рд╣реИред
рд╢рд╛рдпрдж рд╢реБрдХреНрд░рд╡рд╛рд░ рдХреА рдкреЛрд╕реНрдЯ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╣реИред рдЕрдЧрд▓реЗ рднрд╛рдЧ рдореЗрдВ рдореИрдВ vert.x рдореЗрдВ рдкреНрд░рдпреБрдХреНрдд рдореВрд▓ рд╕рд┐рджреНрдзрд╛рдВрддреЛрдВ рдФрд░ рдкреИрдЯрд░реНрдиреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░реВрдБрдЧрд╛ред
рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреА рд╡реЗрдмрд╕рд╛рдЗрдЯ ред рд▓рд┐рдВрдХ рдЙрддреНрдХреГрд╖реНрдЯ рджрд╕реНрддрд╛рд╡реЗрдЬ рд╣реИред

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


All Articles