IoT рдЬрд╣рд╛рдВ рдЖрдкрдиреЗ рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд┐рдпрд╛ (рднрд╛рдЧ 3)ред рдПрдХ рд╕рд┐рдореБрд▓реЗрд╢рди рдореЙрдбрд▓ рдХрд╛ рдирд┐рд░реНрдорд╛рдг

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

рдЫрд╡рд┐

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

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

рд╕рд┐рдореБрд▓реЗрд╢рди рдореЙрдбрд▓ рдХрд╛ рд╡рд┐рдХрд╛рд╕


рд╕рд┐рдореБрд▓реЗрд╢рди рдореЙрдбрд▓ рд╕реНрд╡рдпрдВ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдерд╛:

рдЫрд╡рд┐

рдХрдЪрд░рд╛ рдФрд░ рд░рд╛рдЬреНрдп рдХреЗ рд╡реНрдпрд╡рд╣рд╛рд░ рдХрд╛ рд╡рд░реНрдгрди рдПрдХ рдирд┐рдпрдорд┐рдд рд░рд╛рдЬреНрдп рдорд╢реАрди рджреНрд╡рд╛рд░рд╛ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рд░рд╛рдЬреНрдп рдорд╢реАрди рдХреЛ рд░рд╛рдЬреНрдп `EMPTY (рд╕реНрддрд░ = 0)` рдХреЗ рд╕рд╛рде рдЖрд░рдВрднреАрдХреГрдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рд╣рдо рдЙрд╕ рдкрд░ рдХреБрдЫ рдХреНрд░рд┐рдпрд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрд░реНрдерд╛рддреН, рдХрдВрдЯреЗрдирд░ рдореЗрдВ рдХрдЪрд░рд╛ рдлреЗрдВрдХрддреЗ рд╣реИрдВред рдЕрдм рдЖрдкрдХреЛ рдпрд╣ рддрдп рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдХрд┐ рдХреНрдпрд╛ рдХрдВрдЯреЗрдирд░ рдЦрд╛рд▓реА рд░рд╣рддрд╛ рд╣реИ `(рд╕реНрддрд░? MAX_LEVEL)` рдпрд╛ рдпрд╣ рдкреВрд░реНрдг рд╣реИ `(рд╕реНрддрд░> = MAX_LEVEL)`ред рдпрджрд┐ рджреВрд╕рд░рд╛ рд╣реИ, рддреЛ рд╕реНрдерд┐рддрд┐ `рдкреВрд░реНрдг` рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИред

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

рдПрдХ рдФрд░ рдХрдВрдЯреЗрдирд░ рдЬрд▓ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдлрд┐рд░ рд░рд╛рдЬреНрдп-рдорд╢реАрди рдХреА рд╕реНрдерд┐рддрд┐ `FIRE` рдореЗрдВ рдмрджрд▓ рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдХрдВрдЯреЗрдирд░ рдЧрд┐рд░ рд╕рдХрддрд╛ рд╣реИ, рдФрд░ рдЗрд╕рдХреА рд╕реНрдерд┐рддрд┐ `FALL` рд╣реЛ рдЬрд╛рддреА рд╣реИ (рд░рд┐рдкреЛрд░реНрдЯ рдореЗрдВ рдореИрдВрдиреЗ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХреА рдереА рдХрд┐ рдХрд┐рди рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдХрд╛рд░рдгреЛрдВ рд╕реЗ рдХрдВрдЯреЗрдирд░ рдЧрд┐рд░ рд╕рдХрддрд╛ рд╣реИ)ред рд▓реЗрдХрд┐рди рдПрдХ рдЕрдиреНрдп `LOST` рд░рд╛рдЬреНрдп рд╣реИ, рдЬреЛ рдХрд┐рд╕реА рднреА рдЕрдиреНрдп рд░рд╛рдЬреНрдп рд╕реЗ рдорд╛рдиреНрдп рд╣реИ - рдпрд╣ рдХрдиреЗрдХреНрд╢рди рдЦреЛ рдЬрд╛рдиреЗ рдкрд░ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИред

рдРрд╕реА рдПрдХ рд░рд╛рдЬреНрдп рдорд╢реАрди рдХрдВрдЯреЗрдирд░ рдХреЗ рд▓рдЧрднрдЧ рд╕рднреА рд╡реНрдпрд╡рд╣рд╛рд░ рдФрд░ рдЙрд╕ рдкрд░ рд╕реЗрдВрд╕рд░ рдХрд╛ рд╡рд░реНрдгрди рдХрд░рддреА рд╣реИред рд▓реЗрдХрд┐рди рдпрд╣ рдПрдХ рд╕рд┐рдореБрд▓реЗрд╢рди рдореЙрдбрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рд╣рдо рдЙрдирд╕реЗ рд╕рдВрднрд╛рд╡рд┐рдд рд░рд╛рдЬреНрдпреЛрдВ рдФрд░ рд╕рдВрдХреНрд░рдордгреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдЬрд╛рдирддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рд╣рдо рдирд╣реАрдВ рдЬрд╛рдирддреЗ рдХрд┐ рдЗрди рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреНрдпрд╛ рд╣реИ рдФрд░ рд╡реЗ рдХрдм рдШрдЯрд┐рдд рд╣реЛрдВрдЧреЗред

рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рдХрд┐ рдШрдЯрдирд╛рдУрдВ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рджрд┐рди рдХреЗ рд╕рдордп рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐:

  • рд╡рд╛рд╣рдХ рд░рд╛рдд рдореЗрдВ рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ;
  • рд▓реЛрдЧ рдХреБрдЫ рдШрдВрдЯреЛрдВ рдореЗрдВ (рдХрд╛рдо рд╕реЗ рдкрд╣рд▓реЗ рд╕реБрдмрд╣ рдФрд░ рд╢рд╛рдо рдХреЛ) рдЕрдзрд┐рдХ рдХрдЪрд░рд╛ рдлреЗрдВрдХрддреЗ рд╣реИрдВред

рдЗрд╕рд▓рд┐рдП, рд╣рдордиреЗ рд╡реНрдпрд╡рд╕рд╛рдп рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдЯреАрдо рдХреЗ рд▓рд┐рдП рд╕рд┐рдореБрд▓реЗрд╢рди рд╡реНрдпрд╡рд╣рд╛рд░ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдмрдирд╛ рджрд┐рдпрд╛ред рджрд┐рди рдХреЗ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рд╕рдордп рдореЗрдВ рдХрд┐рд╕реА рдШрдЯрдирд╛ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдирд┐рд░реНрдзрд╛рд░рд┐рдд рдХрд░рдирд╛ рд╕рдВрднрд╡ рдерд╛ред

рд╕рд░рд▓ рдФрд░ рд╕рд╣рдЬ рддрдирд╛рд╡ рдкрд░реАрдХреНрд╖рдг


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

рдЗрд╕рд▓рд┐рдП, рдмреИрдХрдПрдВрдб рдХреЗ рд▓рд┐рдП рд╕рд┐рдореБрд▓реЗрд╢рди рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕реЗрдВрд╕рд░ рд╕реЗ рдЕрд▓рдЧ рдирд╣реАрдВ рд╣реИред рдФрд░ рдЕрдЧрд░ рд╣рдореЗрдВ 1000 рд╕реЗрдВрд╕рд░ рдЪрд▓рд╛рдиреЗ, 1000 рдзрд╛рдЧреЗ рдЪрд▓рд╛рдиреЗ рдФрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЗрд╕рдХреЗ рдЕрд▓рд╛рд╡рд╛, рд╕рд┐рдореБрд▓реЗрд╢рди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рддрд░рд╛рдЬреВред

рдЫрд╡рд┐

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

рдРрд╕реЗ рд╕рд░реНрд╡рд░ рдХреЛ рдмрд╣реБ-рдереНрд░реЗрдбреЗрдб рд╣реЛрдирд╛ рдкрдбрд╝рддрд╛ рдерд╛, рдХреНрдпреЛрдВрдХрд┐ рдХрдИ рдЗрдирдкреБрдЯ рд╕реЗрдВрд╕рд░ рд╣реЛрддреЗ рд╣реИрдВред рдФрд░ рдЗрд╕ рднрд╛рдЧ рдХреЛ рднреА рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдгреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЕрд▓рдЧ рд╕реЗ рдкрд░реАрдХреНрд╖рдг рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИред рдЖрдк JMeter рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ (рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдкрд░реАрдХреНрд╖рдг рд╕реНрдХреНрд░рд┐рдкреНрдЯ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ), JMH / JCStress (рдЕрд▓рдЧ-рдерд▓рдЧ рднрд╛рдЧреЛрдВ рдХрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд░реЗрдВ рдФрд░ рдПрдХ рдкрддрд▓рд╛ рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдмрдирд╛рдПрдВ), рдпрд╛ рдЕрдкрдиреЗ рдЦреБрдж рдХреЗ рдХреБрдЫ рдФрд░ред рдЬрдм рдЖрдк рдПрдХ рд╕рдорд╛рди рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдирд┐рд░реНрдгрдп рд▓реЗрддреЗ рд╣реИрдВ, рддреЛ рдореИрдВ рдЖрдкрдХреЛ рдкреЗрд╢реЗрд╡рд░реЛрдВ рдХреЛ рд╕реБрдирдиреЗ рдХреА рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реВрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрд▓реЗрдХреНрд╕реА рд╢рд┐рдкрд┐рд▓реЗрд╡ред JPoint 2017 рдореЗрдВ, рд╡рд╣ рдмрд╣реБрдд рдЖрд░рд╛рдо рд╕реЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдмреЗрдВрдЪрдорд╛рд░реНрдХ рдЕрд▓рдЧ рдЕрд▓рдЧ рдмрд╛рддреЗрдВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреИрд╕реЗ рдФрд░ рдХреНрдпрд╛ рдЖрдк рдЬрдм рдкреНрд░рджрд░реНрд╢рди рдкрд░реАрдХреНрд╖рдг рдХрд░ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╕реЛрдЪрдиреЗ рдХреА рдЬрд░реВрд░рдд рд╣реИред


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

рд╣рдорд╛рд░реЗ рдкрд╛рд╕ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рдЙрдкрдХрд░рдг рдерд╛, рдЬреЛ рд╣рдореЗрдВ рднрд╛рд░ рдкрд░рд┐рджреГрд╢реНрдп рдХрд╛ рд╢реАрдШреНрд░рддрд╛ рд╕реЗ рд╡рд░реНрдгрди рдХрд░рдиреЗ рдФрд░ рд╕рдорд╛рдирд╛рдВрддрд░ рдзрд╛рдЧреЗ рдХреА рд╕рд╣реА рдорд╛рддреНрд░рд╛ рдореЗрдВ рдЪрд▓рд╛рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рдерд╛:

StressTestRunner.test()
                .mode(ExecutionMode.EXECUTOR_MODE)
                .threads(THREADS_COUNT)
                .iterations(MESSAGES_COUNT)
                .timeout(5, TimeUnit.SECONDS)
                .run(() -> sensor.send(MESSAGE));

Awaitility.await()
          .atMost(5, TimeUnit.SECONDS)
          .untilAsserted(() ->
            verifyReceived(MESSAGES_COUNT)
          );

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

рдиреЗрдЯрд╡рд░реНрдХ рдХреА рд╕рдорд╕реНрдпрд╛рдУрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг


рдирдХрд▓ рдХреА рдорджрдж рд╕реЗ, рд╣рдо рд╕реЙрдХреЗрдЯреНрд╕ рдХреЗ рд╕рд╛рде рдЦрд░рд╛рдм-рдЧреБрдгрд╡рддреНрддрд╛ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдХрд╛рд░реНрдп рджреЛрдиреЛрдВ рдХрд╛ рдЕрдиреБрдХрд░рдг рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рдереЗред рд╕реЗрдВрд╕рд░реЛрдВ рдореЗрдВ рдЬреАрдПрд╕рдПрдо рд╕рд┐рдо рдХрд╛рд░реНрдб рдореЗрдВ "рд╕рдлреЗрдж" рдЖрдИрдкреА рдкрддреЗ рдирд╣реАрдВ рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ рд╣рдо рджрд┐рди рдореЗрдВ 50 рдмрд╛рд░ рд╡рд┐рднрд┐рдиреНрди рдЖрдИрдкреА рд╕реЗ рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдФрд░ рдЕрдХреНрд╕рд░ рдРрд╕рд╛ рд╣реБрдЖ рдХрд┐ рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рд╛ рдЧрдпрд╛ рдерд╛, рд╣рдордиреЗ рдбреЗрдЯрд╛ рдЯреНрд░рд╛рдВрд╕рдлрд░ рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░ рджрд┐рдпрд╛, рдлрд┐рд░ рдЖрдИрдкреА рдПрдбреНрд░реЗрд╕ рдмрджрд▓ рдЧрдпрд╛, рдФрд░ рд╕рд░реНрд╡рд░ рдкреБрд░рд╛рдиреЗ рдХреЛ рдмрдВрдж рдХрд┐рдП рдмрд┐рдирд╛ рдПрдХ рдирдпрд╛ рдХрдиреЗрдХреНрд╢рди рдЦреЛрд▓рддрд╛ рд╣реИред рдпрджрд┐ рд╣рдо рдЗрд╕реЗ рдзреНрдпрд╛рди рдореЗрдВ рдирд╣реАрдВ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдХреБрдЫ рджрд┐рдиреЛрдВ рдореЗрдВ рд╣рдо рд╕рд░реНрд╡рд░ рдкрд░ рдореБрдлреНрдд рдмрдВрджрд░рдЧрд╛рд╣реЛрдВ рд╕реЗ рдмрд╛рд╣рд░ рдирд┐рдХрд▓ рдЬрд╛рдПрдВрдЧреЗред

рдЫрд╡рд┐

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

рдЫрд╡рд┐

рдпрд╣ рдЙрди рдкрд░рд┐рджреГрд╢реНрдпреЛрдВ рдХрд╛ рдПрдХ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИ рдЬрд┐рдиреНрд╣реЗрдВ рдореЙрдбрд▓ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдЬрд╛рдБрдЪ - рдкрд░рд┐рдгрд╛рдо


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

рд╣рдордиреЗ IoT рдореЗрдВ рд╡рд┐рдХрд╛рд╕ рдХреЗ рдХреБрдЫ рдЕрд▓рдЧ рдкрд╣рд▓реБрдУрдВ рдХреЛ рджреЗрдЦрд╛ред

рдЫрд╡рд┐

рдпрджрд┐ рдЖрдкрдиреЗ рдЗрд╕ рд▓реЗрдЦ рдХреЗ рдкрд┐рдЫрд▓реЗ рджреЛ рднрд╛рдЧреЛрдВ рдХреЛ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рд╣реИ, рддреЛ рдЖрдк рдЙрдиреНрд╣реЗрдВ рдпрд╣рд╛рдБ рдкрд╛ рд╕рдХрддреЗ рд╣реИрдВ:

IoT рдЬрд╣рд╛рдБ рдЖрдк рдкреНрд░рддреАрдХреНрд╖рд╛ рдирд╣реАрдВ рдХрд░рддреЗ рдереЗ (рднрд╛рдЧ 1) -
IoT рдХрд╛ рд╡рд┐рд╖рдп рдХреНрд╖реЗрддреНрд░ рдФрд░ рд╕рдорд╕реНрдпрд╛рдПрдВ рдЬрд╣рд╛рдБ рдЖрдк рдЗрдВрддрдЬрд╛рд░ рдирд╣реАрдВ рдХрд░рддреЗ рдереЗ (рднрд╛рдЧ 2) - рдЕрдиреБрдкреНрд░рдпреЛрдЧ рд╡рд╛рд╕реНрддреБрдХрд▓рд╛ рдФрд░ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЪреАрдЬрд╝реЛрдВ рдХрд╛ IoT рдкрд░реАрдХреНрд╖рдг

Github рдкрд░реАрдХреНрд╖рдг рдХреЗ рдЙрдкрдХрд░рдг рдХреЗ рд╕рд╛рде рдкреНрд░рд╢реНрди рдореЗрдВред

. , Heisenbug , IoT. , ! JPoint, . Heisenbug JPoint 6 . !

All Articles