Serializing рдФрд░ Deserializing .NET рдХреЛрд░ рдмрдирд╛рдо рдЧреЛ рдбреЗрдЯрд╛

рд╣рд╛рдп% рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдирд╛рдо%


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


  • рд╕реАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдФрд░ рдбреАрд░рд┐рдпрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП, 3 рддрддреНрд╡реЛрдВ рдХреА рдПрдХ рд╕рд░рдгреА рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИред
  • рдЧреЛрд▓рдВрдЧ рдХреЗ рд▓рд┐рдП, рднрд╛рд╖рд╛ рдХреА рд╕рднреА рд╡рд┐рд╢реЗрд╖рддрд╛рдУрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди, рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рдЬрд╛рдирддреЗ рд╣реИрдВ, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ / рдЬреЛрд╕рди рдЕрдВрддрд░реНрдирд┐рд╣рд┐рдд рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдзреАрдорд╛ рд╣реИред
  • рдирддреАрдЬрддрди, рд▓реЗрдЦрдХ kestrel рдФрд░ рдиреЗрдЯ / http рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛ рдХрд░рддрд╛ рд╣реИред

рдпрд╣ рдЗрди рдХрдорд┐рдпреЛрдВ рд╣реИ рдЬреЛ рдКрдкрд░ рд╡рд░реНрдгрд┐рдд рдЙрджрд╛рд╣рд░рдг рдХреЗ рдврд╛рдВрдЪреЗ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХреЗ рдЕрдзрд┐рдХ рд╡рд┐рд╕реНрддреГрдд рд╡рд┐рдЪрд╛рд░ рдХрд╛ рдХрд╛рд░рдг рдмрдирд╛ред рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдкрд░рд┐рдгрд╛рдо рдЬрд╛рдирдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реЛрдЧрд╛ред


рд░рдЪрдирд╛ рдФрд░ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░ рдХрд╛ рд╡рд┐рд╡рд░рдг


рдКрдкрд░ рдХреЗ рднрдВрдбрд╛рд░ рд╕реЗ рд╕реНрд░реЛрдд рдХреЛрдб рдХреЛ рднреА рдЖрдзрд╛рд░ рдХреЗ рд░реВрдк рдореЗрдВ рд▓рд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдХреНрдпрд╛ рдЕрдВрддрд┐рдо рд░реВрдк рджрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ:


  • рд╕рд░реНрд╡рд░ API рдХреЗ рд▓рд┐рдП, fasthttp рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред
  • рдПрдкреАрдЖрдИ рд╕рд░реНрд╡рд░ рд░рд┐рдХреЙрд░реНрдб рд╕рд░рдгрд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд░рддрд╛ рд╣реИред
  • рдкреНрд░рддреНрдпреЗрдХ рдЧреНрд░рд╛рд╣рдХ рдХреЗ рдкрд╛рд╕ рдЬрд╛рдБрдЪ рдХреЗ рд▓рд┐рдП рдХрдИ рддрд░реАрдХреЗ рд╣реИрдВред

рд╕рдВрд╢реЛрдзрд┐рдд рдХреЛрдб рд░рд┐рдкреЙрдЬрд┐рдЯрд░реА рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ ред


рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рд╕рд░реНрд╡рд░ API рд╕реЗ JSON рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХрд╛ рдПрдХ рдЙрджрд╛рд╣рд░рдг:


[ { "Id":"id_8299119732867115081", "Name":"name_5541535679032008745", "Time":1566731141 }, ... { "Id":"id_2804604318195309547", "Name":"name_5914011395631118540", "Time":1566731142 } ] 

рдЧреНрд░рд╛рд╣рдХреЛрдВ


рдкреНрд░рддреНрдпреЗрдХ рд╕реЗрд╡рд╛ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рддреАрди рд╡рд┐рдзрд┐рдпрд╛рдБ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИрдВ:


  • рд╕рд░реНрд╡рд░ рдПрдкреАрдЖрдИ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдФрд░ рдЗрд╕реЗ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд┐рдирд╛ рднреЗрдЬрдирд╛ [/ testNoProcess]ред
  • рд╕рд░реНрд╡рд░ рдПрдкреАрдЖрдИ рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ - рдбрд┐рд╕реЗрд░рд┐рдПрд▓рд╛рдЗрдЬрд╝реЗрд╢рди, рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреНрд░рдорд╛рдВрдХрди рдФрд░ [/ testReflection] рднреЗрдЬрдирд╛ред .NETCore рдХреЗ рд▓рд┐рдП, Newtonsoft.Json рдкреИрдХреЗрдЬ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдЧреЛрд▓рдВрдЧ рдХреЗ рд▓рд┐рдП, рдПрдиреНрдХреЛрдбрд┐рдВрдЧ / json рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
  • рд╕рд░реНрд╡рд░ API рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ - рдбрд┐рд╕реЗрд░рд┐рдПрд▓рд╛рдЗрдЬрд╝реЗрд╢рди, рдмрд┐рдирд╛ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдХреНрд░рдорд╛рдВрдХрди рдФрд░ [/ testNoReflection] рднреЗрдЬрдирд╛ред .NETCore рдХреЗ рд▓рд┐рдП, рд╕реНрдореГрддрд┐ рдЖрд╡рдВрдЯрди рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЛ рдХрдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕реНрдкреИрди-рдЖрдзрд╛рд░рд┐рдд рд╕рдорд╛рдзрд╛рди рд▓рд╛рдЧреВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЧреЛрд▓рдВрдЧ рдХреЗ рдкрд╛рд╕ рдПрдХ рд░реЗрдбреАрдореЗрдб рд╕рдорд╛рдзрд╛рди рд╣реИ - рдИрдЬреАрдЬреЛрди рд▓рд╛рдЗрдмреНрд░реЗрд░реА, рдЬреЛ рдЦреБрдж рдХреЛ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкрдХреНрд╖ рдкрд░ рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рд╕рд╛рдмрд┐рдд рдХрд░ рдЪреБрдХрд╛ рд╣реИред

рдЗрди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЖрдк рд╡реЗрдм рд╕рд░реНрд╡рд░ (kestrel рдФрд░ net / http) рдХреЗ рдкреНрд░рджрд░реНрд╢рди, рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЛ рдХрдо рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдЬрдм рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реБрдП рдбреЗрдЯрд╛ рдХреЛ рд╕рдВрд╕рд╛рдзрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдЗрд╕рдХреЗ рдмрд┐рдирд╛ рджреЛрдиреЛрдВ рднрд╛рд╖рд╛рдУрдВ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рд▓рд┐рдПред


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


рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рдпрди рдХреЗ рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рд▓рд┐рдП рдХрдИ рдЪрд░рдгреЛрдВ рдореЗрдВ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдПрдХ рд▓реЛрдб рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП, рдмреЙрдореНрдмрд╛рд░реНрдбрд┐рдпрд░ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдХреЛ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдорд╛рдкрджрдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рд▓реЙрдиреНрдЪ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛: -c 125 -d 120s, рдЬрд┐рд╕рдХреА рд╡реНрдпрд╛рдЦреНрдпрд╛ рдирд┐рдореНрди рдкреНрд░рдХрд╛рд░ рд╕реЗ рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ: 120 рд╕реЗрдХрдВрдб рдХреЗ рдкрд░реАрдХреНрд╖рдг рд╕рдордп рдХреЗ рд╕рд╛рде 125 рдереНрд░реЗрдбреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХреИрд╕реЗ рдХрд░реЗрдВред


рдкреНрд░рджрд░реНрд╢рди рдорд╛рдк 3 рдЪрд░рдгреЛрдВ рдореЗрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛:


  1. рдЖрд░рдкреАрдПрд╕ рдПрдкреАрдЖрдИ рд╕рд░реНрд╡рд░ рдЖрдпрд╛рдоред рдкреНрд░рддреНрдпреЗрдХ рд╡рд┐рдзрд┐ рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдзрд┐рдпреЛрдВ рдХреЗ рдкреНрд░рднрд╛рд╡ рдХрд╛ рдЖрдХрд▓рди рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдк рдХрд┐рдП рдЧрдП рдереЗред
  2. рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЖрд░рдкреАрдПрд╕ рдорд╛рдкред
  3. рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдЖрд░рдкреАрдПрд╕ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЛ рдорд╛рдкреЗрдВред

рдЗрди рдорд╛рдкреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдкреНрд░рджрд░реНрд╢рди рдкрд░ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд┐рдП рдЧрдП рдереЗред рд╕рднреА рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ 99.8-100% рдерд╛ред рдореВрд▓реНрдпрд╛рдВрдХрди рдХреЗ рд▓рд┐рдП, 10, 30, 100 рдФрд░ 500 рд░рд┐рдХреЙрд░реНрдб рдХреЗ рдкреНрд░рд╛рд░рдВрднрд┐рдХ рдбреЗрдЯрд╛ рдХрд╛ рдЪрдпрди рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЙрддреНрдкрд╛рджрди рдореЗрдВ 500 рд░рд┐рдХреЙрд░реНрдбреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдиреЗ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рдереА рдХрд┐ рдкреНрд░рддреНрдпреЗрдХ рднрд╛рд╖рд╛ рдХреИрд╕реЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд░рддреА рд╣реИред


рдЯреЗрд╕реНрдЯ рд╕реНрдЯреИрдВрдб


рд╕рднреА рдкрд░реАрдХреНрд╖рдг рдЕрдЧрд╕реНрдд 2019 рдХреЗ рд▓рд┐рдП рд╕рднреА рдЕрдкрдбреЗрдЯ рдХреЗ рд╕рд╛рде рдЙрдмрдВрдЯреВ рд╕рд░реНрд╡рд░ 18.04 рдкрд░ рдЪрд▓рдиреЗ рд╡рд╛рд▓реА рдПрдХ рд╡рд░реНрдЪреБрдЕрд▓ рдорд╢реАрди рдкрд░ рдЪрд▓рд╛рдП рдЧрдП рдереЗред рдЗрд╕рдХреА рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╡рд┐рд╢реЗрд╖рддрд╛рдПрдВ рд╣реИрдВ:


  • рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреЛрд░ I7-3770K - 4 рдХреЛрд░ред
  • рд░реИрдо - 4 рдЬреАрдмреАред

рдкреНрд░рджрд░реНрд╢рди рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП, .NET рдХреЛрд░ 2.2 рдФрд░ рдЧреЛрд▓рдВрдЧ 1.12 рд╕реНрдерд╛рдкрд┐рдд рдХрд┐рдП рдЧрдП рдереЗред


рдЦреИрд░, рдЕрдм рд╕рдмрд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдкрд░рд┐рдгрд╛рдореЛрдВ рдкрд░ рдЖрдЧреЗ рдмрдврд╝рдиреЗ рдХрд╛ рд╕рдордп рд╣реИред


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


рдиреАрдЪреЗ рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рддрд╛рд▓рд┐рдХрд╛ рд╣реИред


alt text


рдЖрдк рддреБрд░рдВрдд рдиреЛрдЯрд┐рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдЧреЛрд▓рдВрдЧ рдореЗрдВ рдЕрдзрд┐рдХ рдЙрддреНрдкрд╛рджрдХ рд╡реЗрдм рд╕рд░реНрд╡рд░ рд╣реИред .NET Core рдореЗрдВ Kestrel рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЕрдВрддрд░ рд▓рдЧрднрдЧ 12% рд╣реИред
рдЙрдкрд░реЛрдХреНрдд рдЖрдВрдХрдбрд╝реЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, 2 рдЧреНрд░рд╛рдлрд╝ рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред рдЕрдЧрд▓рд╛, рдЖрдк рдЖрд░рдкреАрдПрд╕ рдХреА рддреБрд▓рдирд╛ рд╕реНрдкрд╖реНрдЯ рд░реВрдк рд╕реЗ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВред


alt text


рддреЗрдЬреА рд╕реЗ рдиреЗрдЯ / http рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЗ рдХрд╛рд░рдг, рдЧреЛрд▓рдВрдЧ рдЫреЛрдЯреЗ рдбреЗрдЯрд╛ рдХреЗ рд▓рд┐рдП рдЕрдЪреНрдЫреЗ рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рддрд╛ рд╣реИред рдбреЗрдЯрд╛ рд╡реЙрд▓реНрдпреВрдо рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде, рдкреНрд░рджрд░реНрд╢рди рдХреА рддреБрд▓рдирд╛ рдХреЗрд╕реНрдЯреЗрд▓ рдХреЗ рд╕рд╛рде рдХреА рдЬрд╛рддреА рд╣реИред


рдПрдХ рдЫреЛрдЯреЗ рдбреЗрдЯрд╛ рдЖрдХрд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╕рдордп, рдЖрд░рдкреАрдПрд╕ рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реЛрддрд╛ рд╣реИ, рдорд╛рдк рддреНрд░реБрдЯрд┐ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддрд╛ рд╣реИред рдмрдврд╝рддреЗ рдбреЗрдЯрд╛ рдЖрдХрд╛рд░ рдХреЗ рд╕рд╛рде, .NET рдХреЛрд░ рдЕрдзрд┐рдХ RPS рджрд┐рдЦрд╛рддрд╛ рд╣реИред


рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд┐рдирд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░рддреЗ рд╕рдордп, рджреЛрдиреЛрдВ рднрд╛рд╖рд╛рдУрдВ рдиреЗ рдкреНрд░рджрд░реНрд╢рди рд▓рд╛рдн рджрд┐рдЦрд╛рдпрд╛ред рдЧреЛрд▓рдВрдЧ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рджрд┐рдЦрд╛рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕рдореЗрдВ рд╢реБрд░реВ рдореЗрдВ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рдмрд┐рдирд╛ рдкрд░реАрдХреНрд╖рдг рдкрд░ рдЙрдЪреНрдЪрддрд░ рдЖрд░рдкреАрдПрд╕ (рдкреНрд░рддрд┐ рд╕реЗрдХрдВрдб рдЕрдиреБрд░реЛрдз) рд╣реИред рдЫреЛрдЯреЗ рдбреЗрдЯрд╛ рдкрд░, рд▓рд╛рдн рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣реИред рдбреЗрдЯрд╛ рдХреЗ рдЖрдХрд╛рд░ рдореЗрдВ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде, рдЖрд░рдкреАрдПрд╕ рдХреА рддреБрд▓рдирд╛ рд▓рдЧрднрдЧ рд╣реИред 500 рд░рд┐рдХреЙрд░реНрдб рдХреЗ рд╕рдмрд╕реЗ рдмрдбрд╝реЗ рдкрд░реАрдХреНрд╖рдг рдкрд░, рдЧреЛрд▓рдВрдЧ рдлрд┐рд░ рд╕реЗ рдЖрдЧреЗ рд╣реИред


alt text


рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ, рдЧреЛрд▓рдВрдЧ рд╕рднреА рдореЛрд░реНрдЪреЛрдВ рдкрд░ рд╣рд╛рд░ рдЧрдпрд╛ред рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдкреНрд░рджрд░реНрд╢рди рдХреА рдЧрд┐рд░рд╛рд╡рдЯ 60% рд╕реЗ рдЕрдзрд┐рдХ рдереАред рдкреНрд░рджрд░реНрд╢рди рдХреЗ рд▓рд┐рдП рдмреЙрдХреНрд╕ рд╕реЗ рдмрд╛рд╣рд░ рдХреНрд░рдорд╛рдВрдХрди рд▓рд╛рдЧреВ рдХрд░рдирд╛ рдЖрдо рддреМрд░ рдкрд░ рдмреЗрдХрд╛рд░ рд╣реИред
рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХреЗ рдмрд┐рдирд╛, рдЧреЛрд▓рдВрдЧ рд╕рднреА рдкрд░реАрдХреНрд╖рдгреЛрдВ рдореЗрдВ рддреЗрдЬ рдерд╛ред рдФрд░ рдбреЗрдЯрд╛ рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде, рдЧреЛрд▓рдВрдЧ рдХрд╛ рд▓рд╛рдн рдХреЗрд╡рд▓ рдмрдврд╝ рд░рд╣рд╛ рд╣реИред рдХрд┐рд╕реА рднреА рдорд╛рдорд▓реЗ рдореЗрдВ, рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдЗрдирдХрд╛рд░ рдХрд░рдиреЗ рд╕реЗ рдЧреЛрд▓рдВрдЧ рдФрд░ .NETрдХреЛрд░ рджреЛрдиреЛрдВ рдХреЗ рд▓рд┐рдП рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рдкреНрд░рджрд░реНрд╢рди рдХреЛ рдмрдврд╝рд╛рд╡рд╛ рдорд┐рд▓рддрд╛ рд╣реИ, рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рд░реВрдк рд╕реЗ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред


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


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


  • рдЗрд╕рдореЗрдВ рдмреЗрд╣рддрд░ рдкреНрд░рджрд░реНрд╢рди рд╣реИ, рдФрд░ рдЗрд╕реЗ рдФрд░ рдмреЗрд╣рддрд░ рдмрдирд╛рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╡реЗрдм рд╕рд░реНрд╡рд░ рдХреЗ рд░реВрдк рдореЗрдВ рдлрд╛рд╕реНрдЯрд╣рдЯ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗред
  • рдХреЛрдб рдкреАрдврд╝реА рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж - рдкреНрд░рддрд┐рдмрд┐рдВрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдмрд┐рдирд╛ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рд╡рд┐рдзрд┐рдпреЛрдВ рдХрд╛ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рдЙрдкрдпреЛрдЧред
  • рдХрдо рд╕реНрдореГрддрд┐ рдЦрдкрддред

.NET рдХреЛрд░ рдХреЗ рднреА рдХрдИ рдлрд╛рдпрджреЗ рд╣реИрдВ:


  • рдкреНрд░рджрд░реНрд╢рди рдЬреНрдпрд╛рджрд╛рддрд░ рдорд╛рдорд▓реЛрдВ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рд╣реИред
  • рдореЗрд░реА рд░рд╛рдп рдореЗрдВ, рдпрд╣ рд╡рд┐рдЬреБрдЕрд▓ рд╕реНрдЯреВрдбрд┐рдпреЛ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдФрд░ рд╕рдмрд╕реЗ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╡рд┐рдХрд╛рд╕ рд╡рд╛рддрд╛рд╡рд░рдг рдореЗрдВ рд╕реЗ рдПрдХ рд╣реИред

рдкрд░рд┐рдгрд╛рдо рдХреЛ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ: рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ REST API рд╣реИ рдФрд░ рдЖрдк рдПрдХ рдмрдбрд╝реЗ рд▓реЛрдб рдХреА рдпреЛрдЬрдирд╛ рдмрдирд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдмрд╣реБрдд рдЬрдЯрд┐рд▓ рд╡реНрдпрд╡рд╕рд╛рдп рддрд░реНрдХ рдирд╣реАрдВ, рддреЛ рдЧреЛрд▓рд╛рдВрдЧ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реИ, рдЕрдиреНрдп рдорд╛рдорд▓реЛрдВ рдореЗрдВ рдЖрдк .NET рдХреЛрд░ рдХреЗ рд╕рд╛рде рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдХреНрдпрд╛ рдореБрдЭреЗ .NET рдХреЛрд░ рд╕реЗ рдЧреЛрд▓рдВрдЧ рдХреЗ рд▓рд┐рдП рддреИрдпрд╛рд░ рд╕рдорд╛рдзрд╛рди рдлрд┐рд░ рд╕реЗ рд▓рд┐рдЦрдирд╛ рдЪрд╛рд╣рд┐рдП? рд╕рдм рдЕрдкрдиреЗ рд▓рд┐рдП рддрдп рдХрд░реЗрдВрдЧреЗред


рдореБрдЭреЗ рдЖрд╢рд╛ рд╣реИ рдХрд┐ рдЖрдкрдХреЛ рдпрд╣ рд╕рд╛рдордЧреНрд░реА рдЙрдкрдпреЛрдЧреА рд▓рдЧреЗрдЧреАред рд╕рдм рдЕрдЪреНрдЫрд╛ рд╣реИ

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


All Articles