SockJS рд╕рд░реНрд╡рд░ рдкреНрд░рджрд░реНрд╢рди рдЕрдзреНрдпрдпрди

рджрд┐рди рдХрд╛ рдЕрдЪреНрдЫрд╛ рд╕рдордп!

рдпрд╣ рд╕рд┐рд░реНрдл рдЗрддрдирд╛ рд╣реБрдЖ рдХрд┐ рдореИрдВ рдЯреЙрд░рдиреЗрдбреЛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рд╕рднреА рддрд░рд╣ рдХреА рдкреБрд╢ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдореЗрдВ рд╕рдВрд▓рдЧреНрди рд╣реВрдВред рдХреБрдЫ рд╕рдордп рдкрд╣рд▓реЗ рдореИрдВрдиреЗ рдЯреЙрд░реНрдиреЗрдбреЛ рдкрд░ рд╕рд░реНрд╡рд░, рд╕реЙрдХреЗрдЯ.рдЖрдИрдУ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд░реНрд╡рд░-рд╕рд╛рдЗрдб рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХрд╛ рд╡рд░реНрдгрди рдХрд┐рдпрд╛ рдерд╛ред

рдЕрдм рдореИрдВ рдПрдХ рдРрд╕реА рд╣реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ - рд╕реЛрдХрдЬ-рдЯреЛрд░реНрдирд╛рдбреЛ ред

рдЬреЛ рд▓реЛрдЧ рдмрд╣реБрдд рд░реБрдЪрд┐ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ, рдЙрдирдХреЗ рд▓рд┐рдП рдЕрдиреНрдп рдЙрдкрдпреЛрдЧреА рдЬрд╛рдирдХрд╛рд░реА рд╣реИ: PyPy 1.7 рддреБрд▓рдирд╛рддреНрдордХ рд▓реЛрдб рдкрд░реАрдХреНрд╖рдг CPython 2.6.6, sockjs-node рдФрд░ socket.io рдХреЗ рдЦрд┐рд▓рд╛рдл (рджреЛрдиреЛрдВ рдиреЛрдбред 0.6.5 рдкрд░)ред рдХрдЯ рдХреЗ рддрд╣рдд рд╕рдм рдХреБрдЫ :-)

рдкрд╣рд▓рд╛, SockJS рдХреНрдпрд╛ рд╣реИ? рдпрд╣ рдЬрд╛рд╡рд╛рд╕реНрдХреНрд░рд┐рдкреНрдЯ рдореЗрдВ рд▓рд┐рдЦреА рдЧрдИ рдПрдХ рдХреНрд▓рд╛рдЗрдВрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╣реИ рдЬреЛ рд╡реЗрдмрд╕реЛрдХреЗрдЯ рдПрдкреАрдЖрдИ рдХреА рдирдХрд▓ рдХрд░рддреА рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрдЬрд╛рдХреНрд╕ рд▓реЙрдиреНрдЧ-рдкреЛрд▓рд┐рдВрдЧ, рдЬреЛрдВрд╕рдк-рдкреЛрд▓рд┐рдВрдЧ рдФрд░ рдЗрд╕реА рддрд░рд╣ рдХреЗ рд╡рд┐рднрд┐рдиреНрди рд╕рд░реЛрдЧреЗрдЯ рд╡рд┐рдХрд▓реНрдк рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рднреА рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддреА рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдпрд╣ рд╕реЙрдХреЗрдЯ.рдЖрдИрдУ рдХреЗ рд╕рдорд╛рди рд╣реИ, рд▓реЗрдХрд┐рди рдХреБрдЫ рдкреНрд░рдореБрдЦ рдЕрдВрддрд░реЛрдВ рдХреЗ рд╕рд╛рдеред

рдПрдХ рдЫреЛрдЯрд╛ рд╡рд┐рд╖рдпрд╛рдВрддрд░ - рдореБрдЭреЗ рдкреБрд╕реНрддрдХрд╛рд▓рдп рдХреЗ рдЧреНрд░рд╛рд╣рдХ рднрд╛рдЧ рд╕реЗ рдХреЛрдИ рд▓реЗрдирд╛-рджреЗрдирд╛ рдирд╣реАрдВ рд╣реИ, рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдореИрдВрдиреЗ рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ рднреЗрдЬреА рдФрд░ рд╣рд░ рддрд░рд╣ рд╕реЗ рдЕрдкрдиреЗ рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЛ рдирд╛рд░рд╛рдЬ рдХрд┐рдпрд╛ред

рддреЛ рд╕реЙрдХреЗрдЯ.рдЖрдИрдУ рдХреНрдпреЛрдВ рдЖрд╡рд╢реНрдпрдХ рд╣реИ?
рдпрд╣рд╛рдБ рдХреБрдЫ рдХрд╛рд░рдг рджрд┐рдП рдЧрдП рд╣реИрдВ рдЬрд┐рдирдХреЗ рдХрд╛рд░рдг SockJS рдХрд╛ рд╡рд┐рдХрд╛рд╕ рд╣реБрдЖ:
1. рд╕реЙрдХреЗрдЯ.рдЖрдИрдУ рдбреЗрд╡рд▓рдкрд░реНрд╕, рдЬреЛ рд╕рдВрд╕реНрдХрд░рдг 0.7 рд╕реЗ рд╢реБрд░реВ рд╣реЛ рд░рд╣рд╛ рд╣реИ, рдХрд╣реАрдВ рдЧрд▓рдд рд╣реЛ рдЧрдпрд╛ рд╣реИред рдмрдЧ рдХреЛ рдареАрдХ рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдп, рд╡рд┐рднрд┐рдиреНрди рдмреНрд░рд╛рдЙрдЬрд╝рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╕рдорд░реНрдерди рдЬреЛрдбрд╝рддреЗ рд╣реБрдП, рдЙрдиреНрд╣реЛрдВрдиреЗ рдПрдкреАрдЖрдИ рдХреЛ рдЕрдзрд┐рдХ рдЙрдЪреНрдЪ-рд╕реНрддрд░реАрдп рдмрдирд╛рдиреЗ рдХрд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдпрд╛ред рдореИрдВ рддрд░реНрдХ рдирд╣реАрдВ рджреЗрддрд╛ - рд╕рднреА рдирд╡рд╛рдЪрд╛рд░ рдмрд╣реБрдд рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реИрдВ, рд▓реЗрдХрд┐рди рддреНрд░реБрдЯрд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрдо рдирд╣реАрдВ рд╣реБрдИ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдПрдХ рдЧрдВрднреАрд░ рдкрд░реНрдпрд╛рдкреНрдд рджреМрдбрд╝ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ 3 рдорд╣реАрдиреЗ рд╕реЗ рдЕрдзрд┐рдХ рдХреЗ рд▓рд┐рдП рдмрдВрдж рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╡рд┐рдпреЛрдЧ рдХреЗ рдмрд╛рдж рдХрдиреЗрдХреНрд╢рди рдЕрднреА рднреА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЦреИрд░ рдФрд░ рдкрд╕рдВрдж рд╣реИред
2. рдХрднреА-рдХрднреА рдЖрдк рдХрд┐рд╕реА рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкреБрд╕реНрддрдХрд╛рд▓рдп рд╕реЗ рд╕рдВрд▓рдЧреНрди рдирд╣реАрдВ рд╣реЛрдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВред рдпрджрд┐ рдЖрдк рд╕реЙрдХреЗрдЯ.рдЖрдИрдУ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рдЗрд╕реЗ рдЫреЛрдбрд╝рдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реЛрдЧрд╛, рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЛ рдЙрди рд╕рднреА рд╕реНрдерд╛рдиреЛрдВ рдХреЛ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ рдЬрд╣рд╛рдВ рд╕реЙрдХреЗрдЯ рдХреЗ рд▓рд┐рдП рдмрд╛рдзреНрдпрдХрд╛рд░реА рд╣реИред

рддреЛ SockJS рдХреНрдпрд╛ рд╣реИ?
1. рдЬреИрд╕рд╛ рдХрд┐ рдкрд╣рд▓реЗ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдпрд╣ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рдХреЗ рд▓рд┐рдП рд╡реЗрдмрд╕реЛрдХреЗрдЯ рдПрдкреАрдЖрдИ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд░рд▓ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрди рд╣реИред рддрджрдиреБрд╕рд╛рд░, рд╡реЗрдм рд╕реЙрдХреЗрдЯреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрдХ рдореМрдЬреВрджрд╛ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдирд╛ рдХрд╛рдлреА рджрд░реНрдж рд░рд╣рд┐рдд рд╣реЛрдЧрд╛ (рдпрджрд┐ рд╕рд░реНрд╡рд░ рдкрдХреНрд╖ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдирд╣реАрдВ рдХрд░рдирд╛ рд╣реИ)
2. SockJS рдУрдкреЗрд░рд╛ рдореЗрдВ рднреА рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬреЛ socket.io рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдкрд╕рдВрдж рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, SockJS рд╡рд┐рднрд┐рдиреНрди рдПрдВрдЯреАрд╡рд╛рдпрд░рд╕ рдХреЗ рд╕рд╛рде рд╕рд╣реА рдврдВрдЧ рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ - рдпрд╣ рджреВрд╕рд░реЗ рдкрд░рд┐рд╡рд╣рди рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИ, рдЬрдмрдХрд┐ рд╕реЙрдХреЗрдЯ.рдЖрдИрдУ рдмрд┐рд▓реНрдХреБрд▓ рдХрдиреЗрдХреНрд╢рди рд╕реНрдерд╛рдкрд┐рдд рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИред
3. SockJS рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рддрд╛ рд╣реИ: рдЖрдЙрдЯрдЧреЛрдЗрдВрдЧ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рд╕рд░реНрд╡рд░ рд╕реЗ рдПрдХ рд╕реНрдерд╛рдпреА рдХрдиреЗрдХреНрд╢рдиред socket.io рдиреЗ рд╕рдВрд╕реНрдХрд░рдг 0.7 рдХреЗ рдмрд╛рдж рд╕реЗ рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдкрд░рд┐рд╡рд╣рди рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИред
4. рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрд╣реБрдд рд╕рд░рд▓ рд╣реИ рдФрд░ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рд╣реИред рдбреЗрд╡рд▓рдкрд░реНрд╕ рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХрд╛ рдПрдХ рд╕реЗрдЯ рд╣реИ рдЬреЛ рдПрдХ рд╕рд░реНрд╡рд░ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдкрд╛рд╕ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред
5. рд╕реНрдХреЗрд▓реЗрдмрд┐рд▓рд┐рдЯреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд▓реЛрдб рдмреИрд▓реЗрдВрд╕рд░ рдХреЛ рдПрдХ рдЪрд┐рдкрдЪрд┐рдкрд╛ рд╕рддреНрд░ рдЖрдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдХреАрдЬрд╝ рдХреЗ рд╕рд╛рде рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ - рд╕рднреА рдЖрд╡рд╢реНрдпрдХ рдЬрд╛рдирдХрд╛рд░реА рдкрд╣рд▓реЗ рд╕реЗ рд╣реА URL рдореЗрдВ рд╣реИред
6. рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХрд╛ рд╡рд┐рднрд┐рдиреНрди рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдмрд╣реБрдд рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдХреНрдпреВрдирд┐рдЯ рдкрд░реАрдХреНрд╖рдг рднреА рд╣реЛрддреЗ рд╣реИрдВ рдЬреЛ рдХреНрд▓рд╛рдЗрдВрдЯ рдФрд░ рд╕рд░реНрд╡рд░ рджреЛрдиреЛрдВ рдХреЛ рд╕реАрдзреЗ рдмреНрд░рд╛рдЙрдЬрд╝рд░ рд╕реЗ рдЬрд╛рдВрдЪрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣рд╛рдБ sockjs-node рдХреЗ рд▓рд┐рдП рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ: http://sockjs.popcnt.org/

рд╕рдм рд╕рдм рдореЗрдВ, рдпрд╣ рдмрд╛рдд рд╕рд┐рд░реНрдл рдХрд╛рдо рдХрд░рддреА рд╣реИред

рдЕрдм рд▓реЗрдЦ рдХреЗ рджреВрд╕рд░реЗ рднрд╛рдЧ, рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдПред

Sockjs-tornado рд▓рд┐рдЦрдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВрдиреЗ рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ рдХрд┐ рдпрд╣ рдиреЛрдб рдореЗрдВ рд▓рд┐рдЦреЗ "рдореВрд▓" рд╕рд░реНрд╡рд░ рд╕реЗ рдХреИрд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИред рдЕрдм рдиреЛрдб.рдЬреЗрдПрд╕ рдмрд╣реБрдд рдлреИрд╢рдиреЗрдмрд▓ рд╣реИ, рд╡реЗ рдЕрдХреНрд╕рд░ рд╡рд┐рднрд┐рдиреНрди рдзрдХреНрдХрд╛ рдкреНрд░реМрджреНрдпреЛрдЧрд┐рдХрд┐рдпреЛрдВ рдореЗрдВ рдЗрд╕рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░рддреЗ рд╣реИрдВред рдореИрдВ рдкрд╣рд▓реЗ рд╕реЗ рдХрд╣реВрдВрдЧрд╛ - рдкрд░реАрдХреНрд╖рд╛ рдкрд░рд┐рдгрд╛рдореЛрдВ рдиреЗ рдореБрдЭреЗ рдмрд╣реБрдд рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдХрд┐рдпрд╛ред

рдкрд░реАрдХреНрд╖рдг рдкрджреНрдзрддрд┐ рдХреЛ рдмрд╣реБрдд рд╕рд░рд▓ рдЪреБрдирд╛ рдЧрдпрд╛ рдерд╛: рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдХрдорд░реЗ рдХреЗ рд╕рд╛рде рдПрдХ рдЪреИрдЯ рд╕рд░реНрд╡рд░ рд╣реИред рд╕рд░реНрд╡рд░ рдмрд╕ рдкреНрд░рддреНрдпреЗрдХ рдЖрдиреЗ рд╡рд╛рд▓реЗ рд╕рдВрджреЗрд╢ рдХреЛ рд╕рднреА рдЪреИрдЯ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИред рдпрджрд┐ рд░реБрдЪрд┐ рд╣реИ, рддреЛ рдпрд╣рд╛рдВ рд╕рд░реНрд╡рд░ рдХреЛрдб рд╣реИред

рдПрдХ рд╡реЗрдмрд╕реЛрдХреЗрдЯ рдХреНрд▓рд╛рдЗрдВрдЯ рд╣реИ рдЬреЛ рдкрд┐рдВрдЧ рднреЗрдЬрддрд╛ рд╣реИ рдФрд░ рдЕрдкрдиреА рд╕реНрд╡рдпрдВ рдХреА рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреА рдкреНрд░рддреАрдХреНрд╖рд╛ рдХрд░ рд░рд╣рд╛ рд╣реИред рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рднреЗрдЬрдиреЗ рдФрд░ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рдмреАрдЪ рдмрд┐рддрд╛рдП рд╕рдордп рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд░рддрд╛ рд╣реИред рд╡рд┐рднрд┐рдиреНрди рд╕реНрддрд░реЛрдВ рдХреЗ рд▓рд┐рдП рдкрд░рд┐рдгрд╛рдо рдФрд░ рднреЗрдЬреЗ рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рд╕рд╣реЗрдЬрд╛ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдЙрди рдкрд░ рдПрдХ рдЧреНрд░рд╛рдл рдмрдирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рд╢рд╛рдпрдж рдХреБрдЫ рдкреВрдЫреЗрдВрдЧреЗ - рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреНрдпрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЬрд╛ рд░рд╣рд╛ рд╣реИ? рдФрд░ рдпрд╣рд╛рдБ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:
- рд╡рд┐рднрд┐рдиреНрди рд╕рд░реНрд╡рд░реЛрдВ рдХреЗ рд▓рд┐рдП рд╡реЗрдмрд╕реЛрдХреЗрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдЧрддрд┐
- рдЬрд┐рд╕ рдкрд░ рд╕рд░реНрд╡рд░ рдХреЛ рдЪреЛрдХ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЬреНрдпрд╛рджрд╛ рдореИрд╕реЗрдЬ рдЖрддреЗ рд╣реИрдВ
- рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдХрдиреЗрдХреНрд╢рди рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдУрд╡рд░рд╣реЗрдб
- рд╡рд┐рднрд┐рдиреНрди рд▓реЛрдб рд╕реНрддрд░реЛрдВ рдкрд░ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп

рдПрдХ рдЕрдиреНрдп рдкреНрд░рд╢реНрди рдХреЗ рд▓рд┐рдП, рд╣рдореЗрдВ рдПрдХ "рдЧреВрдВрдЧрд╛" рдЪреИрдЯ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдХреНрдпреЛрдВ рд╣реИ, рдЬреЛ рдЖрдо рддреМрд░ рдкрд░ рддрд░реНрдХ рдХреЗ рдмрд┐рдирд╛ рд╣реИ? рдЕрдЧрд░ рдХреЛрдИ рднреА рд╡рд┐рдирдореНрд░ рдЗрдВрдбреА рдмрдВрдбрд▓ рдЬреИрд╕реА рдкрд░рд┐рдпреЛрдЬрдирд╛ рдореЗрдВ рдЖрдпрд╛ рд╣реИ, рддреЛ рдЙрдирдХреА рдХрдорд╛рдИ рдЧрдИ рд░рд╛рд╢рд┐ рдХреЛ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдореЗрдВ рджрд┐рдЦрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рдЗрд╕рд▓рд┐рдП, рд╡реЗ рдПрдХ "рдмреНрд░реЛрдХрд░" рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдмрдбрд╝реА рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рд╡реЗрдм рдХреНрд▓рд╛рдЗрдВрдЯ рдХреЛ "рд╣реЛрд▓реНрдб" рдХрд░рддрд╛ рд╣реИред рдФрд░ рдЙрдирдХреЗ рдкрд╛рд╕ рдПрдХ рдбреЗрдЯрд╛ рд╕реНрд░реЛрдд (рдирд┐рд░реНрдорд╛рддрд╛) рднреА рд╣реИ, рдЬреЛ рд╕рдордп-рд╕рдордп рдкрд░ рдмреНрд░реЛрдХрд░ рдХреЛ рднреЗрдЬрддрд╛ рд╣реИ рдХрд┐ рдХрд┐рддрдирд╛ рдкреИрд╕рд╛ рдХрдорд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдмреНрд░реЛрдХрд░ рдХреЛ рдпрд╣ рдЬрд╛рдирдХрд╛рд░реА рдЕрдкрдиреЗ рд╕рднреА рдЬреБрдбрд╝реЗ рдЧреНрд░рд╛рд╣рдХреЛрдВ рдХреЛ рднреЗрдЬрдиреА рд╣реЛрдЧреАред рдмреНрд░реЛрдХрд░ рдЬрд┐рддрдиреА рддреЗрдЬреА рд╕реЗ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЙрддрдиреЗ рдЕрдзрд┐рдХ рдЧреНрд░рд╛рд╣рдХ рд╡рд╣ рдиреНрдпреВрдирддрдо рд╕рдордп рдореЗрдВ рд╕реЗрд╡рд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рдЕрдзреНрдпрдпрди рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ sockjs рдбреЗрд╡рд▓рдкрд░реНрд╕ рдиреЗ sockjs-рдиреЛрдб рдХреЗ рд╕рд╛рде рддреБрд▓рдирд╛рддреНрдордХ рдкрд░реАрдХреНрд╖рдг рдХреЗ рд▓рд┐рдП рдХрд╣рд╛ рдФрд░ рдЖрдк рдЗрд╕реЗ рдпрд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдЧрд░ рдХрд┐рд╕реА рдХреЛ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рддреЛ рдореИрдВ рд▓реЗрдЦ рдХрд╛ рд░реВрд╕реА рдореЗрдВ рдЕрдиреБрд╡рд╛рдж рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВред

рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ, рд╣рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд┐рддреНрд░ рдорд┐рд▓рддрд╛ рд╣реИ:
- sockjs- рдиреЛрдб 200 рдПрдордПрд╕ рдХреА рдФрд╕рдд рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 45,000 рд╕рдВрджреЗрд╢ рднреЗрдЬ рд╕рдХрддрд╛ рд╣реИред
- рд╕рд╛рдЗрдХрдереЙрди 2.6.6 рдкрд░ рд╕реЛрдХрдЬ-рдЯреЙрд░реНрдиреЗрдбреЛ 200 рдПрдордПрд╕ рдХреЗ рд░рд┐рд╕реНрдкреЙрдиреНрд╕ рдЯрд╛рдЗрдо рдХреЗ рд╕рд╛рде 55,000 рдореИрд╕реЗрдЬ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рддрдХ рдЖрдЙрдЯрдкреБрдЯ рдХрд░ рд╕рдХрддрд╛ рд╣реИ
рдкреАрдХреА 1.7 рдкрд░ sockjs-tornado рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб 150,000+ рд╕рдВрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рд╕рд┐рд░реНрдл "рдмреНрд░реЗрдХ" рдХрд░рддрд╛ рд╣реИред

рдмреЗрд╢рдХ, рд╕рд░реНрд╡рд░ рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдЕрдзрд┐рдХ рд╕рдВрджреЗрд╢ рднреЗрдЬ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рд╕рдордп рдмрдврд╝ рдЬрд╛рддрд╛ рд╣реИ рдФрд░ рдПрдкреНрд▓рд┐рдХреЗрд╢рди рд░реАрдпрд▓ рдЯрд╛рдЗрдо рд╣реЛрдирд╛ рдмрдВрдж рд╣реЛ рдЬрд╛рддрд╛ рд╣реИ :-)

рдПрдХ рддреБрд▓рдирд╛рддреНрдордХ рдЕрдиреБрд╕реВрдЪреА рдпрд╣рд╛рдВ рдкрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИ ред рдПрдХреНрд╕ рдЕрдХреНрд╖ рдкрд░, рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рд╕рд░реНрд╡рд░ рджреНрд╡рд╛рд░рд╛ рднреЗрдЬреЗ рдЧрдП рд╕рдВрджреЗрд╢реЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдПрдХ рд╕реЗрдХрдВрдб рдореЗрдВ рд╣реИред Y рдЕрдХреНрд╖ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рд╕рдордп рд╣реИред рдкреНрд░рддреНрдпреЗрдХ рдкрдВрдХреНрддрд┐ рдПрдХ рд╕рд░реНрд╡рд░ рд╕рдВрдпреЛрдЬрди (рдиреЛрдб = sockjs-node, socket.io = socket.io рдиреЛрдб, cpython = sockjs-tornado in cpython, pypy = sockjs-tadoado in pypy 1.7) рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рд╕рд╛рде рдХрдиреЗрдХреНрд╢рди рдХреА рд╕рдВрдЦреНрдпрд╛ рд╣реИред socket.io рдиреЛрдб рдкрд░ рдПрдХ рдЕрдиреНрдп рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг рд╣реИ редjs.

рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдЕрдЧрд░ рдЖрдкрдиреЗ рдиреЛрдб.рдЬреЗрдПрд╕ рдФрд░ рд╕рд╛рдЗрдлрдереЙрди рдХреА рддреБрд▓рдирд╛ рдирд╣реАрдВ рдХреА рд╣реИ, рддреЛ рдкрд┐рдкреА рдХрд╛ рдкреНрд░рджрд░реНрд╢рди рдореЗрд░реЗ рд▓рд┐рдП рдкреВрд░реНрдг рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рд╣реЛ рдЧрдпрд╛ред

рдЦреИрд░, рдирд┐рд╖реНрдХрд░реНрд╖ рдореЗрдВред

рдпрджрд┐ рдЖрдк рдХрд┐рд╕реА рднреА рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдордп рдХреА рдХрд╛рд░реНрдпрдХреНрд╖рдорддрд╛ рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛рддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ SockJS рдХреА рдУрд░ рджреЗрдЦрдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рднрд▓реЗ рд╣реА рдЖрдкрдиреЗ рд╕реЙрдХреЗрдЯ рдХреЗ рд╕рд╛рде рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдпрд╛ рд╣реЛред рдФрд░ рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ sockjs-tornado рдХрд┐рд╕реА рдФрд░ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИред

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


All Articles