αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αžŸαž½αžŸαŸ’αžαžΈ αž αžΆαž”!

αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αžšαž”αžŸαŸ‹αž™αžΎαž„αž˜αžΆαž“αž―αž€αž‘αŸαžŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ ERP-class αžŠαŸ‚αž›αž‡αžΆαž…αŸ†αžŽαŸ‚αž€αžšαž”αžŸαŸ‹αžŸαžαŸ’αžœαžαŸ„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžΆαž“αŸ‹αž€αžΆαž”αŸ‹αžŠαŸ„αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž…αŸ†αž“αž½αž“αžŠαŸαž…αŸ’αžšαžΎαž“αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αž·αž„αž›αŸ†αž αžΌαžšαž―αž€αžŸαžΆαžš a la EDMS αŸ” αž€αŸ†αžŽαŸ‚αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸƒαž•αž›αž·αžαž•αž›αžšαž”αžŸαŸ‹αž™αžΎαž„αž‚αžΊαž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆ JavaEE αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž€αŸαž€αŸ†αž–αž»αž„αž’αŸ’αžœαžΎαž€αžΆαžšαž–αž·αžŸαŸ„αž’αž“αŸαž™αŸ‰αžΆαž„αžŸαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌαž•αž„αžŠαŸ‚αžšαŸ” αž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αž€αŸ’αž“αž»αž„αž…αŸ†αžŽαŸ„αž˜αž”αž‰αŸ’αž αžΆαž”αŸ†αž•αž»αžαž“αŸƒαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ‚αž”αž“αŸαŸ‡αž‚αžΊαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž•αŸ’αžŸαŸαž„αŸ—αžŠαŸ‚αž›αž‡αžΆαž€αž˜αŸ’αž˜αžŸαž·αž‘αŸ’αž’αž·αžšαž”αžŸαŸ‹αžŠαŸ‚αž“αžŠαŸ‚αž›αž“αŸ…αž‡αžΆαž”αŸ‹αž‚αŸ’αž“αžΆαŸ” αž”αž‰αŸ’αž αžΆαž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžαŸ‚αž„αžαŸ‚αž’αŸ’αžœαžΎαž±αŸ’αž™αž™αžΎαž„αžˆαžΊαž€αŸ’αž”αžΆαž›αž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„ αžŠαŸ„αž™αž˜αž·αž“αž‚αž·αžαž–αžΈαžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ αž‡αž„αŸ‹αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆ αž“αž·αž„αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαžŠαŸ‚αž›αž™αžΎαž„αž”αŸ’αžšαžΎ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡αž˜αžΆαž“αž€αžΆαžšαžœαž·αžœαžŒαŸ’αžαž“αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž”αŸ‚αž”αž“αŸαŸ‡αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αžŠαŸ‚αž›αžαŸ’αž‰αž»αŸ†αž“αžΆαŸ†αž™αž€αž˜αž€αž‡αžΌαž“αž’αŸ’αž“αž€ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸ αž“αž·αž„αž€αžΆαžšαžŸαŸ’αžšαžΆαžœαž‡αŸ’αžšαžΆαžœαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αžŠαŸ‚αž› NPO Krista αž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αŸ” αž™αžΎαž„αž€αŸαž“αžΉαž„αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαžΆαž˜αž‰αŸ’αž‰αž˜αž½αž™αž…αŸ†αž–αŸ„αŸ‡αž”αž‰αŸ’αž αžΆαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αž–αžΈαž‘αžŸαŸ’αžŸαž“αŸˆαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž“αž·αž„αžŸαŸ’αžœαŸ‚αž„αžšαž€αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž›αžΆαž€αŸ‹αž“αŸ…αž–αžΈαž€αŸ’αžšαŸ„αž™αž—αžΆαž–αžŸαžΆαž˜αž‰αŸ’αž‰αž“αŸαŸ‡αŸ”

ធេស

αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ αž“αž·αž„αž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸαžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαŸ’αž“αžΎαž‘αžΎαž„αžŠαŸ„αž™αžαŸ’αž‰αž»αŸ†αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘αž“αŸƒαž€αž·αž…αŸ’αž…αž€αžΆαžšαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αŸ” αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‘αžΆαŸ†αž„αž“αŸαŸ‡αž˜αž·αž“αž’αŸ‡αž’αžΆαž„αžαžΆαž‡αžΆαžŸαž€αž›αž‘αŸ αž αžΎαž™αž”αŸ’αžšαž αŸ‚αž›αž‡αžΆαž˜αž·αž“αž›αŸ’αž’αž”αŸ†αž•αž»αžαž€αŸ’αžšαŸ„αž˜αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ”

តើ BPM αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αžœαžΆαž’αŸ’αžœαžΈαžαŸ’αž›αŸ‡?

αžŠαžΎαž˜αŸ’αž”αžΈαž†αŸ’αž›αžΎαž™αžŸαŸ†αžŽαž½αžšαž“αŸαŸ‡ αž™αžΎαž„αžαŸ’αžšαžΌαžœαžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αž±αŸ’αž™αž€αžΆαž“αŸ‹αžαŸ‚αžŸαŸŠαžΈαž‡αž˜αŸ’αžšαŸ…αž”αž“αŸ’αžαž·αž…αž‘αŸ…αž›αžΎαž…αŸ†αžŽαž»αž…αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž“αŸƒαž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž“αŸƒαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžšαž”αžŸαŸ‹αž™αžΎαž„αŸ” αž•αŸ’αž“αŸ‚αž€αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αž»αžšαž€αž·αž…αŸ’αž…αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž’αž˜αŸ’αž˜αžαžΆαžšαž”αžŸαŸ‹αž™αžΎαž„αž‚αžΊαž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž˜αžšαž™αŸˆαž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎ αž€αžΆαžšαž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžŠαŸ„αž™αžŠαŸƒ αž“αž·αž„αž€αžΆαžšαž•αŸ’αž‘αŸ€αž„αž•αŸ’αž‘αžΆαžαŸ‹αžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸαŸ‡ αž’αž“αž»αžœαžαŸ’αžαžœαžΆαžαžΆαž˜αžšαž™αŸˆαž›αŸ†αž αžΌαžšαž€αžΆαžšαž„αžΆαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“ αž”αŸ„αŸ‡αž–αž»αž˜αŸ’αž–αžœαžΆαž‘αŸ…αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž•αŸ’αžŸαŸαž„αž‘αŸ€αž / αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžœαž·αž—αžΆαž‚ / αž”αžŽαŸ’αžŽαžŸαžΆαžš αž”αž„αŸ’αž€αžΎαžαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαŸ” . αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž˜αž»αžαž„αžΆαžšαžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αžαž·αžαž·αž‡αž“αž‚αžΊαžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž€αž˜αŸ’αž˜αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αŸ’αž‘αŸƒαž€αŸ’αž“αž»αž„αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαž—αžΆαž–αž„αžΆαž™αžŸαŸ’αžšαž½αž› αž™αžΎαž„αž”αŸ’αžšαžΎαž–αžΆαž€αŸ’αž™ "αž―αž€αžŸαžΆαžš" αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž‡αžΆαž’αžšαžΌαž”αžΈαž“αŸƒαžŸαŸ†αžŽαž»αŸ†αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αžšαž½αž”αžšαž½αž˜αž‚αŸ’αž“αžΆαžŠαŸ„αž™αž‚αž“αŸ’αž›αžΉαŸ‡αž‘αžΌαž‘αŸ…αžŠαŸ‚αž›αž›αŸ†αž αžΌαžšαž€αžΆαžšαž„αžΆαžšαž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“ "αž—αŸ’αž‡αžΆαž”αŸ‹" αŸ”
αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž…αž»αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž…αŸ†αž–αŸ„αŸ‡αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›? αž™αŸ‰αžΆαž„αžŽαžΆαž˜αž·αž‰ αž€αž·αž…αŸ’αž…αž€αžΆαžšαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“ "αž€αžΆαžαŸ‹" αž‡αžΆαž•αŸ’αž“αŸ‚αž€αŸ— αž˜αž·αž“αž˜αŸ‚αž“αžαžΆαž˜αžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž’αžαž·αžαž·αž‡αž“αž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αžšαŸ„αž˜αž₯αž‘αŸ’αž’αž·αž–αž›αž“αŸƒαž€αžαŸ’αžαžΆαžαž»αžŸαž‚αŸ’αž“αžΆαž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αŸ–

  • αž‡αžΆαž€αž˜αŸ’αž˜αžœαžαŸ’αžαž»αž“αŸƒαž…αŸ’αž”αžΆαž”αŸ‹ Conway;
  • αž‡αžΆαž›αž‘αŸ’αž’αž•αž›αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αž–αžΈαž˜αž»αž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž•αž›αž·αžαž•αž›αž•αŸ’αžŸαŸαž„αž‘αŸ€αž;
  • αžαžΆαž˜αž€αžΆαžšαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαžšαž”αžŸαŸ‹αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αžš αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”

αž˜αžΆαž“αž€αžΆαžšαž›αŸ’αž”αž½αž„αžŠαŸαž’αžŸαŸ’αž…αžΆαžšαŸ’αž™αž˜αž½αž™αžŠαžΎαž˜αŸ’αž”αžΈαž”αŸ†αž”αŸ‚αž€αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αž…αŸαž‰αž–αžΈαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸƒαž›αŸ†αž αžΌαžšαž€αžΆαžšαž„αžΆαžšαžŸαŸ†αžαžΆαž“αŸ‹ αžŠαžΎαž˜αŸ’αž”αžΈαž€αž»αŸ†αž±αŸ’αž™αž”αŸ†αž–αž»αž›αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžœαžαŸ’αžαž»αž”αž»αžšαžΆαžŽαž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž› αž“αž·αž„αž‡αž½αž™αžŸαž„αŸ’αžšαŸ’αž‚αŸ„αŸ‡αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž–αžΈαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αž–αžΈαž›αž€αŸ’αžαžŽαŸˆαž“αŸƒαž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ” αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡αž˜αžΆαž“αž‚αž»αžŽαžŸαž˜αŸ’αž”αžαŸ’αžαž·αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž”αž„αŸ’αž αžΆαž‰αž–αžΈαž—αžΆαž–αž‚αŸ’αž˜αžΆαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αžšαž”αžŸαŸ‹αžœαžΆαŸ–

  • αž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αž‡αžΆαž’αž˜αŸ’αž˜αžαžΆαžαŸ’αžšαž›αž”αŸ‹αž‘αŸ…αž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸαžŸαžΆαž˜αž‰αŸ’αž‰αž”αŸ†αž•αž»αžαž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž“αŸƒαž€αžΆαžšαž αŸ…αž…αžΌαž›αžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜ αžŠαŸ„αž™αžŸαžΆαžšαž…αŸ†αžŽαž»αž…αž”αž“αŸ’αžαŸ‚αž˜αž˜αžΆαž“αž€αŸ†αžŽαžαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž›αŸ†αž αžΌαžšαž€αžΆαžšαž„αžΆαžšαž…αž˜αŸ’αž”αž„ (αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž–αž·αž—αžΆαž€αŸ’αžŸαžΆαžαžΆαž„αž€αŸ’αžšαŸ„αž˜);
  • αžœαžαŸ’αžαž»αž”αž»αžšαžΆαžŽαž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αž“αŸ…αžαŸ‚αž‡αŸ’αžšαžΆαž”αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŸαŸ’αž“αžΌαž› αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž˜αžαž·αž€αŸ‚αž›αž˜αŸ’αž’αž–αžΈαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžšαŸ”
  • αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž·αž“αž’αžΎαž–αžΎαž“αžΉαž„αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž› αž αžΎαž™αž’αžΆαž…αž”αŸ†αž”αŸ‚αž€αžœαžΆαž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŠαŸ„αž™αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž›αŸ†αž αžΌαžšαž€αžΆαžšαž„αžΆαžšαŸ”
  • αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžˆαž”αŸ‹αž“αŸ…αžαŸ‚αž˜αž½αž™αž–αžΈαž‘αžŸαŸ’αžŸαž“αŸˆαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎ "αžαŸ’αž“αŸαžš" αžšαžœαžΆαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž’αžΆαž…αž€αžαŸ‹αžŸαž˜αŸ’αž‚αžΆαž›αŸ‹αž”αžΆαž“ αž αžΎαž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž›αŸ‚αž„αžαŸ’αžšαžΌαžœαž€αžΆαžšαžαž‘αŸ…αž‘αŸ€αž αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž•αŸ’αž‘αŸαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž–αžΈαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž˜αž½αž™αž‘αŸ…αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž˜αž½αž™αž‘αŸ€αžαŸ”

αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‚αžΊαžŠαžΎαž˜αŸ’αž”αžΈαž–αž·αž…αžΆαžšαžŽαžΆαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‡αžΆαž•αŸ’αž“αŸ‚αž€αžŸαŸ†αžαžΆαž“αŸ‹αž˜αž½αž™αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆ αž“αž·αž„αž›αŸ†αž αžΌαžšαž€αžΆαžšαž„αžΆαžšαžŸαŸ’αž“αžΌαž›αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžšαž–αžΆαžšαž‚αž»αžŽαžœαž»αžŒαŸ’αžαž·αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž–αžΈαž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αžαŸ’αž–αžŸαŸ‹ αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžαŸ’αž˜αžΈαž‚αž½αžšαžαŸ‚αž˜αžΆαž“αž—αžΆαž–αž„αžΆαž™αžŸαŸ’αžšαž½αž› αž“αž·αž„αž‚αŸ’αž˜αžΆαž“αž€αžΆαžšαž”αŸ’αžšαžΉαž„αž”αŸ’αžšαŸ‚αž„ αžŠαŸ„αž™αž˜αžΆαž“αž±αž€αžΆαžŸαžαž·αž…αžαž½αž…αž”αŸ†αž•αž»αžαž€αŸ’αž“αž»αž„αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αŸ” αž“αŸαŸ‡αž–αž·αž”αžΆαž€αž’αŸ’αžœαžΎαž‡αžΆαž„αžœαžΆαŸ– αž§αž”αž€αžšαžŽαŸαžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αžαžΆαž˜αž–αž›αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž“αžΌαžœαž‡αž˜αŸ’αžšαžΎαžŸαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžšαž”αžŸαŸ‹αžœαžΆ αžŠαŸ„αž™αž˜αž·αž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž‚αžΆαžαŸ‹ "αž”αžΆαž‰αŸ‹αžαŸ’αž›αž½αž“αž―αž„αžŠαŸ„αž™αž‡αžΎαž„"αŸ” αž˜αžΆαž“αžŸαŸ†αžŽαž½αžšαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αžœαž·αžŸαŸ’αžœαž€αžšαžαŸ’αžšαžΌαžœαžαŸ‚αž†αŸ’αž›αžΎαž™αž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘αž“αŸƒαž€αž·αž…αŸ’αž…αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž› αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž·αž“αž‚αž½αžšαž‚αž·αžαž’αŸ†αž–αžΈαž€αž·αž…αŸ’αž…αž€αžΆαžšαž”αŸ’αžšαž…αžΆαŸ†αžαŸ’αž„αŸƒαžšαž”αžŸαŸ‹αž‚αžΆαžαŸ‹αŸ– αž–αŸ’αžšαŸ†αžŠαŸ‚αž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆ αž’αžΆαžαžΌαž˜αž·αž€ αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž– αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“ αž€αžΆαžšαž•αŸ’αž‘αž»αž€ αž“αž·αž„αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž’αž“αž’αžΆαž“ αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž•αŸ’αž›αžΌαžœ αž€αžΆαžšαžŠαžΆαž€αŸ‹αž–αž„αŸ’αžšαžΆαž™αŸ” αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ αž“αž·αž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αžšαž·αž”αž‘αŸ”αž›αŸ” αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž•αŸ’αžαž›αŸ‹αž‡αžΌαž“αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΌαžœαž‚αŸ†αžšαžΌαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαžΆαž˜αž‰αŸ’αž‰αž™αž»αžαŸ’αžαž·αž’αž˜αŸŒ αžŠαŸ‚αž›αž…αž˜αŸ’αž›αžΎαž™αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸ„αŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αžΆαž€αŸ‹αžšαž½αž…αž αžΎαž™αŸ” αž‚αŸ†αžšαžΌαž‘αžΆαŸ†αž„αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αžŽαžΆαžŸαŸ‹αŸ– αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹ αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαž“αž αžΆαž“αž·αž—αŸαž™αž“αŸƒαž€αžΆαžšαžŽαŸ‚αž“αžΆαŸ†αž’αŸ†αž–αžΈαž€αŸ†αž αž»αžŸ αžαž˜αŸ’αž›αŸƒαž“αŸƒαž€αŸ†αž αž»αžŸαžαŸ’αžšαžΌαžœαžαŸ‚αžŸαŸ’αžαž·αžαž€αŸ’αž“αž»αž„αž€αž˜αŸ’αžšαž·αžαž‘αžΆαž”αž‚αž½αžšαžŸαž˜αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαžΎ BPM αž˜αžΆαž“αž’αŸ’αžœαžΈαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž‡αžΆαž˜αž½αž™αžœαžΆ? αž˜αžΆαž“αž‡αž˜αŸ’αžšαžΎαžŸαž‡αžΆαž…αŸ’αžšαžΎαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αž»αžœαžαŸ’αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž€αžΆαžšαž„αžΆαžš...
αž‡αžΆαž€αžΆαžšαž–αž·αž αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‚αžΊαž˜αžΆαž“αž”αŸ’αžšαž‡αžΆαž”αŸ’αžšαž·αž™αž—αžΆαž–αžαŸ’αž›αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžšαž”αžŸαŸ‹αž™αžΎαž„ - αžαžΆαž˜αžšαž™αŸˆαž“αž·αž™αž˜αž“αŸαž™αž”αŸ’αžšαž€αžΆαžŸαž“αŸƒαžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžšαžŠαŸ’αž‹ αž“αž·αž„αž€αžΆαžšαž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαŸ” αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡ αžšαžŠαŸ’αž‹αžŠαŸ‚αž›αž€αŸ†αžŽαžαŸ‹αž‘αžΈαžαžΆαŸ†αž„αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž“αŸƒ "αž―αž€αžŸαžΆαžš" αž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž‚αžΊαž‡αžΆαž‚αž»αžŽαž›αž€αŸ’αžαžŽαŸˆαž“αŸƒ "αž―αž€αžŸαžΆαžš" αžαŸ’αž›αž½αž“αž―αž„αŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM
αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αžΎαž›αž‘αŸ…αžŠαžΌαž…αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‚αž˜αŸ’αžšαŸ„αž„

αž—αžΆαž–αž–αŸαž‰αž“αž·αž™αž˜αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž“αŸαŸ‡αž‚αžΊαžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž—αžΆαž–αžŸαžΆαž˜αž‰αŸ’αž‰ αž“αž·αž„αž›αŸ’αž”αžΏαž“αž“αŸƒαž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž›αžΈαž“αŸαž’αŸŠαŸ‚αžšαŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αžŠαŸ„αž™αžŸαžΆαžšαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžŸαžΌαž αŸ’αžœαžœαŸ‚αžšαž€αžΆαž“αŸ‹αžαŸ‚αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰ αž•αŸ’αž“αŸ‚αž€αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž€αžΆαž“αŸ‹αžαŸ‚αžšαžΈαž€αž…αž˜αŸ’αžšαžΎαž“ αž“αž·αž„αž€αžΆαž“αŸ‹αžαŸ‚αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αŸ” αžœαžΆαž˜αžΆαž“αžαŸ†αžšαžΌαžœαž€αžΆαžšαžŸαŸ†αžšαžΆαž”αŸ‹αž€αžΆαžšαžšαž›αž½αž™ αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαž•αŸ’αž“αŸ‚αž€αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž€αŸαžŠαžΌαž…αž‡αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαžΆαžαžΆ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŸαžΆαžαžΆαž“αžΈαž˜αž½αž™αŸ—αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ” αž“αŸ…αž€αŸ’αžšαŸ„αž˜αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž”αŸ‚αž”αž“αŸαŸ‡ αž§αž”αž€αžšαžŽαŸαž€αŸ’αž›αžΆαž™αž‡αžΆαž€αžΆαžšαžšαž’αžΆαž€αŸ‹αžšαž’αž½αž› αž αžΎαž™αžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžšαžŠαŸ’αž‹αž”αžΆαžαŸ‹αž”αž„αŸ‹αžαŸ’αž›αžΉαž˜αžŸαžΆαžšαž–αŸαžαŸŒαž˜αžΆαž“αžšαž”αžŸαŸ‹αžœαžΆ (αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž†αŸ’αž›αž»αŸ‡αž”αž‰αŸ’αž…αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αž‘αžΆαž›αŸ‹αžαŸ‚αžŸαŸ„αŸ‡)αŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM
αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž’αŸ’αžœαžΈαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αžΎαž›αž‘αŸ…αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“

αž•αŸ’αž›αžΌαžœαž…αŸαž‰αž–αžΈαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸαŸ‡αž‚αžΊαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“ jBPM αž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„αž•αž›αž·αžαž•αž›αž˜αž½αž™αž…αŸ†αž“αž½αž“αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž”αŸ†αž•αž»αžαŸ” αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αžαŸ’αž›αžΈ αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸαŸ‡αž”αžΆαž“αž‘αž‘αž½αž›αž‡αŸ„αž‚αž‡αŸαž™αžαŸ’αž›αŸ‡αŸ– αžœαžΆαž’αžΆαž…αž‘αŸ…αžšαž½αž…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰ αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αžšαž€αŸ’αžŸαžΆαž”αžΆαž“αž“αžΌαžœαžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αžŠαŸ‚αž›αž˜αžΆαž“αž–αŸαžαŸŒαž˜αžΆαž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ αž“αž·αž„αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž‰αŸ’αž‰αžΆαžŽαŸ” BPMN2.

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM
αž•αŸ’αž“αŸ‚αž€αžαžΌαž…αž˜αž½αž™αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰

αž€αŸ’αž“αž»αž„αžšαž™αŸˆαž–αŸαž›αžœαŸ‚αž„ αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž˜αž·αž“αžŸαŸ’αžšαž”αžαžΆαž˜αž€αžΆαžšαžšαŸ†αž–αžΉαž„αž‘αž»αž€αž‘αŸαŸ– αž’αžΆαŸ†αž„αžαž„αŸ‹αžŸαŸŠαžΈαžαŸαž–αž›αž€αž˜αŸ’αž˜αžαŸ’αž–αžŸαŸ‹αž“αŸƒαž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαžΆαž˜αžšαž™αŸˆαž§αž”αž€αžšαžŽαŸαžŠαŸ‚αž›αž˜αžΎαž›αžƒαžΎαž‰αž˜αž·αž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αž“αžΌαžœαžŸαžΌαž…αž“αžΆαž€αžšαž•αž›αž·αžαž—αžΆαž–αžŠαŸ‚αž›αž’αžΆαž…αž‘αž‘αž½αž›αž™αž€αž”αžΆαž“ αž αžΎαž™αž§αž”αž€αžšαžŽαŸαžαŸ’αž›αž½αž“αžœαžΆαž”αžΆαž“αž€αŸ’αž›αžΆαž™αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž˜αž½αž™αžŠαŸ‚αž›αž˜αž·αž“αž…αžΌαž›αž…αž·αžαŸ’αžαž”αŸ†αž•αž»αžαž€αŸ’αž“αž»αž„αž…αŸ†αžŽαŸ„αž˜αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαŸ” αžœαžΆαž€αŸαž˜αžΆαž“αž€αžΆαžšαžαŸ’αž’αžΌαž‰αžαŸ’αž’αŸ‚αžšαž’αŸ†αž–αžΈαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αžαžΆαž„αž€αŸ’αž“αž»αž„αžšαž”αžŸαŸ‹αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αžŠαŸ‚αž›αž“αžΆαŸ†αž±αŸ’αž™αž˜αžΆαž“αžšαžΌαž”αžšαžΆαž„αž“αŸƒ "αž”αŸ†αžŽαŸ‡" αž“αž·αž„ "αžˆαžΎαž…αŸ’αžšαžαŸ‹" αž‡αžΆαž…αŸ’αžšαžΎαž“αŸ”

αž‘αž·αžŠαŸ’αž‹αž—αžΆαž–αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αž…αž˜αŸ’αž”αž„αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ jBPM αž‚αžΊαž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αž’αŸ†αž–αžΈαž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸ αž“αž·αž„αž‚αŸ’αžšαŸ„αŸ‡αžαŸ’αž“αžΆαž€αŸ‹αž“αŸƒαž€αžΆαžšαž˜αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αž“αŸ’αžαž•αŸ’αž‘αžΆαž›αŸ‹αžšαž”αžŸαŸ‹αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ” αž™αžΎαž„αž€αŸαž”αžΆαž“αžƒαžΎαž‰αž›αž‘αŸ’αž’αž—αžΆαž–αž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαžΎαž˜αŸ’αž”αžΈαž’αž“αž»αžœαžαŸ’αžαž–αž·αž’αžΈαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŠαŸαžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αžšαžœαžΆαž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆαžŠαŸ„αž™αž”αŸ’αžšαžΎαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž’αžŸαž˜αž€αžΆαž›αžαžΆαž˜αžšαž™αŸˆαžŸαž‰αŸ’αž‰αžΆ αž“αž·αž„αžŸαžΆαžšαŸ” αžœαžαŸ’αžαž˜αžΆαž“αžšαž”αžŸαŸ‹αžšαžŠαŸ’αž‹αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αžŠαžΎαžšαžαž½αž“αžΆαž‘αžΈαž™αŸ‰αžΆαž„αžŸαŸ†αžαžΆαž“αŸ‹αž€αŸ’αž“αž»αž„αžšαžΏαž„αž“αŸαŸ‡αŸ”

αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž…αŸ†αžŽαž»αž…αžαžΆαž„αž›αžΎαž™αžΎαž„αž’αžΆαž…αžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“: αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αž·αž…αŸ’αž…αž€αžΆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž·αž€αž˜αŸ’αž˜αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž›αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž€αžΆαž“αŸ‹αžαŸ‚αžαŸ’αž›αžΆαŸ†αž„αž‘αžΎαž„ αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αž˜αžΆαž“αž—αžΆαž–αž…αž»αŸ‡αžŸαž˜αŸ’αžšαž»αž„αž‚αŸ’αž“αžΆαž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡ αž“αž·αž„αžšαž€αŸ’αžŸαžΆαžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž αžΆαž‰αž±αŸ’αž™αžƒαžΎαž‰αž“αžΌαžœαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž€αŸ’αž“αž»αž„αž“αŸαž™αžŸαž˜αžšαž˜αŸ’αž™αž˜αž½αž™αŸ”

αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αž“αŸƒαž€αžΆαžšαž αŸ…αž‘αžΌαžšαžŸαž–αŸ’αž‘αžŠαŸ‚αž›αž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αž‡αžΆαž‚αŸ†αžšαžΌαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αžŸαŸ†αžŠαŸ…αž‘αŸ…αž›αžΎαž€αžΆαžšαž αŸ…αž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹αžŠαŸαžŸαžΆαž˜αž‰αŸ’αž‰αž”αŸ†αž•αž»αžαŸ” αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž˜αž½αž™αžŠαžΎαžšαžαž½αž‡αžΆαž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ αž αžΎαž™αž›αžΆαžαžαŸ’αžšαžŠαžΆαž„ API αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžαŸ’αžšαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž€αžΆαžšαŸ” αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž˜αž½αž™αž‘αŸ€αžαžŠαžΎαžšαžαž½αž‡αžΆαž—αžΆαž‚αžΈαž’αžαž·αžαž·αž‡αž“ αž αžΎαž™αž“αŸ…αž–αŸαž›αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž€αžΆαžšαž αŸ…αž‘αžΌαžšαžŸαž–αŸ’αž‘ αž αžΎαž™αžšαž„αŸ‹αž…αžΆαŸ†αž›αž‘αŸ’αž’αž•αž›αŸ” αž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž—αžΆαž‚αžΈαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž—αŸ’αž‰αŸ€αžœ αž“αž·αž„αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαž’αžΆαž…αž˜αžΆαž“αž‘αžΈαžαžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž“αž·αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαžΌαž…αž‚αŸ’αž“αžΆ αž¬αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαŸ” αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž‘αžΈ 2 αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž RPC αž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αž·αž„αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž€αžΆαžšαž…αžΆαžαŸ‹αžαŸ’αž“αžΆαž€αŸ‹αž“αŸƒαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž“αž·αž„αž›αž‘αŸ’αž’αž•αž›αž“αŸƒαž€αžΆαžšαž αŸ…αŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αž‚αŸ†αžšαžΌαž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž“αŸαŸ‡αž˜αžΆαž“αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αžŠαŸαž’αŸ†αž˜αž½αž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž—αžΆαž–αžŸαžΆαž˜αž‰αŸ’αž‰αžšαž”αžŸαŸ‹αžœαžΆαŸ” αž›αŸ’αž”αžΏαž“αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‘αžΆαž€αŸ‹αž‘αžΆαž‰ αž“αž·αž„αž”αž„αŸ’αžαŸ†αž’αŸ’αž“αž€αž±αŸ’αž™αž”αŸ’αžšαžΎαžœαžΆαž˜αŸ’αžαž„αž αžΎαž™αž˜αŸ’αžαž„αž‘αŸ€αžαž“αŸ…αž…αŸ†αž–αŸ„αŸ‡αž˜αž»αžαž–αŸαž›αžœαŸαž›αžΆαž€αŸ†αžŽαžαŸ‹ αžŠαŸ„αž™αž€αžαŸ‹αžαŸ’αžšαžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αžΆαž”αŸ†αžŽαž»αž›αž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸαŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž€αŸαž€αžΎαžαž‘αžΎαž„αž•αž„αžŠαŸ‚αžšαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžŠαŸ‚αž›αž‚αŸ’αž˜αžΆαž“αž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžœαžΆαžŠαŸ„αž™αž˜αž·αž“αžŠαžΉαž„αžαŸ’αž›αž½αž“ αžŠαŸ„αž™αž‚αŸ’αžšαžΆαž“αŸ‹αžαŸ‚αž˜αž·αž“αžŠαžΉαž„αž–αžΈαž•αž›αžœαž·αž”αžΆαž€αž’αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αŸ”

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž”αŸ†αž•αž»αžαž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„ αžœαžΆαž€αŸαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž˜αž·αž“αžŸαžΌαžœαž…αŸ’αž”αžΆαžŸαŸ‹αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš "αžšαžΈαž€αž›αžΌαžαž›αžΆαžŸαŸ‹" αž“αž·αž„ "αž–αž„αŸ’αžšαžΈαž€" αž•αž„αžŠαŸ‚αžšαŸ” αž‡αžΆαž€αžΆαžšαž–αž·αžαžŽαžΆαžŸαŸ‹ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž’αŸ’αžœαžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž˜αž½αž™αž…αŸ†αž“αž½αž“ αž“αŸ„αŸ‡αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž˜αž·αž“αž’αžΆαž…αž‡αŸ€αžŸαžœαžΆαž„αž”αžΆαž“αž‘αŸ αž αžΎαž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αžšαžΆαžšαžΆαŸ†αž„αž’αž“αž’αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αžšαž„αž•αž›αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αžŠαŸ„αž™αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡αŸ” αž“αŸ„αŸ‡αž‚αžΊαžšαž αžΌαžαžŠαž›αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž˜αž½αž™αžšαž„αŸ‹αž…αžΆαŸ†αž€αžΆαžšαž†αŸ’αž›αžΎαž™αžαž”αž–αžΈαž˜αž½αž™αž‘αŸ€αž αžœαžΆαž“αžΉαž„αž˜αž·αž“αž’αžΆαž…αž”αž‰αŸ’αž…αž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž“αž·αž„αžŠαž€αžŸαŸ„αž…αŸαž‰αž”αžΆαž“αž‘αŸαŸ” αž“αŸαŸ‡αž”αž„αŸ’αž€αžΎαž“αž αžΆαž“αž·αž—αŸαž™αž“αŸƒαž•αž›αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αž‡αžΆαž…αŸ’αžšαžΎαž“αŸ–

  • αž€αžΆαžšαž†αŸ’αž›αžΎαž™αžαž”αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αžΆαžαŸ‹αž”αž„αŸ‹ αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžšαž„αŸ‹αž…αžΆαŸ†αžšαž™αŸˆαž–αŸαž›αž™αžΌαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž…αž˜αŸ’αž›αžΎαž™αž…αŸ†αž–αŸ„αŸ‡αžŸαŸ†αžŽαž½αžšαŸ”
  • αž‡αžΆαž‘αžΌαž‘αŸ…αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαžˆαž”αŸ‹αž†αŸ’αž›αžΎαž™αžαž”αž“αžΉαž„αžŸαŸ†αžŽαžΎαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αž”αžŽαŸ’αžαž»αŸ†αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αžŠαŸ‚αž›αž…αž„αŸ’αž’αŸ€αžαŸ– αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž›αžΆαž™αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž€αŸ‹αžŸαŸ„αž›αžΎαž’αž“αž’αžΆαž“αžŠαŸ‚αž›αž€αžΆαž“αŸ‹αž€αžΆαž”αŸ‹αžŠαŸ„αž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ”
  • Deadlocks αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž›αŸαž…αž‘αžΎαž„: αž›αž‘αŸ’αž’αž—αžΆαž–αž“αŸƒαž€αžΆαžšαž€αžΎαžαž‘αžΎαž„αžšαž”αžŸαŸ‹αžœαžΆαž’αžΆαžŸαŸ’αžšαŸαž™αž™αŸ‰αžΆαž„αžαŸ’αž›αžΆαŸ†αž„αž‘αŸ…αž›αžΎαžšαž™αŸˆαž–αŸαž›αž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αž…αŸ†αž“αž½αž“αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž“αž·αž„αž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„αžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αžΉαž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ”
  • αž€αŸ†αž αž»αžŸαž’αžŸαŸ‹αž–αŸαž›αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž›αŸαž…αž‘αžΎαž„;
  • αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ "αž”αžšαžΆαž‡αŸαž™" αž‡αžΆαž˜αž½αž™ OutOfMemory αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αž·αž…αŸ’αž…αž€αžΆαžšαžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž“αž·αž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αŸ† αž αžΎαž™αžœαžαŸ’αžαž˜αžΆαž“αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αž’αŸ’αžœαžΎαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž›αŸ†αž”αžΆαž€αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ‚αž„αž…αŸ‚αž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸ…αž‡αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš "αžŸαŸ’αžšαžΆαž›αž‡αžΆαž„αž˜αž»αž“" αŸ”

αžαžΆαž˜αž‘αžŸαŸ’αžŸαž“αŸˆαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžšαžΆαžšαžΆαŸ†αž„αž€αžΆαžšαž αŸ…αž‘αžΌαžšαžŸαž–αŸ’αž‘αž’αŸ†αž‘αž»αž„αž–αŸαž›αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž“αžΆαŸ†αž±αŸ’αž™αž”αžΆαžαŸ‹αž”αž„αŸ‹αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž›αžΎαž‚αž»αžŽαž—αžΆαž–αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž“αžΈαž˜αž½αž™αŸ—αŸ– αžœαžΆαž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αžΆαž“αžΆαž”αžΆαž“αž“αžΌαžœαžŸαžΌαž…αž“αžΆαž€αžšαž‚αž»αžŽαž—αžΆαž–αž‚αŸ„αž›αžŠαŸ…αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž˜αž½αž™αž€αŸ’αž“αž»αž„αž—αžΆαž–αž―αž€αŸ„αž–αžΈαžŸαžΌαž…αž“αžΆαž€αžšαž‚αž»αžŽαž—αžΆαž–αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αž˜αž½αž™αž‘αŸ€αžαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„αžŠαŸ„αž™αž€αŸ’αžšαž»αž˜αž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž”αž‰αŸ’αž αžΆαž’αŸ†αŸ”

αž’αŸ’αžœαžΈαŸ—αž€αžΆαž“αŸ‹αžαŸ‚αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αž”αž‰αŸ’αž…αžΌαž›αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž•αŸ’αžŸαŸαž„αŸ—αž‚αŸ’αž“αžΆ αž αžΎαž™αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αž‘αžΆαŸ†αž„αžŸαž„αžαžΆαž„αŸ” αžαžΎαž’αŸ’αžœαžΎαžŠαžΌαž…αž˜αŸ’αžαŸαž…αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαž”αžΆαž“αž“αžΌαžœαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αžΆαŸ†αž„αž“αŸαŸ‡?

αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€ αž“αŸ„αŸ‡αž’αŸ’αž“αž€αž“αžΉαž„αžαŸ’αžšαžΌαžœαž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž€αžΆαžšαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžšαžŽαžΈαž›αžΎαž€αž›αŸ‚αž„ αž“αž·αž„αžŸαŸ†αžŽαž„αžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“ αž αžΎαž™αž“αŸαŸ‡αž›αž»αž”αž”αŸ†αž”αžΆαžαŸ‹αž‘αžΆαŸ†αž„αžŸαŸ’αžšαž»αž„αž“αžΌαžœαž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž…αž˜αŸ’αž”αž„αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜ - αž—αžΆαž–αžŸαžΆαž˜αž‰αŸ’αž‰αŸ”

αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™αž€αŸαž…αžΌαž›αž˜αž€αž€αŸ’αž“αž»αž„αž…αž·αžαŸ’αžαžŠαŸ‚αžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž™αžΎαž„αž˜αž·αž“αž”αŸ’αžšαžΎαžœαžΆαž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžšαž”αžŸαŸ‹αž™αžΎαž„αž‘αŸαŸ– αžœαžΆαž–αž·αž”αžΆαž€αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αžΆαž“αžΆαž“αžΌαžœαž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹αŸ”

"Saga" αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž…αŸ†αž–αŸ„αŸ‡αž”αž‰αŸ’αž αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš

αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž“αžΌαžœαž”αŸ’αžšαž‡αžΆαž”αŸ’αžšαž·αž™αž—αžΆαž–αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌ αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹ αž›αŸ†αž“αžΆαŸ†αžŸαžΆαž αŸ’αž€αžΆ.

αž‚αŸ†αžšαžΌαž“αŸαŸ‡αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž™αŸ‰αžΆαž„αž›αŸ’αž’αž₯αžαžαŸ’αž…αŸ„αŸ‡αž“αžΌαžœαž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αžαžΆαž„αž›αžΎαž“αŸƒαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž™αŸˆαž–αŸαž›αžœαŸ‚αž„ αž αžΎαž™αž€αŸαž–αž„αŸ’αžšαžΈαž€αžŸαž˜αžαŸ’αžαž—αžΆαž–αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž–αžΈαž•αŸ’αž“αŸ‚αž€αžαžΆαž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αž„αžŠαŸ‚αžšαŸ– αžŸαŸ†αžŽαž„αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αž’αžΆαž…αž“αžΉαž„αž˜αž·αž“αž’αŸ’αžœαžΎαž±αŸ’αž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž‘αž”αŸ‹αž‘αŸ…αžŸαž—αžΆαž–αžŠαžΎαž˜αžœαž·αž‰αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž•αŸ’αžαž›αŸ‹ αž•αŸ’αž›αžΌαžœαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αŸ†αž“αž½αžŸαŸ” αž“αŸαŸ‡αž€αŸαž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž’αŸ’αž“αž€αž‡αŸ€αžŸαžœαžΆαž„αž€αžΆαžšαž’αŸ’αžœαžΎαž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαž‡αŸ†αž αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αžŠαŸ„αž™αž‡αŸ„αž‚αž‡αŸαž™ αž“αŸ…αž–αŸαž›αž–αŸ’αž™αžΆαž™αžΆαž˜αž“αžΆαŸ†αž™αž€αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸ…αž€αžΆαž“αŸ‹αž€αžΆαžšαž”αž‰αŸ’αž…αž”αŸ‹ "αž›αŸ’αž’" αŸ”

αž‚αž½αžšαž±αŸ’αž™αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž“αŸ…αž€αŸ’αž“αž»αž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ monolithic αž‚αŸ†αžšαžΌαž“αŸαŸ‡αž€αŸαž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž•αž„αžŠαŸ‚αžšαž“αŸ…αž–αŸαž›αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžšαž„αžŠαŸ‚αž›αž‡αžΆαž”αŸ‹αž‚αŸ’αž“αžΆαžšαž›αž»αž„ αž“αž·αž„αž•αž›αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αž’αžœαž·αž‡αŸ’αž‡αž˜αžΆαž“αžŠαŸ‚αž›αž”αžŽαŸ’αžαžΆαž›αž˜αž€αž–αžΈαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž™αŸˆαž–αŸαž›αž™αžΌαžš αž“αž·αž„αž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„αž’αž“αž’αžΆαž“αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž„αŸ’αž€αŸαžαŸ”

αž‘αžΆαž€αŸ‹αž‘αž„αž‘αŸ…αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αž™αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM αžœαžΆαž”αŸ’αžšαŸ‚αž‘αŸ…αž‡αžΆαž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŽαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž "Sagas": αž‡αŸ†αž αžΆαž“αž”αž»αž‚αŸ’αž‚αž›αž“αŸƒ "Saga" αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž‡αžΆαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž“αž·αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αž„αžŠαŸ‚αžšαŸ” αž€αŸ†αžŽαžαŸ‹αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž•αŸ’αž‘αŸƒαž€αŸ’αž“αž»αž„αž“αŸƒ "αžŸαžΆαž αŸ’αž€αžΆ" αŸ” αž“αŸ„αŸ‡αž‚αžΊαž™αžΎαž„αž˜αž·αž“αž‘αžΆαž˜αž‘αžΆαžšαž™αž“αŸ’αžαž€αžΆαžšαžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸαŸ” αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž‚αžΊαžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžŸαžΆαžšαžŠαŸ‚αž›αž‚αžΆαŸ†αž‘αŸ’αžšαž€αžΆαžšαž’αžΆαž“αžΆ "αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž˜αŸ’αžαž„" αž‡αžΆαž€αžΆαžšαžŠαžΉαž€αž‡αž‰αŸ’αž‡αžΌαž“αŸ”

αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸαŸ‡αž€αŸαž˜αžΆαž“ "αžαž˜αŸ’αž›αŸƒ" αžšαž”αžŸαŸ‹αžœαžΆαž•αž„αžŠαŸ‚αžšαŸ–

  • αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž€αžΆαž“αŸ‹αžαŸ‚αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αŸ– αžŸαŸ†αžŽαž„αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αŸ”
  • αžœαžΆαž“αžΉαž„αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ„αŸ‡αž”αž„αŸ‹αž…αŸ„αž›αž“αžΌαžœαž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαž–αŸαž‰αž›αŸαž‰ αžŠαŸ‚αž›αž’αžΆαž…αž˜αžΆαž“αž—αžΆαž–αžšαžŸαžΎαž”αž‡αžΆαž–αž·αžŸαŸαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ monolithic αŸ”
  • αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž€αžΆαž“αŸ‹αžαŸ‚αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž”αž“αŸ’αžαž·αž… αž αžΎαž™αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžŸαžΆαžšαž›αŸαž…αž‘αžΎαž„αŸ”
  • αž§αž”αž€αžšαžŽαŸαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™ αž“αž·αž„αžšαžŠαŸ’αž‹αž”αžΆαž›αž”αž“αŸ’αžαŸ‚αž˜αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžš (αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž‡αžΆαž‘αžΌαž‘αŸ…αžœαžΆαž›αŸ’αž’αž€αŸαžŠαŸ„αž™αŸ– αž‚αž»αžŽαž—αžΆαž–αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž“αžΉαž„αž€αžΎαž“αž‘αžΎαž„)αŸ”

αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαž–αŸαž“αŸ’αž’ monolithic αž™αž»αžαŸ’αžαž·αž€αž˜αŸ’αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ "Sag" αž‚αžΊαž˜αž·αž“αžŸαžΌαžœαž…αŸ’αž”αžΆαžŸαŸ‹αž‘αŸαŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸαžœαžΆαž˜αžΈαž€αŸ’αžšαžΌ αž“αž·αž„ SOA αž•αŸ’αžŸαŸαž„αž‘αŸ€αž αžŠαŸ‚αž›αž—αžΆαž‚αž…αŸ’αžšαžΎαž“αž‘αŸ†αž“αž„αž‡αžΆαž˜αžΆαž“αžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžšαž½αž…αž αžΎαž™ αž“αž·αž„αž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαž–αŸαž‰αž›αŸαž‰αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αŸ‡αž”αž„αŸ‹αž“αŸ…αž–αŸαž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž‚αž˜αŸ’αžšαŸ„αž„ αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž“αŸƒαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‚αŸ†αžšαžΌαž“αŸαŸ‡αž’αžΆαž…αž›αžΎαžŸαž–αžΈαž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž· αž‡αžΆαž–αž·αžŸαŸαžŸαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“ API αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž“αŸ…αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ” αž€αž˜αŸ’αžšαž·αžαŸ”

αž€αžΆαžšαž”αž‰αŸ’αž…αžΌαž›αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌ

αž“αŸ…αž–αŸαž›αž™αžΎαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž–αž·αžŸαŸ„αž’αž“αŸαž‡αžΆαž˜αž½αž™αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌ αžŸαŸ†αžŽαž½αžšαžŸαž˜αž αŸαžαž»αž•αž›αž˜αž½αž™αž”αžΆαž“αž€αžΎαžαž‘αžΎαž„αŸ– αž€αž“αŸ’αž›αŸ‚αž„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαžŠαžΆαž€αŸ‹αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αžŠαŸ‚αž“αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžŠαŸ‚αž›αž’αžΆαž“αžΆαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž“?

αž“αŸ…αž–αŸαž›αž€αŸ’αžšαž‘αŸαž€αž˜αžΎαž›αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž“αŸƒ BPMSs αž•αŸ’αžŸαŸαž„αŸ— αžœαžΆαž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαžŸαž˜αž αŸαžαž»αž•αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ†αž”αŸ‚αž€αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž–αžΈαž€αžΆαžšαž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αŸ– αž”αž„αŸ’αž€αžΎαžαžŸαŸ’αžšαž‘αžΆαž”αŸ‹αž“αŸƒαžœαŸαž‘αž·αž€αžΆ αž“αž·αž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌαžŠαŸ‚αž›αž―αž€αžšαžΆαž‡αŸ’αž™αžŠαŸ„αž™αžŠαŸ‚αž“αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαžαž”αžšαž·αž™αžΆαž€αžΆαžŸ αž“αž·αž„αž€αž»αž„αžαžΊαž“αŸαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž“ αž“αž·αž„αžšαž…αž“αžΆαž€αžΆαžšαž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž“αž‡αžΆ αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αž“αŸƒαžŸαŸαžœαžΆαž˜αžΈαž€αŸ’αžšαžΌαžŠαŸαžŸαžΆαž˜αž‰αŸ’αž‰ αž“αž·αž„αžŸαŸ’αžšαžΆαž›αŸ” αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαž“αŸαŸ‡αž’αž“αž»αžœαžαŸ’αžαž€αžΆαžšαžšαŸ€αž”αž…αŸ†αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž“αŸƒαžŸαŸ’αžšαž‘αžΆαž”αŸ‹αžαžŸαŸŠαžΌαŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡αž˜αžΆαž“αž’αžαŸ’αžαž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž’αŸ†αžŽαžΆαžŸαŸ‹αŸ– αž’αŸ’αž“αž€αž’αžΆαž…αž”αž„αŸ’αž€αžΎαž“αž˜αž»αžαž„αžΆαžšαžšαž”αžŸαŸ‹αžœαŸαž‘αž·αž€αžΆαž”αžΆαž“αž…αŸ’αžšαžΎαž“αžαžΆαž˜αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αž αž αžΎαž™αž˜αžΆαž“αžαŸ‚αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌαžœαŸαž‘αž·αž€αžΆαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αž“αžΉαž„αž€αŸ’αž›αžΆαž™αž‘αŸ…αž‡αžΆ "αžαŸ’αž›αžΆαž‰αŸ‹" αž–αžΈαž“αŸαŸ‡αŸ” αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž–αžΈαžŠαŸ‚αž“αžŽαžΆαž˜αž½αž™αž’αžΆαž…αž”αŸ’αžšαžΎαž˜αž»αžαž„αžΆαžšαžαŸ’αž˜αžΈαžšαž”αžŸαŸ‹αžœαŸαž‘αž·αž€αžΆαž—αŸ’αž›αžΆαž˜αŸ—αž“αŸ…αž–αŸαž›αžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αŸ”

αž€αžΆαžšαžŸαž·αž€αŸ’αžŸαžΆαž›αž˜αŸ’αž’αž·αžαž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαž”αž„αŸ’αž αžΆαž‰αž–αžΈαž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž“αŸƒαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡αŸ–

  • αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžœαŸαž‘αž·αž€αžΆαžŠαŸ‚αž›αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸƒαžŠαŸ‚αž“αž‡αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™αž“αžΆαŸ†αž˜αž€αž“αžΌαžœαž αžΆαž“αž·αž—αŸαž™αžŠαŸαž’αžŸαŸ’αž…αžΆαžšαŸ’αž™αžŠαŸ‚αž›αž‡αžΆαž…αŸ†αžŽαž»αž…αžαŸ‚αž˜αž½αž™αž“αŸƒαž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αŸ” αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž…αŸ†αž–αŸ„αŸ‡αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž”αž„αŸ’αž€αžΎαž“αž αžΆαž“αž·αž—αŸαž™αž“αŸƒαž€αŸ†αž αž»αžŸαžŠαŸ‚αž›αž“αžΆαŸ†αž‘αŸ…αžŠαž›αŸ‹αž€αžΆαžšαž”αžšαžΆαž‡αŸαž™αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αž‘αžΆαŸ†αž„αž˜αžΌαž›αŸ”
  • αž”αž‰αŸ’αž αžΆαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαŸ– αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž‘αž·αž“αŸ’αž“αž“αŸαž™αžšαž”αžŸαŸ‹αžœαžΆαžαžΆαž˜αžšαž™αŸˆαž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αžαžΌαž…αž…αž„αŸ’αž’αŸ€αž αž“αž·αž„αž™αžΊαžαŸ–
    • αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“ marshalled αž˜αŸ’αžαž„αž‘αŸ€αž αž“αž·αž„αž”αžΌαž˜αžαžΆαž˜αžšαž™αŸˆαž”αžŽαŸ’αžαžΆαž‰αž‡αž„αŸ‹αŸ”
    • αžŸαŸαžœαžΆαžŠαŸ‚αž“αž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž“αžΉαž„αž•αŸ’αžαž›αŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αž…αŸ’αžšαžΎαž“αž‡αžΆαž„αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αžŠαŸ„αž™αžŸαžΆαžšαžαŸ‚αžŸαž˜αžαŸ’αžαž—αžΆαž–αž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαž“αŸ…αž€αž˜αŸ’αžšαž·αžαž“αŸƒ API αžαžΆαž„αž€αŸ’αžšαŸ…αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αŸ”
    • αž”αŸ†αžŽαŸ‚αž€αž―αž€αžšαžΆαž‡αŸ’αž™αž‡αžΆαž…αŸ’αžšαžΎαž“αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž’αžΆαž…αžŸαŸ’αž“αžΎαžŸαž»αŸ†αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαžΌαž…αž‚αŸ’αž“αžΆαž˜αŸ’αžαž„αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš (αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αžŠαŸ„αž™αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αžŸαž˜αžΆαžŸαž’αžΆαžαž»αžŸαž˜αŸαž™αžŠαŸ‚αž›αž•αŸ’αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αžŠαž›αŸ‹αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ αž“αž·αž„αž”αž„αŸ’αž€αžΎαžαž”αž‰αŸ’αž αžΆαž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž±αŸ’αž™αžƒαŸ’αž›αžΆαŸ†αž„αžŸαž˜αŸ’αž„αžΆαžαŸ‹αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœ);
  • αž”αž‰αŸ’αž αžΆαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ–
    • αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžŠαŸ„αž™αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžœαŸαž‘αž·αž€αžΆ αž‚αžΊαž˜αž·αž“αžŸαŸŠαžΈαž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž“ αž αžΎαž™αž˜αž·αž“αž˜αžΆαž“αžœαž·αž’αžΈαž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡αž‘αŸαŸ”
    • αž€αžΆαžšαžŠαžΆαž€αŸ‹αž€αžΆαžšαž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž“αž“αŸ…αžαžΆαž„αž€αŸ’αžšαŸ…αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ– αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αž—αžΆαž–αžαŸ’αžšαžΉαž˜αžαŸ’αžšαžΌαžœαž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αžŠαŸ†αž”αžΌαž„ αž“αŸ„αŸ‡αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαžŠαž€αž…αŸαž‰αž“αžΌαžœαž›αž‘αŸ’αž’αž—αžΆαž–αž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αŸ’αžšαž€αž½αžαž”αŸ’αžšαž‡αŸ‚αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž”αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ” αž€αžΆαžšαž‘αž”αŸ‹αžŸαŸ’αž€αžΆαžαŸ‹αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαžΆαž„αž€αŸ’αžšαŸ…αž’αžΆαž…αž‡αž½αž™αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ‚αž”αž“αŸαŸ‡αž˜αžΆαž“αž αžΆαž“αž·αž—αŸαž™αž”αž“αŸ’αžαŸ‚αž˜ αž“αž·αž„αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹αž‘αžΆαŸ†αž„αž˜αžΌαž›αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ”
  • αž€αžΆαžšαž›αŸ†αž”αžΆαž€αž”αž“αŸ’αžαŸ‚αž˜αž“αŸ…αž–αŸαž›αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αŸ– αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαžαŸ’αž›αŸ‡ αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹ αž“αž·αž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆ αž¬αžαžΆαž˜αž›αŸ†αžŠαžΆαž”αŸ‹αž›αŸ†αžŠαŸ„αž™αŸ”

αž‘αžΈαž”αŸ†αž•αž»αž αž™αžΎαž„αžαŸ’αžšαžΌαžœαžαŸ’αžšαž›αž”αŸ‹αž‘αŸ…αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžœαž·αž‰αŸ– αž”αž‰αŸ’αž…αžΌαž›αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž“ αž“αž·αž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž“αž‘αŸ…αž€αŸ’αž“αž»αž„αžŸαŸαžœαžΆαž˜αžΈαž€αŸ’αžšαžΌαž˜αž½αž™αŸ” αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž“αŸαŸ‡αž‡αž½αž™αžŸαž˜αŸ’αžšαž½αž›αžŠαž›αŸ‹αž€αžΆαžšαž™αž›αŸ‹αžƒαžΎαž‰αž“αŸƒαžŸαŸαžœαžΆαž˜αžΈαž€αŸ’αžšαžΌαž‡αžΆαž’αžΆαžαž»αž•αŸ’αžŸαŸ†αžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαž”αŸ’αžšαž–αŸαž“αŸ’αž’ αž αžΎαž™αž˜αž·αž“αž”αž„αŸ’αž€αž±αŸ’αž™αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαžαžΆαž„αž›αžΎαž‘αžΎαž™αŸ” αž“αŸαŸ‡αž€αŸαž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αžŠαŸ„αž™αž₯αžαž‚αž·αžαžαŸ’αž›αŸƒαž•αž„αžŠαŸ‚αžš:

  • αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžš API αž‚αžΊαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ (αž‡αžΆαž–αž·αžŸαŸαžŸ αžŠαžΎαž˜αŸ’αž”αžΈαž•αŸ’αžαž›αŸ‹αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜) αž“αž·αž„αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžœαŸαž‘αž·αž€αžΆ API αŸ” αž‘αžΆαž˜αž‘αžΆαžšαž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαž…αŸ†αž–αŸ„αŸ‡αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžš API αž—αžΆαž–αž†αž”αž‚αŸ’αž“αžΆαž†αŸ’αž–αŸ„αŸ‡αž‘αŸ…αž˜αž»αž αž“αž·αž„αžαž™αž€αŸ’αžšαŸ„αž™αŸ”
  • αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž–αŸαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜ αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαž”αžΆαž“αž“αžΌαžœαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‡αžΆαž•αŸ’αž“αŸ‚αž€αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌαž“αžΈαž˜αž½αž™αŸ— αž αžΎαž™αž“αŸαŸ‡αž•αŸ’αžαž›αŸ‹αž“αžΌαžœαž€αžΆαžšαž€αžΎαž“αž‘αžΎαž„αž“αžΌαžœαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžαŸ’αž˜αžΈαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αž”αŸ‚αž”αž“αŸαŸ‡αŸ– αž–αž“αŸ’αž›αžΊ αž“αž·αž„αž’αž”αŸ’αž”αžšαž˜αžΆαž“αŸƒαž—αžΆαž–αž’αžΆαžŸαŸ’αžšαŸαž™αž†αŸ’αž›αž„αž€αžΆαžαŸ‹αŸ”
  • αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž€αŸ†αžŽαŸ‚αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αŸ– αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž˜αžΈαž€αŸ’αžšαžΌαž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αž‡αžΆαž™αžΌαžšαž˜αž€αž αžΎαž™αž“αŸ„αŸ‡ αžœαžΆαž‘αŸ†αž“αž„αž‡αžΆαž˜αžΆαž“αž€αŸ†αžŽαŸ‚αž αž½αžŸαžŸαž˜αŸαž™αžšαž”αžŸαŸ‹αž”αžŽαŸ’αžŽαžΆαž›αŸαž™αŸ” αž“αŸαŸ‡αž’αžΆαž…αž‡αžΆαž§αž”αžŸαž‚αŸ’αž‚αžŠαŸ‚αž›αž˜αž·αž“αž“αžΉαž€αžŸαŸ’αž˜αžΆαž“αžŠαž›αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž˜αž»αžαž„αžΆαžšαžαŸ’αž˜αžΈ αž αžΎαž™αž’αžΆαž…αž‘αžΆαž˜αž‘αžΆαžšαž€αžΆαžšαž•αŸ’αž‘αŸαžšαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž…αžΆαžŸαŸ‹αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž”αŸ‚αž”αž“αŸαŸ‡αž‘αŸ…αž€αžΆαž“αŸ‹αž€αŸ†αžŽαŸ‚αžαŸ’αž˜αžΈαž“αŸƒαž”αžŽαŸ’αžŽαžΆαž›αŸαž™ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž˜αž·αž“αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαžšαžœαžΆαž„αž€αŸ†αžŽαŸ‚αŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžœαŸαž‘αž·αž€αžΆαž€αŸαž˜αžΆαž“αžœαžαŸ’αžαž˜αžΆαž“αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž”αŸ‚αž”αž“αŸαŸ‡αžŠαŸ‚αžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αž“αŸαŸ‡αž›αŸ‚αž„αž”αž„αŸ’αž€αžΎαžαž‡αžΆαž€αž»αž„αžαžΊαž“αŸαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž“αž‘αŸ€αžαž αžΎαž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αžαŸ‚αž”αžšαž·αž™αžΆαž€αžΆαžŸαžšαž”αžŸαŸ‹αžœαžΆαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αž•αŸ’αžαž›αŸ‹αž˜αž»αžαž„αžΆαžš "αžœαŸαž‘αž·αž€αžΆ" αž‡αŸ†αž“αž½αž™αŸ” αžŸαŸ’αžšαž‘αžΆαž”αŸ‹αž”αŸ‚αž”αž“αŸαŸ‡αž‚αžΊαžαŸ’αžšαžΌαžœαž€αžΆαžšαž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αžŠαžΎαž˜αŸ’αž”αžΈαžšαž€αŸ’αžŸαžΆαž›αž€αŸ’αžαžŽαŸˆαžŸαŸ’αžšαžΆαž›αž“αŸƒαžŸαŸαžœαžΆαž˜αžΈαž€αŸ’αžšαžΌαžŠαŸ‚αž“αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸαž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ‚αž˜αž‘αžΆαŸ†αž„αž’αŸ’αžœαžΎαž±αŸ’αž™αž€αžΆαžšαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž€αžŽαŸ’αžαžΆαž›αž•αž„αžŠαŸ‚αžšαŸ”

αž§αž‘αžΆαž αžšαžŽαŸ αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž”αž„αŸ’αž€αžΎαžαž—αžΆαžšαž€αž·αž…αŸ’αž…αŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž“αŸ…αž–αŸαž›αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž—αžΆαžšαž€αž·αž…αŸ’αž… αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΎαž›αžƒαžΎαž‰αž—αžΆαžšαž€αž·αž…αŸ’αž…αž–αžΈαžŠαŸ‚αž“αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž”αž‰αŸ’αž‡αžΈαž‘αžΌαž‘αŸ… αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸαž™αžαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αžŸαŸαžœαžΆαž…αž»αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αž—αžΆαžšαž€αž·αž…αŸ’αž…αž›αžΎαžœαŸαž‘αž·αž€αžΆαžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆ αž‡αž˜αŸ’αžšαŸ‡αž–αžΈαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž“αŸ” αž€αžΆαžšαžšαž€αŸ’αžŸαžΆαž€αžΆαžšαž”αž·αž‘αž”αžΆαŸ†αž„αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘αž”αŸ‚αž”αž“αŸαŸ‡αž–αž·αžαž‡αžΆαž˜αžΆαž“αž”αž‰αŸ’αž αžΆ αž αžΎαž™αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αŸƒαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž“αŸαŸ‡αŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαžΆαž˜αžšαž™αŸˆαž—αŸ’αž“αŸ‚αž€αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ

αžŠαžΌαž…αžŠαŸ‚αž›αž”αžΆαž“αžšαŸ€αž”αžšαžΆαž”αŸ‹αžαžΆαž„αž›αžΎ αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαž€αž…αŸαž‰αž–αžΈαž›αž€αŸ’αžαžŽαŸˆαž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸ αž“αž·αž„αžœαž·αžŸαŸ’αžœαž€αž˜αŸ’αž˜αž“αŸƒαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž‚αŸαž’αžΆαž…αž–αžΉαž„αž•αŸ’αž’αŸ‚αž€αž›αžΎαž•αž›αž·αžαž—αžΆαž–αž“αŸƒαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž›αŸ’αž’αŸ”

αž…αžΌαžšαž™αžΎαž„αž–αŸ’αž™αžΆαž™αžΆαž˜αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αžŠαŸαž›αŸ†αž”αžΆαž€αž˜αž½αž™ αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαžαž‡αžΆαž–αž·αžŸαŸαžŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αžαŸ’αžαž”αž‘αŸ” αž“αŸαŸ‡αž“αžΉαž„αž€αŸ’αž›αžΆαž™αž‡αžΆαž€αž·αž…αŸ’αž…αž€αžΆαžš "αž αŸ’αž‚αŸαž˜" αžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αžΉαž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž…αŸ†αž“αž½αž“αž”αžΈ αžŠαŸ‚αž›αž–αž½αž€αžœαžΆαž“αžΈαž˜αž½αž™αŸ—αž€αŸ†αžŽαžαŸ‹αžˆαŸ’αž˜αŸ„αŸ‡αžŠαŸ‚αž“αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™αŸ– "app1", "app2", "app3" αŸ”

αž“αŸ…αžαžΆαž„αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΈαž˜αž½αž™αŸ— αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ‚αž›αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ "αž›αŸαž„αž”αžΆαž›αŸ‹" αžαžΆαž˜αžšαž™αŸˆαž‘αžΆαž“αž€αŸ’αžšαž»αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαŸ” αžŸαžΆαžšαžŠαŸ‚αž›αž˜αžΆαž“αžˆαŸ’αž˜αŸ„αŸ‡ "αž”αžΆαž›αŸ‹" αž“αžΉαž„αžŠαžΎαžšαžαž½αž‡αžΆαž”αžΆαž›αŸ‹αŸ”

αž…αŸ’αž”αžΆαž”αŸ‹αž“αŸƒαž›αŸ’αž”αŸ‚αž„:

  • αž’αŸ’αž“αž€αž›αŸαž„αž‘αžΈαž˜αž½αž™αž‚αžΊαž‡αžΆαž’αŸ’αž“αž€αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αŸ” αž‚αžΆαžαŸ‹αž’αž‰αŸ’αž‡αžΎαž‰αž’αŸ’αž“αž€αž›αŸαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž±αŸ’αž™αž…αžΌαž›αžšαž½αž˜αž€αŸ’αž“αž»αž„αž αŸ’αž‚αŸαž˜ αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž αŸ’αž‚αŸαž˜ αž“αž·αž„αž’αžΆαž…αž”αž‰αŸ’αž…αž”αŸ‹αžœαžΆαž”αžΆαž“αž‚αŸ’αžšαž”αŸ‹αž–αŸαž›αŸ”
  • αž’αŸ’αž“αž€αž›αŸαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž”αŸ’αžšαž€αžΆαžŸαž–αžΈαž€αžΆαžšαž…αžΌαž›αžšαž½αž˜αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž“αŸ…αž€αŸ’αž“αž»αž„αž αŸ’αž‚αŸαž˜ "αžŸαŸ’αž‚αžΆαž›αŸ‹" αž‚αŸ’αž“αžΆαž‘αŸ…αžœαž·αž‰αž‘αŸ…αž˜αž€ αž“αž·αž„αž’αŸ’αž“αž€αž›αŸαž„αžŠαŸ†αž”αžΌαž„αŸ”
  • αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž‘αž‘αž½αž›αž”αžΆαž“αž”αžΆαž›αŸ‹ αž’αŸ’αž“αž€αž›αŸαž„αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αž“αž€αž›αŸαž„αžŠαŸ‚αž›αž…αžΌαž›αžšαž½αž˜αž•αŸ’αžŸαŸαž„αž‘αŸ€αž αž αžΎαž™αž”αž‰αŸ’αž‡αžΌαž“αž”αžΆαž›αŸ‹αž‘αŸ…αž‚αžΆαžαŸ‹αŸ” αž…αŸ†αž“αž½αž“αžŸαžšαž»αž”αž“αŸƒαž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαžΆαž”αŸ‹;
  • αž’αŸ’αž“αž€αž›αŸαž„αž˜αŸ’αž“αžΆαž€αŸ‹αŸ—αž˜αžΆαž“ "αžαžΆαž˜αž–αž›" αžŠαŸ‚αž›αžαž™αž…αž»αŸ‡αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αž”αžΆαž›αŸ‹αž“αžΈαž˜αž½αž™αŸ—αžŠαŸ„αž™αž’αŸ’αž“αž€αž›αŸαž„αž“αŸ„αŸ‡αŸ” αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžαžΆαž˜αž–αž›αž’αžŸαŸ‹ αž’αŸ’αž“αž€αž›αŸαž„αž…αžΆαž€αž…αŸαž‰αž–αžΈαž αŸ’αž‚αŸαž˜αžŠαŸ„αž™αž”αŸ’αžšαž€αžΆαžŸαž›αžΆαž›αŸ‚αž„αž–αžΈαžαŸ†αžŽαŸ‚αž„αŸ”
  • αž”αŸ’αžšαžŸαž·αž“β€‹αž”αžΎβ€‹αž€αžΈαž‘αžΆαž€αžšβ€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž‚αŸβ€‹αž‘αž»αž€β€‹αž±αŸ’αž™β€‹αž“αŸ…β€‹αž˜αŸ’αž“αžΆαž€αŸ‹β€‹αž―αž„ αž‚αžΆαžαŸ‹β€‹αž”αžΆαž“β€‹αž”αŸ’αžšαž€αžΆαžŸβ€‹αž—αŸ’αž›αžΆαž˜β€‹αž€αžΆαžšβ€‹αž…αžΆαž€αž…αŸαž‰β€‹αžšαž”αžŸαŸ‹β€‹αž‚αžΆαžαŸ‹;
  • αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž’αŸ’αž“αž€αž›αŸαž„αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αž»αž”αž…αŸ„αž› αž’αŸ’αž“αž€αž›αŸαž„αžŠαŸ†αž”αžΌαž„αž“αžΉαž„αž”αŸ’αžšαž€αžΆαžŸαžαžΆαž αŸ’αž‚αŸαž˜αž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž‚αžΆαžαŸ‹αž…αžΆαž€αž…αŸαž‰αž–αžΈαž αŸ’αž‚αŸαž˜αž‘αžΆαž“αŸ‹αž–αŸαž› αž‚αžΆαžαŸ‹αž“αŸ…αžαŸ‚αž’αŸ’αžœαžΎαžαžΆαž˜αž αŸ’αž‚αŸαž˜αžŠαžΎαž˜αŸ’αž”αžΈαž”αž‰αŸ’αž…αž”αŸ‹αžœαžΆαŸ”

αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡ αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž”αŸ’αžšαžΎ DSL αžšαž”αžŸαŸ‹αž™αžΎαž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αž–αž·αž–αžŽαŸŒαž“αžΆαž’αŸ†αž–αžΈαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž“αŸ…αž€αŸ’αž“αž»αž„ Kotlin αžŠαŸ„αž™αž”αž„αŸ’αžšαž½αž˜αž’αž”αŸ’αž”αž”αžšαž˜αžΆαž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αž“αŸ’αž‘αŸ‡ boilerplate αž’αž”αŸ’αž”αž”αžšαž˜αžΆαŸ”

αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž›αŸαž„αžŠαŸ†αž”αžΌαž„ (αž αŸ…αž€αžΆαžαŸ‹αžαžΆαž‡αžΆαž’αŸ’αž“αž€αž•αŸ’αžŠαžΎαž˜αž αŸ’αž‚αŸαž˜) αž“αžΉαž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ app1αŸ–

αžαŸ’αž“αžΆαž€αŸ‹αžŠαŸ†αž”αžΌαž„αž’αŸ’αž“αž€αž›αŸαž„

import ru.krista.bpm.ProcessInstance
import ru.krista.bpm.runtime.ProcessImpl
import ru.krista.bpm.runtime.constraint.UniqueConstraints
import ru.krista.bpm.runtime.dsl.processModel
import ru.krista.bpm.runtime.dsl.taskOperation
import ru.krista.bpm.runtime.instance.MessageSendInstance

data class PlayerInfo(val name: String, val domain: String, val id: String)

class PlayersList : ArrayList<PlayerInfo>()

// Π­Ρ‚ΠΎ класс экзСмпляра процСсса: инкапсулируСт Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅Π΅ состояниС
class InitialPlayer : ProcessImpl<InitialPlayer>(initialPlayerModel) {
    var playerName: String by persistent("Player1")
    var energy: Int by persistent(30)
    var players: PlayersList by persistent(PlayersList())
    var shotCounter: Int = 0
}

// Π­Ρ‚ΠΎ дСкларация ΠΌΠΎΠ΄Π΅Π»ΠΈ процСсса: создаСтся ΠΎΠ΄ΠΈΠ½ Ρ€Π°Π·, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ всСми
// экзСмплярами процСсса ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π³ΠΎ класса
val initialPlayerModel = processModel<InitialPlayer>(name = "InitialPlayer",
                                                     version = 1) {

    // По ΠΏΡ€Π°Π²ΠΈΠ»Π°ΠΌ, ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ³Ρ€ΠΎΠΊ являСтся ΠΈΠ½ΠΈΡ†ΠΈΠ°Ρ‚ΠΎΡ€ΠΎΠΌ ΠΈΠ³Ρ€Ρ‹ ΠΈ Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±Ρ‹Ρ‚ΡŒ СдинствСнным
    uniqueConstraint = UniqueConstraints.singleton

    // ОбъявляСм активности, ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… состоит бизнСс-процСсс
    val sendNewGameSignal = signal<String>("NewGame")
    val sendStopGameSignal = signal<String>("StopGame")
    val startTask = humanTask("Start") {
        taskOperation {
            processCondition { players.size > 0 }
            confirmation { "ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ»ΠΎΡΡŒ ${players.size} ΠΈΠ³Ρ€ΠΎΠΊΠΎΠ². НачинаСм?" }
        }
    }
    val stopTask = humanTask("Stop") {
        taskOperation {}
    }
    val waitPlayerJoin = signalWait<String>("PlayerJoin") { signal ->
        players.add(PlayerInfo(
                signal.data!!,
                signal.sender.domain,
                signal.sender.processInstanceId))
        println("... join player ${signal.data} ...")
    }
    val waitPlayerOut = signalWait<String>("PlayerOut") { signal ->
        players.remove(PlayerInfo(
                signal.data!!,
                signal.sender.domain,
                signal.sender.processInstanceId))
        println("... player ${signal.data} is out ...")
    }
    val sendPlayerOut = signal<String>("PlayerOut") {
        signalData = { playerName }
    }
    val sendHandshake = messageSend<String>("Handshake") {
        messageData = { playerName }
        activation = {
            receiverDomain = process.players.last().domain
            receiverProcessInstanceId = process.players.last().id
        }
    }
    val throwStartBall = messageSend<Int>("Ball") {
        messageData = { 1 }
        activation = { selectNextPlayer() }
    }
    val throwBall = messageSend<Int>("Ball") {
        messageData = { shotCounter + 1 }
        activation = { selectNextPlayer() }
        onEntry { energy -= 1 }
    }
    val waitBall = messageWaitData<Int>("Ball") {
        shotCounter = it
    }

    // Π’Π΅ΠΏΠ΅Ρ€ΡŒ конструируСм Π³Ρ€Π°Ρ„ процСсса ΠΈΠ· ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½Ρ‹Ρ… активностСй
    startFrom(sendNewGameSignal)
            .fork("mainFork") {
                next(startTask)
                next(waitPlayerJoin).next(sendHandshake).next(waitPlayerJoin)
                next(waitPlayerOut)
                        .branch("checkPlayers") {
                            ifTrue { players.isEmpty() }
                                    .next(sendStopGameSignal)
                                    .terminate()
                            ifElse().next(waitPlayerOut)
                        }
            }
    startTask.fork("afterStart") {
        next(throwStartBall)
                .branch("mainLoop") {
                    ifTrue { energy < 5 }.next(sendPlayerOut).next(waitBall)
                    ifElse().next(waitBall).next(throwBall).loop()
                }
        next(stopTask).next(sendStopGameSignal)
    }

    // НавСшаСм Π½Π° активности Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΈ для логирования
    sendNewGameSignal.onExit { println("Let's play!") }
    sendStopGameSignal.onExit { println("Stop!") }
    sendPlayerOut.onExit { println("$playerName: I'm out!") }
}

private fun MessageSendInstance<InitialPlayer, Int>.selectNextPlayer() {
    val player = process.players.random()
    receiverDomain = player.domain
    receiverProcessInstanceId = player.id
    println("Step ${process.shotCounter + 1}: " +
            "${process.playerName} >>> ${player.name}")
}

αž”αž“αŸ’αžαŸ‚αž˜αž–αžΈαž›αžΎαž€αžΆαžšαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž€αžΌαžŠαžαžΆαž„αž›αžΎαž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž‚αŸ†αžšαžΌαžœαžαŸ’αžαž»αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αžŠαŸ‚αž›αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž‡αžΆαžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αŸ” αž™αžΎαž„αž˜αž·αž“αž‘αžΆαž“αŸ‹αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αžΎαž›αžƒαžΎαž‰αž“αŸ…αž‘αžΎαž™αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž™αžΎαž„αžαŸ’αžšαžΌαžœαž…αŸ†αžŽαžΆαž™αž–αŸαž›αž”αž“αŸ’αžαž·αž…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‚αžΌαžš (αž“αŸ…αž‘αžΈαž“αŸαŸ‡αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αžŸαž˜αŸ’αžšαž½αž›αž€αžΆαžšαžŸαž˜αŸ’αž‚αžΆαž›αŸ‹ BPMN αž”αž“αŸ’αžαž·αž…αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž…αŸ’αžšαž€αž‘αŸ’αžœαžΆαžš αžŠαžΎαž˜αŸ’αž”αžΈαž€αŸ‚αž›αž˜αŸ’αž’αž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž“αŸƒαžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αž‡αžΆαž˜αž½αž™αž€αžΌαžŠαžαžΆαž„αž€αŸ’αžšαŸ„αž˜)αŸ–

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

app2 αž“αžΉαž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž›αŸαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαŸ–

αžαŸ’αž“αžΆαž€αŸ‹ RandomPlayer

import ru.krista.bpm.ProcessInstance
import ru.krista.bpm.runtime.ProcessImpl
import ru.krista.bpm.runtime.dsl.processModel
import ru.krista.bpm.runtime.instance.MessageSendInstance

data class PlayerInfo(val name: String, val domain: String, val id: String)

class PlayersList: ArrayList<PlayerInfo>()

class RandomPlayer : ProcessImpl<RandomPlayer>(randomPlayerModel) {

    var playerName: String by input(persistent = true, 
                                    defaultValue = "RandomPlayer")
    var energy: Int by input(persistent = true, defaultValue = 30)
    var players: PlayersList by persistent(PlayersList())
    var allPlayersOut: Boolean by persistent(false)
    var shotCounter: Int = 0

    val selfPlayer: PlayerInfo
        get() = PlayerInfo(playerName, env.eventDispatcher.domainName, id)
}

val randomPlayerModel = processModel<RandomPlayer>(name = "RandomPlayer", 
                                                   version = 1) {

    val waitNewGameSignal = signalWait<String>("NewGame")
    val waitStopGameSignal = signalWait<String>("StopGame")
    val sendPlayerJoin = signal<String>("PlayerJoin") {
        signalData = { playerName }
    }
    val sendPlayerOut = signal<String>("PlayerOut") {
        signalData = { playerName }
    }
    val waitPlayerJoin = signalWaitCustom<String>("PlayerJoin") {
        eventCondition = { signal ->
            signal.sender.processInstanceId != process.id 
                && !process.players.any { signal.sender.processInstanceId == it.id}
        }
        handler = { signal ->
            players.add(PlayerInfo(
                    signal.data!!,
                    signal.sender.domain,
                    signal.sender.processInstanceId))
        }
    }
    val waitPlayerOut = signalWait<String>("PlayerOut") { signal ->
        players.remove(PlayerInfo(
                signal.data!!,
                signal.sender.domain,
                signal.sender.processInstanceId))
        allPlayersOut = players.isEmpty()
    }
    val sendHandshake = messageSend<String>("Handshake") {
        messageData = { playerName }
        activation = {
            receiverDomain = process.players.last().domain
            receiverProcessInstanceId = process.players.last().id
        }
    }
    val receiveHandshake = messageWait<String>("Handshake") { message ->
        if (!players.any { message.sender.processInstanceId == it.id}) {
            players.add(PlayerInfo(
                    message.data!!, 
                    message.sender.domain, 
                    message.sender.processInstanceId))
        }
    }
    val throwBall = messageSend<Int>("Ball") {
        messageData = { shotCounter + 1 }
        activation = { selectNextPlayer() }
        onEntry { energy -= 1 }
    }
    val waitBall = messageWaitData<Int>("Ball") {
        shotCounter = it
    }

    startFrom(waitNewGameSignal)
            .fork("mainFork") {
                next(sendPlayerJoin)
                        .branch("mainLoop") {
                            ifTrue { energy < 5 || allPlayersOut }
                                    .next(sendPlayerOut)
                                    .next(waitBall)
                            ifElse()
                                    .next(waitBall)
                                    .next(throwBall)
                                    .loop()
                        }
                next(waitPlayerJoin).next(sendHandshake).next(waitPlayerJoin)
                next(waitPlayerOut).next(waitPlayerOut)
                next(receiveHandshake).next(receiveHandshake)
                next(waitStopGameSignal).terminate()
            }

    sendPlayerJoin.onExit { println("$playerName: I'm here!") }
    sendPlayerOut.onExit { println("$playerName: I'm out!") }
}

private fun MessageSendInstance<RandomPlayer, Int>.selectNextPlayer() {
    val player = if (process.players.isNotEmpty()) 
        process.players.random() 
    else 
        process.selfPlayer
    receiverDomain = player.domain
    receiverProcessInstanceId = player.id
    println("Step ${process.shotCounter + 1}: " +
            "${process.playerName} >>> ${player.name}")
}

αžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αŸ–

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ app3 αž™αžΎαž„αž“αžΉαž„αž”αž„αŸ’αž€αžΎαžαž’αŸ’αž“αž€αž›αŸαž„αžŠαŸ‚αž›αž˜αžΆαž“αž’αžΆαž€αž”αŸ’αž”αž€αž·αžšαž·αž™αžΆαžαž»αžŸαž‚αŸ’αž“αžΆαž”αž“αŸ’αžαž·αž…αž”αž“αŸ’αžαž½αž…αŸ– αž‡αŸ†αž“αž½αžŸαž±αŸ’αž™αž€αžΆαžšαž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž’αŸ’αž“αž€αž›αŸαž„αž”αž“αŸ’αž‘αžΆαž”αŸ‹αžŠαŸ„αž™αž…αŸƒαžŠαž“αŸ’αž™ αž‚αžΆαžαŸ‹αž“αžΉαž„αž’αŸ’αžœαžΎαž‘αŸ…αžαžΆαž˜αž€αŸ’αž”αž½αž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αž»αŸ†αžœαž·αž›αŸ–

αžαŸ’αž“αžΆαž€αŸ‹ RoundRobinPlayer

import ru.krista.bpm.ProcessInstance
import ru.krista.bpm.runtime.ProcessImpl
import ru.krista.bpm.runtime.dsl.processModel
import ru.krista.bpm.runtime.instance.MessageSendInstance

data class PlayerInfo(val name: String, val domain: String, val id: String)

class PlayersList: ArrayList<PlayerInfo>()

class RoundRobinPlayer : ProcessImpl<RoundRobinPlayer>(roundRobinPlayerModel) {

    var playerName: String by input(persistent = true, 
                                    defaultValue = "RoundRobinPlayer")
    var energy: Int by input(persistent = true, defaultValue = 30)
    var players: PlayersList by persistent(PlayersList())
    var nextPlayerIndex: Int by persistent(-1)
    var allPlayersOut: Boolean by persistent(false)
    var shotCounter: Int = 0

    val selfPlayer: PlayerInfo
        get() = PlayerInfo(playerName, env.eventDispatcher.domainName, id)
}

val roundRobinPlayerModel = processModel<RoundRobinPlayer>(
        name = "RoundRobinPlayer", 
        version = 1) {

    val waitNewGameSignal = signalWait<String>("NewGame")
    val waitStopGameSignal = signalWait<String>("StopGame")
    val sendPlayerJoin = signal<String>("PlayerJoin") {
        signalData = { playerName }
    }
    val sendPlayerOut = signal<String>("PlayerOut") {
        signalData = { playerName }
    }
    val waitPlayerJoin = signalWaitCustom<String>("PlayerJoin") {
        eventCondition = { signal ->
            signal.sender.processInstanceId != process.id 
                && !process.players.any { signal.sender.processInstanceId == it.id}
        }
        handler = { signal ->
            players.add(PlayerInfo(
                    signal.data!!, 
                    signal.sender.domain, 
                    signal.sender.processInstanceId))
        }
    }
    val waitPlayerOut = signalWait<String>("PlayerOut") { signal ->
        players.remove(PlayerInfo(
                signal.data!!, 
                signal.sender.domain, 
                signal.sender.processInstanceId))
        allPlayersOut = players.isEmpty()
    }
    val sendHandshake = messageSend<String>("Handshake") {
        messageData = { playerName }
        activation = {
            receiverDomain = process.players.last().domain
            receiverProcessInstanceId = process.players.last().id
        }
    }
    val receiveHandshake = messageWait<String>("Handshake") { message ->
        if (!players.any { message.sender.processInstanceId == it.id}) {
            players.add(PlayerInfo(
                    message.data!!, 
                    message.sender.domain, 
                    message.sender.processInstanceId))
        }
    }
    val throwBall = messageSend<Int>("Ball") {
        messageData = { shotCounter + 1 }
        activation = { selectNextPlayer() }
        onEntry { energy -= 1 }
    }
    val waitBall = messageWaitData<Int>("Ball") {
        shotCounter = it
    }

    startFrom(waitNewGameSignal)
            .fork("mainFork") {
                next(sendPlayerJoin)
                        .branch("mainLoop") {
                            ifTrue { energy < 5 || allPlayersOut }
                                    .next(sendPlayerOut)
                                    .next(waitBall)
                            ifElse()
                                    .next(waitBall)
                                    .next(throwBall)
                                    .loop()
                        }
                next(waitPlayerJoin).next(sendHandshake).next(waitPlayerJoin)
                next(waitPlayerOut).next(waitPlayerOut)
                next(receiveHandshake).next(receiveHandshake)
                next(waitStopGameSignal).terminate()
            }

    sendPlayerJoin.onExit { println("$playerName: I'm here!") }
    sendPlayerOut.onExit { println("$playerName: I'm out!") }
}

private fun MessageSendInstance<RoundRobinPlayer, Int>.selectNextPlayer() {
    var idx = process.nextPlayerIndex + 1
    if (idx >= process.players.size) {
        idx = 0
    }
    process.nextPlayerIndex = idx
    val player = if (process.players.isNotEmpty()) 
        process.players[idx] 
    else 
        process.selfPlayer
    receiverDomain = player.domain
    receiverProcessInstanceId = player.id
    println("Step ${process.shotCounter + 1}: " +
            "${process.playerName} >>> ${player.name}")
}

αž”αžΎαž˜αž·αž“αžŠαžΌαž…αŸ’αž“αŸ„αŸ‡αž‘αŸαž’αžΆαž€αž”αŸ’αž”αž€αž·αžšαž·αž™αžΆαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž›αŸαž„αž˜αž·αž“αžαž»αžŸαž–αžΈαž˜αž»αž“αž‘αŸαžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŠαŸ’αž™αžΆαž€αŸ’αžšαžΆαž˜αž˜αž·αž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž‘αŸαŸ”

αž₯αž‘αžΌαžœαž“αŸαŸ‡αž™αžΎαž„αžαŸ’αžšαžΌαžœαž€αžΆαžšαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡αŸ” αžαŸ’αž‰αž»αŸ†αž“αžΉαž„αž•αŸ’αžŠαž›αŸ‹αž±αŸ’αž™αžαŸ‚αž›αŸαžαž€αžΌαžŠαž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαžŠαŸ„αž™αžαŸ’αž›αž½αž“αž―αž„αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡ αžŠαžΎαž˜αŸ’αž”αžΈαž€αž»αŸ†αž±αŸ’αž™αž–αž„αŸ’αžšαžΆαž™αž’αžαŸ’αžαž”αž‘αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž”αž“αŸ’αž‘αŸ‡ boilerplate (αžαžΆαž˜αž–αž·αž αžαŸ’αž‰αž»αŸ†αž”αžΆαž“αž”αŸ’αžšαžΎαž”αžšαž·αž™αžΆαž€αžΆαžŸαžŸαžΆαž€αž›αŸ’αž”αž„αžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž˜αž»αž“αž“αŸαŸ‡ αžŠαžΎαž˜αŸ’αž”αžΈαžŸαžΆαž€αž›αŸ’αž”αž„αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αŸ’αžŸαŸαž„αž‘αŸ€αž)αŸ–

αž αŸ’αž‚αŸαž˜αžŸαžΆαž€αž›αŸ’αž”αž„()

@Test
public void testGame() throws InterruptedException {
    String pl2 = startProcess(app2, "RandomPlayer", playerParams("Player2", 20));
    String pl3 = startProcess(app2, "RandomPlayer", playerParams("Player3", 40));
    String pl4 = startProcess(app3, "RoundRobinPlayer", playerParams("Player4", 25));
    String pl5 = startProcess(app3, "RoundRobinPlayer", playerParams("Player5", 35));
    String pl1 = startProcess(app1, "InitialPlayer");
    // Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΡƒΠΆΠ½ΠΎ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠ΄ΠΎΠΆΠ΄Π°Ρ‚ΡŒ, ΠΏΠΎΠΊΠ° ΠΈΠ³Ρ€ΠΎΠΊΠΈ "познакомятся" Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ.
    // Π–Π΄Π°Ρ‚ΡŒ Ρ‡Π΅Ρ€Π΅Π· sleep - ΠΏΠ»ΠΎΡ…ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅, Π·Π°Ρ‚ΠΎ самоС простоС. 
    // НС Π΄Π΅Π»Π°ΠΉΡ‚Π΅ Ρ‚Π°ΠΊ Π² ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹Ρ… тСстах!
    Thread.sleep(1000);
    // ЗапускаСм ΠΈΠ³Ρ€Ρƒ, закрывая ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ Π°ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ
    assertTrue(closeTask(app1, pl1, "Start"));
    app1.getWaiting().waitProcessFinished(pl1);
    app2.getWaiting().waitProcessFinished(pl2);
    app2.getWaiting().waitProcessFinished(pl3);
    app3.getWaiting().waitProcessFinished(pl4);
    app3.getWaiting().waitProcessFinished(pl5);
}

private Map<String, Object> playerParams(String name, int energy) {
    Map<String, Object> params = new HashMap<>();
    params.put("playerName", name);
    params.put("energy", energy);
    return params;
}

αžαŸ„αŸ‡β€‹αžŸαžΆαž€β€‹αž›αŸ’αž”αž„β€‹αž˜αžΎαž›β€‹αž€αŸ†αžŽαžαŸ‹β€‹αž αŸαžαž»αŸ–

αž‘αž·αž“αŸ’αž“αž•αž›αž€αž»αž„αžŸαžΌαž›αŸ”

Взята Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΊΠ»ΡŽΡ‡Π° lock://app1/process/InitialPlayer
Let's play!
Бнята Π±Π»ΠΎΠΊΠΈΡ€ΠΎΠ²ΠΊΠ° ΠΊΠ»ΡŽΡ‡Π° lock://app1/process/InitialPlayer
Player2: I'm here!
Player3: I'm here!
Player4: I'm here!
Player5: I'm here!
... join player Player2 ...
... join player Player4 ...
... join player Player3 ...
... join player Player5 ...
Step 1: Player1 >>> Player3
Step 2: Player3 >>> Player5
Step 3: Player5 >>> Player3
Step 4: Player3 >>> Player4
Step 5: Player4 >>> Player3
Step 6: Player3 >>> Player4
Step 7: Player4 >>> Player5
Step 8: Player5 >>> Player2
Step 9: Player2 >>> Player5
Step 10: Player5 >>> Player4
Step 11: Player4 >>> Player2
Step 12: Player2 >>> Player4
Step 13: Player4 >>> Player1
Step 14: Player1 >>> Player4
Step 15: Player4 >>> Player3
Step 16: Player3 >>> Player1
Step 17: Player1 >>> Player2
Step 18: Player2 >>> Player3
Step 19: Player3 >>> Player1
Step 20: Player1 >>> Player5
Step 21: Player5 >>> Player1
Step 22: Player1 >>> Player2
Step 23: Player2 >>> Player4
Step 24: Player4 >>> Player5
Step 25: Player5 >>> Player3
Step 26: Player3 >>> Player4
Step 27: Player4 >>> Player2
Step 28: Player2 >>> Player5
Step 29: Player5 >>> Player2
Step 30: Player2 >>> Player1
Step 31: Player1 >>> Player3
Step 32: Player3 >>> Player4
Step 33: Player4 >>> Player1
Step 34: Player1 >>> Player3
Step 35: Player3 >>> Player4
Step 36: Player4 >>> Player3
Step 37: Player3 >>> Player2
Step 38: Player2 >>> Player5
Step 39: Player5 >>> Player4
Step 40: Player4 >>> Player5
Step 41: Player5 >>> Player1
Step 42: Player1 >>> Player5
Step 43: Player5 >>> Player3
Step 44: Player3 >>> Player5
Step 45: Player5 >>> Player2
Step 46: Player2 >>> Player3
Step 47: Player3 >>> Player2
Step 48: Player2 >>> Player5
Step 49: Player5 >>> Player4
Step 50: Player4 >>> Player2
Step 51: Player2 >>> Player5
Step 52: Player5 >>> Player1
Step 53: Player1 >>> Player5
Step 54: Player5 >>> Player3
Step 55: Player3 >>> Player5
Step 56: Player5 >>> Player2
Step 57: Player2 >>> Player1
Step 58: Player1 >>> Player4
Step 59: Player4 >>> Player1
Step 60: Player1 >>> Player4
Step 61: Player4 >>> Player3
Step 62: Player3 >>> Player2
Step 63: Player2 >>> Player5
Step 64: Player5 >>> Player4
Step 65: Player4 >>> Player5
Step 66: Player5 >>> Player1
Step 67: Player1 >>> Player5
Step 68: Player5 >>> Player3
Step 69: Player3 >>> Player4
Step 70: Player4 >>> Player2
Step 71: Player2 >>> Player5
Step 72: Player5 >>> Player2
Step 73: Player2 >>> Player1
Step 74: Player1 >>> Player4
Step 75: Player4 >>> Player1
Step 76: Player1 >>> Player2
Step 77: Player2 >>> Player5
Step 78: Player5 >>> Player4
Step 79: Player4 >>> Player3
Step 80: Player3 >>> Player1
Step 81: Player1 >>> Player5
Step 82: Player5 >>> Player1
Step 83: Player1 >>> Player4
Step 84: Player4 >>> Player5
Step 85: Player5 >>> Player3
Step 86: Player3 >>> Player5
Step 87: Player5 >>> Player2
Step 88: Player2 >>> Player3
Player2: I'm out!
Step 89: Player3 >>> Player4
... player Player2 is out ...
Step 90: Player4 >>> Player1
Step 91: Player1 >>> Player3
Step 92: Player3 >>> Player1
Step 93: Player1 >>> Player4
Step 94: Player4 >>> Player3
Step 95: Player3 >>> Player5
Step 96: Player5 >>> Player1
Step 97: Player1 >>> Player5
Step 98: Player5 >>> Player3
Step 99: Player3 >>> Player5
Step 100: Player5 >>> Player4
Step 101: Player4 >>> Player5
Player4: I'm out!
... player Player4 is out ...
Step 102: Player5 >>> Player1
Step 103: Player1 >>> Player3
Step 104: Player3 >>> Player1
Step 105: Player1 >>> Player3
Step 106: Player3 >>> Player5
Step 107: Player5 >>> Player3
Step 108: Player3 >>> Player1
Step 109: Player1 >>> Player3
Step 110: Player3 >>> Player5
Step 111: Player5 >>> Player1
Step 112: Player1 >>> Player3
Step 113: Player3 >>> Player5
Step 114: Player5 >>> Player3
Step 115: Player3 >>> Player1
Step 116: Player1 >>> Player3
Step 117: Player3 >>> Player5
Step 118: Player5 >>> Player1
Step 119: Player1 >>> Player3
Step 120: Player3 >>> Player5
Step 121: Player5 >>> Player3
Player5: I'm out!
... player Player5 is out ...
Step 122: Player3 >>> Player5
Step 123: Player5 >>> Player1
Player5: I'm out!
Step 124: Player1 >>> Player3
... player Player5 is out ...
Step 125: Player3 >>> Player1
Step 126: Player1 >>> Player3
Player1: I'm out!
... player Player1 is out ...
Step 127: Player3 >>> Player3
Player3: I'm out!
Step 128: Player3 >>> Player3
... player Player3 is out ...
Player3: I'm out!
Stop!
Step 129: Player3 >>> Player3
Player3: I'm out!

αž–αžΈαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸαŸ‡ αž™αžΎαž„αž’αžΆαž…αž‘αžΆαž‰αž€αžΆαžšαžŸαž“αŸ’αž“αž·αžŠαŸ’αž‹αžΆαž“αžŸαŸ†αžαžΆαž“αŸ‹αŸ—αž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ–

  • αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž§αž”αž€αžšαžŽαŸαž…αžΆαŸ†αž”αžΆαž…αŸ‹ αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž’αžΆαž…αž”αž„αŸ’αž€αžΎαžαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž“αŸƒαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαžœαžΆαž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžŠαŸ„αž™αž˜αž·αž“αžšαŸ†αžαžΆαž“αžŠαž›αŸ‹αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ”
  • αž—αžΆαž–αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž“αŸƒαž€αž·αž…αŸ’αž…αž€αžΆαžšαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αžŠαŸ‚αž›αž‘αžΆαž˜αž‘αžΆαžšαžŸαž˜αžαŸ’αžαž—αžΆαž–αžœαž·αžŸαŸ’αžœαž€αž˜αŸ’αž˜αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αžΆαž€αŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαžœαžΆαžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžŠαŸ†αž”αžΌαž„αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αž“αŸƒαž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαŸ” αž—αžΆαž–αž›αŸ†αž”αžΆαž€αž“αŸƒαž”αž‰αŸ’αž αžΆαž˜αž·αž“αž’αžΆαž…αž›αžΆαž€αŸ‹αž”αžΆαŸ†αž„αž”αžΆαž“αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž…αŸ†αž–αŸ„αŸ‡αž”αž‰αŸ’αž αžΆαž–αž·αž”αžΆαž€αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΌαžŠαž“αžΉαž„αž˜αžΎαž›αž‘αŸ…αžŠαžΌαž…αžœαžΆαŸ”
  • αž“αŸ…αž–αŸαž›αž”αž„αŸ’αž€αžΎαžαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜ αžœαžΆαž‡αžΆαž€αžΆαžšαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž‚αž·αžαž‚αžΌαžšαž–αžΈαž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαž‡αžΆαž™αžαžΆαž αŸαžαž» αž“αž·αž„αž€αž„αŸ’αžœαŸ‡αž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž›αžΈαž“αŸαž’αŸŠαŸ‚αžšαž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαž’αŸ’αž“αž€αž…αžΌαž›αžšαž½αž˜αžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž“αŸαŸ‡αž”αž„αŸ’αžαŸ†αž±αŸ’αž™αž™αžΎαž„αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αžŠαž›αŸ‹αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆ αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž±αŸ’αž™αžœαžΆαž˜αž·αž“αž™αž›αŸ‹αžŸαŸ’αžšαž”αž‘αŸ…αž“αžΉαž„αž›αŸ†αžŠαžΆαž”αŸ‹αžŠαŸ‚αž›αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαžαžΆαž„αž€αŸ’αžšαŸ…αž€αžΎαžαž‘αžΎαž„αŸ” αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžšαž”αžŸαŸ‹αž™αžΎαž„ αž’αŸ’αž“αž€αž›αŸαž„αžαŸ’αžšαžΌαžœαž”αž„αŸ’αžαŸ†αž±αŸ’αž™αž…αžΌαž›αžšαž½αž˜αž€αŸ’αž“αž»αž„αž αŸ’αž‚αŸαž˜ αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž‚αžΆαžαŸ‹αž”αŸ’αžšαž€αžΆαžŸαž–αžΈαž€αžΆαžšαž…αžΆαž€αž…αŸαž‰αž–αžΈαž αŸ’αž‚αŸαž˜αŸ– αž’αŸ’αž“αž€αž›αŸαž„αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž“αžΉαž„αž”αž“αŸ’αžαž αž»αž…αž”αžΆαž›αŸ‹αž±αŸ’αž™αž‚αžΆαžαŸ‹αžšαž αžΌαžαžŠαž›αŸ‹αž–αŸαžαŸŒαž˜αžΆαž“αž’αŸ†αž–αžΈαž€αžΆαžšαž…αžΆαž€αž…αŸαž‰αžšαž”αžŸαŸ‹αž‚αžΆαžαŸ‹αžˆαžΆαž“αžŠαž›αŸ‹ αž αžΎαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ„αž™αž’αŸ’αž“αž€αž…αžΌαž›αžšαž½αž˜αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž“αŸαŸ‡αž˜αž·αž“αž’αž“αž»αžœαžαŸ’αžαžαžΆαž˜αž…αŸ’αž”αžΆαž”αŸ‹αž“αŸƒαž αŸ’αž‚αŸαž˜αž‘αŸ αž αžΎαž™αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αž€αŸ’αž“αž»αž„αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαž“αŸƒαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαŸ”

αž”αž“αŸ’αž‘αžΆαž”αŸ‹ αž™αžΎαž„αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž—αžΆαž–αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž•αŸ’αžŸαŸαž„αŸ—αž“αŸƒαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ αž€αžΆαžšαžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž› αž“αž·αž„αž…αŸ†αžŽαž»αž…αž•αŸ’αžŸαŸαž„αŸ—αž‘αŸ€αžαžšαž”αžŸαŸ‹αž™αžΎαž„αŸ”

αžŸαžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ’αž“αž»αž„αž‡αž½αžšαž˜αž½αž™αŸ”

αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž‘αžΆαž“αž€αŸ’αžšαž»αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž˜αž½αž™ αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αž‡αžΆαžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžαžΆαž„αž€αŸ’αžšαŸ… BPMQueue αž˜αž½αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαžΆαžš αž“αž·αž„αž”αŸ’αžšαž’αžΆαž“αž”αž‘ BPMTopic αž˜αž½αž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαž‰αŸ’αž‰αžΆ (αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸ)αŸ” αž€αžΆαžšαžŠαžΆαž€αŸ‹αžŸαžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αžαžΆαž˜αžšαž™αŸˆαž‡αž½αžšαžαŸ‚αž˜αž½αž™αž‚αžΊαž‡αžΆαž€αžΆαžšαžŸαž˜αŸ’αžšαž”αžŸαž˜αŸ’αžšαž½αž›αŸ” αž“αŸ…αž€αž˜αŸ’αžšαž·αžαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž₯αž‘αžΌαžœαž“αŸαŸ‡αž’αŸ’αž“αž€αž’αžΆαž…αžŽαŸ‚αž“αžΆαŸ†αž”αŸ’αžšαž—αŸαž‘αžŸαžΆαžšαžαŸ’αž˜αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“αžαžΆαž˜αžŠαŸ‚αž›αž’αŸ’αž“αž€αž…αžΌαž›αž…αž·αžαŸ’αžαžŠαŸ„αž™αž˜αž·αž“αž’αŸ’αžœαžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž”αŸ’αžšαž–αŸαž“αŸ’αž’αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž—αžΆαž–αžŸαžΆαž˜αž‰αŸ’αž‰αžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž˜αž½αž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž˜αžΆαž“αž αžΆαž“αž·αž—αŸαž™αž˜αž½αž™αž…αŸ†αž“αž½αž“ αžŠαŸ‚αž›αž“αŸ…αž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘αž“αŸƒαž€αž·αž…αŸ’αž…αž€αžΆαžšαž’αž˜αŸ’αž˜αžαžΆαžšαž”αžŸαŸ‹αž™αžΎαž„αž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž˜αž·αž“αžŸαžΌαžœαžŸαŸ†αžαžΆαž“αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž™αžΎαž„αž‘αŸαŸ”

αž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜ BPM

αž‘αŸ„αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž˜αžΆαž“αž—αžΆαž–αž›αŸ’αž’αž·αžαž›αŸ’αž’αž“αŸ‹αž˜αž½αž™αž“αŸ…αž‘αžΈαž“αŸαŸ‡αŸ– αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΈαž˜αž½αž™αŸ—αžαŸ’αžšαž„αžŸαžΆαžš "αžšαž”αžŸαŸ‹αžœαžΆ" αž–αžΈαž‡αž½αžšαž“αŸ…αž…αŸ’αžšαž€αž…αžΌαž› αžαžΆαž˜αžˆαŸ’αž˜αŸ„αŸ‡αžŠαŸ‚αž“αžšαž”αžŸαŸ‹αžœαžΆαŸ” αžŠαŸ‚αž“αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αž•αž„αžŠαŸ‚αžšαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž‰αŸ’αž‰αžΆαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ†αžŽαžαŸ‹ "αžœαž·αžŸαžΆαž›αž—αžΆαž–αž“αŸƒαž€αžΆαžšαž˜αžΎαž›αžƒαžΎαž‰" αž“αŸƒαžŸαž‰αŸ’αž‰αžΆαž‘αŸ…αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ‚αž˜αž½αž™αŸ” αž“αŸαŸ‡αž‚αž½αžšαžαŸ‚αž”αž„αŸ’αž€αžΎαž“αž›αŸ†αž αžΌαžšαž“αŸƒαž‘αžΆαž“αž€αŸ’αžšαž»αž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαžαŸ‚αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžˆαŸ’αž˜αŸ„αŸ‡αžŠαŸ‚αž“αŸ– αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“αžŸαžΆαžš - αž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαž‰αŸ’αž‰αžΆ - αž…αž„αŸ‹αž”αžΆαž“αŸ”

αž€αžΆαžšαž’αžΆαž“αžΆαž“αžΌαžœαž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹αž“αŸƒαžšαžαž™αž“αŸ’αžαž€αŸ’αžšαž»αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆ

αž—αžΆαž–αž‡αžΏαž‡αžΆαž€αŸ‹αž˜αžΆαž“αž…αŸ†αžŽαž»αž…αž‡αžΆαž…αŸ’αžšαžΎαž“αŸ–

  • αžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžŸαžΆαžšαžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαž‚αžΊαž‡αžΆαž’αžΆαžαž»αž•αŸ’αžŸαŸ†αžŠαŸαžŸαŸ†αžαžΆαž“αŸ‹αž“αŸƒαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜ αž“αž·αž„αž…αŸ†αžŽαž»αž…αž˜αž½αž™αž“αŸƒαž”αžšαžΆαž‡αŸαž™αŸ– αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž€αžΆαžšαž’αžαŸ‹αž’αŸ’αž˜αžαŸ‹αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αŸ” αž’αŸ’αž“αž€αž‚αž½αžšαžαŸ‚αž”αŸ’αžšαžΎαžαŸ‚αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž“αŸαžŠαŸ‚αž›αž”αžΆαž“αžŸαžΆαž€αž›αŸ’αž”αž„αžŠαŸ„αž™αž–αŸαž›αžœαŸαž›αžΆ αžŠαŸ„αž™αž˜αžΆαž“αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαž›αŸ’αž’ αž“αž·αž„αžŸαž αž‚αž˜αž“αŸαžŠαŸαž’αŸ†αž˜αž½αž™αŸ”
  • αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαž”αžΆαž“αž“αžΌαžœαž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αžαŸ’αž–αžŸαŸ‹αž“αŸƒαžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžŸαžΆαžš αžŠαŸ‚αž›αžœαžΆαžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ†αž”αŸ‚αž€αž…αŸαž‰αž–αžΈαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆ (αž—αžΆαž–αž’αžΆαž…αžšαž€αž”αžΆαž“αžαŸ’αž–αžŸαŸ‹αž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž˜αž½αž™αž“αžΉαž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ‚αž›αž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž‚αžΊαž–αž·αž”αžΆαž€αž‡αžΆαž„ αž“αž·αž„αž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαžαŸ’αž›αŸƒαžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆ) αŸ”
  • αžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αž˜αžΆαž“αž€αžΆαžαž–αŸ’αžœαž€αž·αž…αŸ’αž…αž•αŸ’αžαž›αŸ‹αž€αžΆαžšαž’αžΆαž“αžΆαž›αžΎαž€αžΆαžšαžŠαžΉαž€αž‡αž‰αŸ’αž‡αžΌαž“ "αž™αŸ‰αžΆαž„αž αŸ„αž…αžŽαžΆαžŸαŸ‹αž˜αŸ’αžαž„" αŸ” αž“αŸαŸ‡αž‚αžΊαž‡αžΆαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž…αžΆαŸ†αž”αžΆαž…αŸ‹αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ‚αž›αž’αžΆαž…αž‘αž»αž€αž…αž·αžαŸ’αžαž”αžΆαž“αž“αŸƒαž‘αžΆαž“αž€αŸ’αžšαž»αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαŸ” αž˜αž·αž“αž…αžΆαŸ†αž”αžΆαž…αŸ‹αž˜αžΆαž“αž€αžΆαžšαž’αžΆαž“αžΆαž€αž˜αŸ’αžšαž·αž "αž˜αŸ’αžαž„" αž‘αŸαŸ– αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž‡αžΆαž€αŸ’αž”αž½αž“αž˜αž·αž“αž˜αžΆαž“αž—αžΆαž–αžšαžŸαžΎαž”αž…αŸ†αž–αŸ„αŸ‡αž€αžΆαžšαž˜αž€αžŠαž›αŸ‹αžŸαžΆαžš αž¬αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž˜αŸ’αžαž„αž αžΎαž™αž˜αŸ’αžαž„αž‘αŸ€αžαž‘αŸ αž αžΎαž™αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž·αž…αŸ’αž…αž€αžΆαžšαž–αž·αžŸαŸαžŸαžŠαŸ‚αž›αž˜αžΆαž“αžŸαžΆαžšαŸˆαžŸαŸ†αžαžΆαž“αŸ‹ αžœαžΆαž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž“αŸ’αžαŸ‚αž˜αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ…αž›αžΎαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ” αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž‡αžΆαž‡αžΆαž„αž”αŸ’αžšαžΎαž€αžΆαžšαž’αžΆαž“αžΆ "αžαŸ’αž›αŸƒ" "αž₯αžαžˆαž”αŸ‹αžˆαžš;
  • αž€αžΆαžšαž•αŸ’αž‰αžΎαžŸαžΆαžš αž“αž·αž„αžŸαž‰αŸ’αž‰αžΆαžαŸ’αžšαžΌαžœαžαŸ‚αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž“αžΉαž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžšαž½αž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž€αŸ’αž“αž»αž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž“αž·αž„αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž“αŸ” αž‡αž˜αŸ’αžšαžΎαžŸαžŠαŸ‚αž›αž–αŸαž‰αž…αž·αžαŸ’αžαž‚αžΊαžαŸ’αžšαžΌαžœαž”αŸ’αžšαžΎαž›αŸ†αž“αžΆαŸ† αž”αŸ’αžšαž’αž”αŸ‹αž…αŸαž‰αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž”αŸ‰αž»αž“αŸ’αžαŸ‚αžœαžΆαž“αžΉαž„αžαŸ’αžšαžΌαžœαž€αžΆαžšαžαžΆαžšαžΆαž„αž”αž“αŸ’αžαŸ‚αž˜αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αž·αž„αž’αŸ’αž“αž€αž“αž·αž™αžΆαž™αž‘αžΎαž„αžœαž·αž‰αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ JEE αžœαžΆαž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž±αŸ’αž™αžŸαžΆαž˜αž‰αŸ’αž‰αžŠαŸ„αž™αž”αŸ’αžšαžΎαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„ JTA αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αžΆαžšαžαž—αŸ’αž‡αžΆαž”αŸ‹αž‘αŸ…αžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžŠαŸ‚αž›αž”αžΆαž“αž‡αŸ’αžšαžΎαžŸαžšαžΎαžŸαžαŸ’αžšαžΌαžœαžαŸ‚αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ XA;
  • αž’αŸ’αž“αž€αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŸαžΆαžšαž…αžΌαž› αž“αž·αž„αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž€αŸαžαŸ’αžšαžΌαžœαžαŸ‚αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ‚αž›αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αž„αžŠαŸ‚αžšαŸ– αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž”αŸ‚αž”αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αžœαž·αž›αž˜αž€αžœαž·αž‰ αž“αŸ„αŸ‡αž€αžΆαžšαž‘αž‘αž½αž›αžŸαžΆαžšαžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž›αž»αž”αž…αŸ„αž›αŸ”
  • αžŸαžΆαžšβ€‹αžŠαŸ‚αž›β€‹αž˜αž·αž“β€‹αž’αžΆαž…β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž”αž‰αŸ’αž‡αžΌαž“β€‹αžŠαŸ„αž™β€‹αžŸαžΆαžšβ€‹αžαŸ‚β€‹αž˜αžΆαž“β€‹αž€αŸ†αž αž»αžŸβ€‹αžαŸ’αžšαžΌαžœβ€‹αžαŸ‚β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αžšαž€αŸ’αžŸαžΆβ€‹αž‘αž»αž€β€‹αž€αŸ’αž“αž»αž„β€‹αž€αž“αŸ’αž›αŸ‚αž„β€‹αž•αŸ’αž‘αž»αž€β€‹αžŠαŸ„αž™β€‹αž‘αŸ‚αž€β€‹αž˜αž½αž™β€‹ D.L.Q. (αž‡αž½αžšαžŸαŸ†αž”αž»αžαŸ’αžšαžŸαŸ’αž›αžΆαž”αŸ‹) αŸ” αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž‚αŸ„αž›αž”αŸ†αžŽαž„αž“αŸαŸ‡ αž™αžΎαž„αž”αžΆαž“αž”αž„αŸ’αž€αžΎαž microservice αžœαŸαž‘αž·αž€αžΆαžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αžŠαŸ‚αž›αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžŸαžΆαžšαž”αŸ‚αž”αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž“αŸ’αž›αŸ‚αž„αž•αŸ’αž‘αž»αž€αžšαž”αžŸαŸ‹αžœαžΆ αž’αŸ’αžœαžΎαž›αž·αž”αž·αž€αŸ’αžšαž˜αž–αž½αž€αžœαžΆαžαžΆαž˜αž›αž€αŸ’αžαžŽαŸˆ (αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžŠαžΆαž€αŸ‹αž‡αžΆαž€αŸ’αžšαž»αž˜ αž“αž·αž„αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αžšαž€αžšαž αŸαžŸ) αž“αž·αž„αž”αž„αŸ’αž αžΆαž‰ API αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž˜αžΎαž› αž”αž‰αŸ’αž‡αžΌαž“αž”αž“αŸ’αžαž‘αŸ…αž€αžΆαž“αŸ‹αž’αžΆαžŸαž™αžŠαŸ’αž‹αžΆαž“αž‚αŸ„αž›αžŠαŸ… αž“αž·αž„αž›αž»αž”αžŸαžΆαžšαŸ” αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’αž’αžΆαž…αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž“αŸαŸ‡αžαžΆαž˜αžšαž™αŸˆαž…αŸ†αžŽαž»αž…αž”αŸ’αžšαž‘αžΆαž€αŸ‹αž‚αŸαž αž‘αŸ†αž–αŸαžšαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαŸ”
  • αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž€αŸ†αžŽαžαŸ‹αžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž› αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αŸ‚αžαž˜αŸ’αžšαžΌαžœαž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαž”αž‰αŸ’αž‡αžΌαž“αž‘αžΎαž„αžœαž·αž‰ αž“αž·αž„αž€αžΆαžšαž–αž“αŸ’αž™αžΆαžšαž–αŸαž›αžšαžœαžΆαž„αž€αžΆαžšαž…αŸ‚αž€αž…αžΆαž™ αžŠαžΎαž˜αŸ’αž”αžΈαž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™αž›αž‘αŸ’αž’αž—αžΆαž–αž“αŸƒαžŸαžΆαžšαž…αžΌαž›αž‘αŸ…αž€αŸ’αž“αž»αž„ DLQ (αžœαžΆαžŸαŸ’αž‘αžΎαžšαžαŸ‚αž˜αž·αž“αž’αžΆαž…αž‘αŸ…αžšαž½αž…αž‘αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž‚αžŽαž“αžΆαž”αŸ‰αžΆαžšαŸ‰αžΆαž˜αŸ‰αŸ‚αžαŸ’αžšαžŠαŸαž›αŸ’αž’αž”αŸ’αžšαžŸαžΎαžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αž’αžΆαž…αž’αŸ’αžœαžΎαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„ αž“αž·αž„αž€αŸ‚αžαž˜αŸ’αžšαžΌαžœαž–αž½αž€αžœαžΆαž€αŸ’αž“αž»αž„αž’αŸ†αž‘αž»αž„αž–αŸαž›αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαŸ” );
  • αž αžΆαž„ DLQ αžαŸ’αžšαžΌαžœαžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž‡αžΆαž”αž“αŸ’αžαž”αž“αŸ’αž‘αžΆαž”αŸ‹ αž αžΎαž™αž”αŸ’αžšαž–αŸαž“αŸ’αž’αžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αžαŸ’αžšαžΌαžœαžαŸ‚αž‡αžΌαž“αžŠαŸ†αžŽαžΉαž„αžŠαž›αŸ‹αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αŸ’αžšαž–αŸαž“αŸ’αž’ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αžŸαžΆαžšαžŠαŸ‚αž›αž˜αž·αž“αž”αžΆαž“αž”αž‰αŸ’αž‡αžΌαž“αž€αžΎαžαž‘αžΎαž„ αž–αž½αž€αž‚αŸαž’αžΆαž…αž†αŸ’αž›αžΎαž™αžαž”αž”αžΆαž“αž›αžΏαž“αžαžΆαž˜αžŠαŸ‚αž›αž’αžΆαž…αž’αŸ’αžœαžΎαž‘αŸ…αž”αžΆαž“αŸ” αžœαžΆαž“αžΉαž„αž€αžΆαžαŸ‹αž”αž“αŸ’αžαž™ "αžαŸ†αž”αž“αŸ‹αžšαž„αž•αž›αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹" αž“αŸƒαž€αžΆαžšαž”αžšαžΆαž‡αŸαž™ αž¬αž€αŸ†αž αž»αžŸαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ”
  • αž‘αžΆαž“αž€αŸ’αžšαž»αž„αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž—αžΆαž–αžšαžŸαžΎαž”αž…αŸ†αž–αŸ„αŸ‡αž’αžœαžαŸ’αžαž˜αžΆαž“αž”αžŽαŸ’αžŠαŸ„αŸ‡αž’αžΆαžŸαž“αŸ’αž“αž“αŸƒαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαŸ– αž€αžΆαžšαž‡αžΆαžœαž”αŸ’αžšαž’αžΆαž“αž”αž‘αžαŸ’αžšαžΌαžœαžαŸ‚αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αžΆαž“αž™αžΌαžš αž αžΎαž™αžˆαŸ’αž˜αŸ„αŸ‡αžŠαŸ‚αž“αžšαž”αžŸαŸ‹αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαžαŸ’αžšαžΌαžœαžαŸ‚αž˜αžΆαž“αž›αž€αŸ’αžαžŽαŸˆαž”αŸ’αž›αŸ‚αž€αž–αžΈαž‚αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž’αžœαžαŸ’αžαž˜αžΆαž“ αž’αŸ’αž“αž€αž•αŸ’αžŸαŸαž„αž“αžΉαž„αž˜αž·αž“αž–αŸ’αž™αžΆαž™αžΆαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŸαžΆαžšαžšαž”αžŸαŸ‹αžœαžΆαž–αžΈ αž‡αž½αžšαŸ”

αž’αžΆαž“αžΆαžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αžαŸ’αžŸαŸ‚αžŸαŸ’αžšαž‘αžΆαž™αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜

αž§αž‘αžΆαž αžšαžŽαŸαžŠαžΌαž…αž‚αŸ’αž“αžΆαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αžŸαžΆαžš αž“αž·αž„αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž‡αžΆαž…αŸ’αžšαžΎαž“αž€αŸ’αž“αž»αž„αž–αŸαž›αžαŸ‚αž˜αž½αž™ αžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αž“αžΉαž„αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž‡αžΆαž˜αž½αž™αž‚αŸ’αž“αžΆαž“αŸαŸ‡ αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž”αž„αŸ’αž€αžΎαžαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž’αŸ’αžœαžΈαž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž‚αž½αžšαžαŸ‚αžŸαžΆαž˜αž‰αŸ’αž‰ αž“αž·αž„αž˜αžΆαž“αžŸαž»αžœαžαŸ’αžαž·αž—αžΆαž–αŸ”

αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαžαžΆαž„αž€αŸ’αžšαŸ…αž“αžΈαž˜αž½αž™αŸ— αžŠαŸ‚αž›αž”αŸ‰αŸ‡αž–αžΆαž›αŸ‹αžŠαž›αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸ„αŸ‡αžšαŸ€αž„αŸ—αžαŸ’αž›αž½αž“αŸ” αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž”αŸ‚αž”αž“αŸαŸ‡αž’αžΆαž…αž‡αžΆαŸ–

  • αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜;
  • αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž“αŸ…αž€αŸ’αž“αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜;
  • αž€αžΆαžšαž‘αž‘αž½αž›αžŸαžΆαžš αž¬αžŸαž‰αŸ’αž‰αžΆαžŠαŸ‚αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‡αžΆαžœαŸ”
  • αž€αžΆαžšαž€αŸαŸ‡αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž€αŸ†αžŽαžαŸ‹αž–αŸαž›αž€αŸ†αžŽαžαŸ‹αžŠαŸ„αž™αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜;
  • αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžαžΆαž˜αžšαž™αŸˆ API (αž§αž‘αžΆαž αžšαžŽαŸ αž€αžΆαžšαžšαŸ†αžαžΆαž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš)αŸ”

αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž”αŸ‚αž”αž“αŸαŸ‡αž“αžΈαž˜αž½αž™αŸ—αž’αžΆαž…αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ– αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αžΆαž…αž“αžΉαž„αž”αž‰αŸ’αž…αž”αŸ‹ αž αžΎαž™αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αž αžΎαž™αžαž˜αŸ’αž›αŸƒαž“αŸƒαž›αž€αŸ’αžαžŽαŸˆαžŸαž˜αŸ’αž”αžαŸ’αžαž·αžŠαŸ‚αž›αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž’αžΆαž…αž“αžΉαž„αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαŸ” αž€αžΆαžšαž”αž·αž‘αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžŽαžΆαž˜αž½αž™αž’αžΆαž…αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αž˜αž½αž™ αž¬αž…αŸ’αžšαžΎαž“αž“αŸƒαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžαžΆαž„αž€αŸ’αžšαŸ„αž˜αŸ” αž•αŸ’αž‘αž»αž™αž‘αŸ…αžœαž·αž‰ αž’αŸ’αž“αž€αž‘αžΆαŸ†αž„αž“αŸ„αŸ‡αž’αžΆαž…αžˆαž”αŸ‹αžšαž„αŸ‹αž…αžΆαŸ†αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαž•αŸ’αžŸαŸαž„αž‘αŸ€αž αž¬αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž–αž½αž€αž‚αŸαž˜αž·αž“αžαŸ’αžšαžΌαžœαž€αžΆαžšαž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αž“αŸ’αžαŸ‚αž˜αžŽαžΆαž˜αž½αž™ αž’αžΆαž…αž”αž‰αŸ’αž…αž”αŸ‹αž€αŸ’αž“αž»αž„αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαžΌαž…αž‚αŸ’αž“αžΆαŸ” αž˜αž»αž“αž–αŸαž›αž”αž·αž‘αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžš αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžαŸ’αž˜αžΈαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŠαŸ‚αž›αžœαžΆαž“αžΉαž„αžšαž„αŸ‹αž…αžΆαŸ†αž–αŸ’αžšαžΉαžαŸ’αžαž·αž€αžΆαžšαžŽαŸαžαžΆαž„αž€αŸ’αžšαŸ…αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž€αžΎαžαž‘αžΎαž„αŸ”

αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αžŠαŸ‚αž›αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„αž‚αžΊαž‡αžΆαž…αŸ†αžŽαž»αž…αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž”αŸ†αž•αž»αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž”αŸ’αžšαžΎ SELECT FOR UPDATE αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž˜αž½αž™αž”αžΆαž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαžΎαž˜αŸ’αž”αžΈαž‘αž‘αž½αž›αž”αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžœαžΆαž“αŸ„αŸ‡ αž‚αŸ’αž˜αžΆαž“αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŠαŸ‚αž›αžŸαŸ’αžšαž”αž‚αŸ’αž“αžΆαž“αžΉαž„αž’αžΆαž…αž‘αž‘αž½αž›αž”αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŠαžΌαž…αž‚αŸ’αž“αžΆαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž˜αž½αž™αž•αŸ’αžŸαŸαž„αž‘αŸ€αž αž αžΎαž™αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž”αž‰αŸ’αž…αž”αŸ‹αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαžŠαŸ†αž”αžΌαž„ αž”αŸ’αžšαžαž·αž”αžαŸ’αžαž·αž€αžΆαžšαž‘αžΈαž–αžΈαžšαž‚αžΊ αž’αžΆαž“αžΆαžαžΆαž“αžΉαž„αž‘αž‘αž½αž›αž”αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžšαž½αž…αž αžΎαž™αŸ”

αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸ„αž‘αž»αž‘αž·αžŠαŸ’αž‹αž·αž“αž·αž™αž˜αž“αŸ…αž•αŸ’αž“αŸ‚αž€αžαžΆαž„ DBMS αž™αžΎαž„αž”αŸ†αž–αŸαž‰αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αŸ” αž‘αžΉαž€αž’αžΆαžŸαŸŠαžΈαžŠαž“αž·αž„αžšαž€αŸ’αžŸαžΆαž“αžΌαžœαžŸαž˜αžαŸ’αžαž—αžΆαž–αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αŸ’αžœαžΎαž˜αžΆαžαŸ’αžšαžŠαŸ’αž‹αžΆαž“αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž˜αž½αž™αž“αžΉαž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžŠαŸ„αž™αž”αž„αŸ’αž€αžΎαž“αž…αŸ†αž“αž½αž“αž€αžšαžŽαžΈαžŠαŸ‚αž›αž€αŸ†αž–αž»αž„αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”

αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„αž‘αž»αž‘αž·αžŠαŸ’αž‹αž·αž“αž·αž™αž˜αž‚αŸ†αžšαžΆαž˜αž€αŸ†αž αŸ‚αž„αž™αžΎαž„αž‡αžΆαž˜αž½αž™αž“αžΉαž„αž—αžΆαž–αž‡αžΆαž”αŸ‹αž‚αžΆαŸ†αž„ αžŠαŸ‚αž›αž˜αžΆαž“αž“αŸαž™αžαžΆ SELECT FOR UPDATE αž‚αž½αžšαžαŸ‚αž“αŸ…αžαŸ‚αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž…αŸ†αž–αŸ„αŸ‡αž–αŸαž›αžœαŸαž›αžΆαžŠαŸ‚αž›αžŸαž˜αž αŸαžαž»αž•αž›αž˜αž½αž™αž…αŸ†αž“αž½αž“ αž€αŸ’αž“αž»αž„αž€αžšαžŽαžΈαžŠαŸ‚αž›αž€αžΆαžšαž‡αžΆαž”αŸ‹αž‚αžΆαŸ†αž„αž€αžΎαžαž‘αžΎαž„αž›αžΎαž€αžšαžŽαžΈαž’αŸ’αž„αž“αŸ‹αž’αŸ’αž„αžšαž˜αž½αž™αž…αŸ†αž“αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ”

αž”αž‰αŸ’αž αžΆαž˜αž½αž™αž‘αŸ€αžαž‚αžΊαž€αžΆαžšαž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αž“αŸƒαž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ” αžαžŽαŸˆαž–αŸαž›αžŠαŸ‚αž›αž˜αž·αž“αž˜αžΆαž“αž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž“αŸ„αŸ‡αž˜αž·αž“αž˜αžΆαž“αžšαžŠαŸ’αž‹αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžαŸ’αžšαžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž“αžΉαž„αž˜αž·αž“αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αŸαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž’αžΆαž“αžΆαž“αžΌαžœαž—αžΆαž–αž”αŸ’αž›αŸ‚αž€αž“αŸƒαž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸ…αž€αŸ’αž“αž»αž„αžœαž·αžŸαžΆαž›αž—αžΆαž–αž‡αžΆαž€αŸ‹αž›αžΆαž€αŸ‹αž˜αž½αž™ αž“αŸ„αŸ‡αž’αŸ’αž“αž€αž“αžΉαž„αžαŸ’αžšαžΌαžœαž€αžΆαžšαž”αŸ’αžšαž—αŸαž‘αžœαžαŸ’αžαž»αž’αŸ’αžœαžΎαžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜αž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαŸ‚αž›αž‘αžΆαž€αŸ‹αž‘αž„αž“αžΉαž„αžαŸ’αž“αžΆαž€αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžš αž“αž·αž„αžœαž·αžŸαžΆαž›αž—αžΆαž–αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡ αž™αžΎαž„αž”αŸ’αžšαžΎαž™αž“αŸ’αžαž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„αž•αŸ’αžŸαŸαž„αž‚αŸ’αž“αžΆαžŠαŸ‚αž›αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αž’αŸ’αžœαžΎαž€αžΆαžšαž…αžΆαž€αŸ‹αžŸαŸ„αž›αžΎαž’αž“αž’αžΆαž“αž”αŸ†αž–αžΆαž“αžŠαŸ‚αž›αž”αžΆαž“αž”αž‰αŸ’αž‡αžΆαž€αŸ‹αžŠαŸ„αž™αžŸαŸ„αž“αŸ…αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹ URI αžαžΆαž˜αžšαž™αŸˆαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αžαžΆαž„αž€αŸ’αžšαŸ…αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž§αž‘αžΆαž αžšαžŽαŸαžšαž”αžŸαŸ‹αž™αžΎαž„ αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ InitialPlayer αž˜αžΆαž“αžŸαŸαž…αž€αŸ’αžαžΈαž”αŸ’αžšαž€αžΆαžŸαž˜αž½αž™αŸ”

uniqueConstraint = UniqueConstraints.singleton

αžŠαžΌαž…αŸ’αž“αŸαŸ‡ αž€αŸ†αžŽαžαŸ‹αž αŸαžαž»β€‹αž˜αžΆαž“β€‹αžŸαžΆαžšβ€‹αž’αŸ†αž–αžΈβ€‹αž€αžΆαžšβ€‹αž‘αž‘αž½αž›β€‹αž™αž€ αž“αž·αž„β€‹αž€αžΆαžšβ€‹αž”αž‰αŸ’αž…αŸαž‰β€‹αžŸαŸ„β€‹αž“αŸƒβ€‹αžŸαŸ„αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœβ€‹αž‚αŸ’αž“αžΆαŸ” αž˜αž·αž“αž˜αžΆαž“αžŸαžΆαžšαž”αŸ‚αž”αž“αŸαŸ‡αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž•αŸ’αžŸαŸαž„αž‘αŸ€αžαž‘αŸαŸ– αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αžαŸ‚αž˜αž½αž™αž‚αžαŸ‹αž˜αž·αž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž‘αŸαŸ”

αž”αž‰αŸ’αž αžΆαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αžšαžŠαŸ’αž‹αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹

αž‡αž½αž“αž€αžΆαž›αž€αžΆαžšαž˜αžΆαž“αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž˜αž·αž“αžαŸ’αžšαžΉαž˜αžαŸ‚αž‡αž½αž™αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžαŸ‚αž˜αž‘αžΆαŸ†αž„αžšαžΆαžšαžΆαŸ†αž„αžŠαž›αŸ‹αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž•αž„αžŠαŸ‚αžšαŸ”
αž”αž‰αŸ’αž αžΆαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž…αŸ†αž–αŸ„αŸ‡αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž“αž·αž„/αž¬αž‚αŸ†αžšαžΌαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ” αž˜αž·αž“αž˜αŸ‚αž“αžšαžΆαž›αŸ‹αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž”αŸ‚αž”αž“αŸαŸ‡αž‚αžΊαžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž…αžΆαžŸαŸ‹αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸ„αŸ‡αž‘αŸαŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž˜αžΆαž“αž€αžšαžŽαžΈαž”αž“αŸ’αžαž•αŸ’αž‘αžΆαž›αŸ‹αž‡αžΆαž…αŸ’αžšαžΎαž“αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αž“αŸ„αŸ‡αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž˜αž·αž“αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž’αžΆαž…αž”αžŽαŸ’αžαžΆαž›αž±αŸ’αž™αž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž‡αžΆαž…αŸ’αžšαžΎαž“αžŠαŸ‚αž›αž™αžΎαž„αž‡αž½αž”αž”αŸ’αžšαž‘αŸ‡αž‡αžΆαž‰αžΉαž€αž‰αžΆαž”αŸ‹αž“αŸ…αž–αŸαž›αž”αŸ’αžšαžΎ jBPM αŸ”

αž’αžΆαžŸαŸ’αžšαŸαž™αž›αžΎαž‡αž˜αŸ’αžšαŸ…αž“αŸƒαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžš αž’αŸ’αž“αž€αž’αžΆαž…αž’αŸ’αžœαžΎαžŸαž€αž˜αŸ’αž˜αž—αžΆαž–αžαžΆαž˜αž–αžΈαžšαžœαž·αž’αžΈαŸ–

  1. αž”αž„αŸ’αž€αžΎαžβ€‹αž”αŸ’αžšαž—αŸαž‘β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜β€‹αžαŸ’αž˜αžΈ αžŠαžΎαž˜αŸ’αž”αžΈβ€‹αž€αž»αŸ†β€‹αž±αŸ’αž™β€‹αž˜αžΆαž“β€‹αž€αžΆαžšβ€‹αž•αŸ’αž›αžΆαžŸαŸ‹β€‹αž”αŸ’αžαžΌαžšβ€‹αžŠαŸ‚αž›β€‹αž˜αž·αž“β€‹αžŸαŸŠαžΈαž‚αŸ’αž“αžΆβ€‹αž“αžΉαž„β€‹αž”αŸ’αžšαž—αŸαž‘β€‹αž…αžΆαžŸαŸ‹ αž αžΎαž™β€‹αž”αŸ’αžšαžΎβ€‹αžœαžΆβ€‹αž‡αŸ†αž“αž½αžŸβ€‹αž±αŸ’αž™β€‹αž”αŸ’αžšαž—αŸαž‘β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž…αžΆαžŸαŸ‹β€‹αž–αŸαž›β€‹αž”αžΎαž€β€‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšβ€‹αž€αžšαžŽαžΈβ€‹αžαŸ’αž˜αžΈαŸ” αž…αŸ’αž”αžΆαž”αŸ‹αž…αž˜αŸ’αž›αž„αž…αžΆαžŸαŸ‹αž“αžΉαž„αž”αž“αŸ’αžαžŠαŸ†αžŽαžΎαžšαž€αžΆαžš "αžŠαžΌαž…αž–αžΈαž˜αž»αž“";
  2. αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαžŸαŸ’αžαžΆαž“αž—αžΆαž–αž”αž“αŸ’αžαž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž“αŸ…αž–αŸαž›αž’αŸ’αžœαžΎαž”αž…αŸ’αž…αž»αž”αŸ’αž”αž“αŸ’αž“αž—αžΆαž–αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αŸ”

αžœαž·αž’αžΈαž‘αžΈαž˜αž½αž™αž‚αžΊαžŸαžΆαž˜αž‰αŸ’αž‰αž‡αžΆαž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž˜αžΆαž“αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹ αž“αž·αž„αž‚αž»αžŽαžœαž·αž”αžαŸ’αžαž·αžšαž”αžŸαŸ‹αžœαžΆ αž§αž‘αžΆαž αžšαžŽαŸαŸ–

  • αž€αžΆαžšαž…αž˜αŸ’αž›αž„αž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αŸ†αžšαžΌαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‡αžΆαž…αŸ’αžšαžΎαž“ αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž“αž”αžšαž·αž˜αžΆαžŽαž“αŸƒαžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜;
  • αž‡αžΆαžšαžΏαž™αŸ—αž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž—αŸ’αž›αžΆαž˜αŸ—αž‘αŸ…αž€αžΆαž“αŸ‹αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αž˜αžΈαž‚αžΊαžαŸ’αžšαžΌαžœαž”αžΆαž“αž‘αžΆαž˜αž‘αžΆαžš (αž“αŸ…αž€αŸ’αž“αž»αž„αž›αž€αŸ’αžαžαžŽαŸ’αžŒαž“αŸƒαž€αž·αž…αŸ’αž…αž€αžΆαžšαžŸαž˜αžΆαž αžšαžŽαž€αž˜αŸ’αž˜ - αžŸαŸ’αž‘αžΎαžšαžαŸ‚αž‡αžΆαž“αž·αž…αŸ’αž…αž€αžΆαž›);
  • αž’αŸ’αž“αž€β€‹αž’αž—αž·αžœαžŒαŸ’αžαž“αŸβ€‹αž˜αž·αž“β€‹αžŠαžΉαž„β€‹αž“αŸ…β€‹αž…αŸ†αžŽαž»αž…β€‹αžŽαžΆβ€‹αžŠαŸ‚αž›β€‹αž˜αŸ‰αžΌαžŠαŸ‚αž›β€‹αž αž½αžŸβ€‹αžŸαž˜αŸαž™β€‹αž’αžΆαž…β€‹αžαŸ’αžšαžΌαžœβ€‹αž”αžΆαž“β€‹αž›αž»αž”αŸ”

αž“αŸ…αž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž“αž»αžœαžαŸ’αž αž™αžΎαž„αž”αŸ’αžšαžΎαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαž‘αžΆαŸ†αž„αž–αžΈαžš αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž”αžΆαž“αž’αŸ’αžœαžΎαž€αžΆαžšαžŸαž˜αŸ’αžšαŸαž…αž…αž·αžαŸ’αžαž˜αž½αž™αž…αŸ†αž“αž½αž“αžŠαžΎαž˜αŸ’αž”αžΈαž’αŸ’αžœαžΎαž±αŸ’αž™αž‡αžΈαžœαž·αžαžšαž”αžŸαŸ‹αž™αžΎαž„αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ–

  • αž“αŸ…αž€αŸ’αž“αž»αž„αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹αžŠαŸ‚αž›αž’αžΆαž…αž’αžΆαž“αž”αžΆαž“ αž“αž·αž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ– αž€αŸ’αž“αž»αž„αž‘αž˜αŸ’αžšαž„αŸ‹ JSON αŸ” αž“αŸαŸ‡αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž€αžΆαžšαž’αŸ’αžœαžΎαž…αŸ†αžŽαžΆαž€αžŸαŸ’αžšαž»αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αž“αž»αžœαžαŸ’αžαž‘αžΆαŸ†αž„αž“αŸ…αž€αŸ’αž“αž»αž„αž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž“αž·αž„αžαžΆαž„αž€αŸ’αžšαŸ…αŸ” αž‡αžΆαž˜αž’αŸ’αž™αŸ„αž”αžΆαž™αž…αž»αž„αž€αŸ’αžšαŸ„αž™ αž’αŸ’αž“αž€αž’αžΆαž…αž€αŸ‚αžœαžΆαžŠαŸ„αž™αžŠαŸƒ (αž‡αžΆαž–αž·αžŸαŸαžŸαž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αŸ†αž‘αž»αž„αž–αŸαž›αž”αŸ†αž”αžΆαžαŸ‹αž€αŸ†αž αž»αžŸ);
  • αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž˜αž·αž“αž”αŸ’αžšαžΎαžˆαŸ’αž˜αŸ„αŸ‡αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‘αŸ αžŠαžΌαž…αŸ’αž“αŸαŸ‡αž“αŸ…αž–αŸαž›αžŽαžΆαž˜αž½αž™αžœαžΆαž’αžΆαž…αž‘αŸ…αžšαž½αž…αžŠαžΎαž˜αŸ’αž”αžΈαž‡αŸ†αž“αž½αžŸαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž˜αž½αž™αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžŠαŸ‚αž›αž…αžΌαž›αžšαž½αž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžˆαŸ’αž˜αŸ„αŸ‡αžαŸ’αž˜αžΈαž˜αž½αž™ (αž§αž‘αžΆαž αžšαžŽαŸ "InitialPlayerV2") αŸ” αž€αžΆαžšαž…αž„αž€αžΎαžαž‘αžΎαž„αžαžΆαž˜αžšαž™αŸˆαžŸαžΆαžšαž“αž·αž„αžˆαŸ’αž˜αŸ„αŸ‡αžŸαž‰αŸ’αž‰αžΆ;
  • αž‚αŸ†αžšαžΌαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž˜αžΆαž“αž›αŸαžαž€αŸ†αžŽαŸ‚ αžŠαŸ‚αž›αž™αžΎαž„αž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž’αŸ’αžœαžΎαž€αžΆαžšαž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž˜αž·αž“αžαŸ’αžšαžΌαžœαž‚αŸ’αž“αžΆαž…αŸ†αž–αŸ„αŸ‡αž˜αŸ‰αžΌαžŠαŸ‚αž›αž“αŸαŸ‡ αž αžΎαž™αž›αŸαžαž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αžšαž€αŸ’αžŸαžΆαž‘αž»αž€αžšαž½αž˜αž‡αžΆαž˜αž½αž™αž“αžΉαž„αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαŸ”
  • αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αžΆαž“αž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž‡αžΆαž˜αž»αž“αž‘αŸ…αž‡αžΆαž‚αŸ†αžšαžΌαžœαžαŸ’αžαž»αž„αžΆαž™αžŸαŸ’αžšαž½αž› αžŠαŸ‚αž›αž“αžΈαžαž·αžœαž·αž’αžΈαž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαž…αŸ†αžŽαžΆαž€αžŸαŸ’αžšαž»αž€αž’αžΆαž…αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž›αŸαžαž€αŸ†αžŽαŸ‚αž‚αŸ†αžšαžΌαž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαŸ”
  • αž“αžΈαžαž·αžœαž·αž’αžΈαž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαž…αŸ†αžŽαžΆαž€αžŸαŸ’αžšαž»αž€αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŠαžΆαž€αŸ‹αž“αŸ…αž‡αžΆαž”αŸ‹αž“αžΉαž„αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜ αž αžΎαž™αžαŸ’αžšαžΌαžœαž”αžΆαž“αž‚αŸαž αŸ…αžαžΆ "αžαŸ’αž‡αž·αž›" αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž§αž‘αžΆαž αžšαžŽαŸαž“αžΈαž˜αž½αž™αŸ—αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž“αŸ…αž–αŸαž›αž“αŸƒαž€αžΆαžšαžŸαŸ’αžαžΆαžšαž‘αžΎαž„αžœαž·αž‰αž–αžΈαž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ”
  • αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž’αŸ’αžœαžΎαž…αŸ†αžŽαžΆαž€αžŸαŸ’αžšαž»αž€αžŸαŸ’αžαžΆαž“αž—αžΆαž–αž“αŸƒαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž±αŸ’αž™αž”αžΆαž“αž›αžΏαž“ αž“αž·αž„αžŸαž˜αž€αžΆαž›αž€αž˜αŸ’αž˜ αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž’αŸ’αžœαžΎαž…αŸ†αžŽαžΆαž€αžŸαŸ’αžšαž»αž€αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž”αž»αžšαžΆαžŽαž€αžΆαž“αŸ‹αžαŸ‚αž…αŸ’αžšαžΎαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ’αžšαžΎ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™ JSON αŸ”

αžαžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‘αŸ?

αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžŠαŸ‚αž›αž”αžΆαž“αž–αž·αž–αžŽαŸŒαž“αžΆαž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αž”αžΆαž“αž’αž“αž»αž‰αŸ’αž‰αžΆαžαž±αŸ’αž™αž™αžΎαž„αž’αŸ’αžœαžΎαž±αŸ’αž™αž‡αžΈαžœαž·αžαžšαž”αžŸαŸ‹αž™αžΎαž„αž€αžΆαž“αŸ‹αžαŸ‚αž„αžΆαž™αžŸαŸ’αžšαž½αž› αž–αž„αŸ’αžšαžΈαž€αž‡αž½αžšαž“αŸƒαž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž€αž˜αŸ’αž˜αžœαž·αž’αžΈ αž“αž·αž„αž’αŸ’αžœαžΎαž±αŸ’αž™αž‚αŸ†αž“αž·αžαž“αŸƒαž€αžΆαžšαž”αŸ†αž”αŸ‚αž€αžαž€αŸ’αž€αžœαž·αž‡αŸ’αž‡αžΆαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‘αŸ…αž‡αžΆαž˜αžΈαž€αŸ’αžšαžΌαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž€αžΆαž“αŸ‹αžαŸ‚αž‘αžΆαž€αŸ‹αž‘αžΆαž‰αŸ” αžŠαžΎαž˜αŸ’αž”αžΈαžŸαž˜αŸ’αžšαŸαž…αž”αžΆαž“αž“αžΌαžœαž€αž·αž…αŸ’αž…αž€αžΆαžšαž“αŸαŸ‡ αž€αžΆαžšαž„αžΆαžšαž‡αžΆαž…αŸ’αžšαžΎαž“αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž‰αŸ’αž…αž”αŸ‹ αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒ "αžŸαŸ’αžšαžΆαž›" αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ’αž€αžΎαžαž‘αžΎαž„ αž€αŸαžŠαžΌαž…αž‡αžΆαž’αžΆαžαž»αž•αŸ’αžŸαŸ†αž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜ αžŠαžΎαž˜αŸ’αž”αžΈαžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž”αžΆαž“αž€αŸ†αžŽαžαŸ‹αž“αŸ…αž€αŸ’αž“αž»αž„αž”αžšαž·αž”αž‘αž“αŸƒαž”αž‰αŸ’αž αžΆαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž‡αžΆαž…αŸ’αžšαžΎαž“αŸ” αž™αžΎαž„β€‹αž˜αžΆαž“β€‹αž”αŸ†αžŽαž„β€‹αž…αž„αŸ‹β€‹αž…αŸ‚αž€β€‹αžšαŸ†αž›αŸ‚αž€β€‹αž›αž‘αŸ’αž’αž•αž›β€‹αž‘αžΆαŸ†αž„β€‹αž“αŸαŸ‡ αž“αž·αž„β€‹αž’αŸ’αžœαžΎβ€‹αž±αŸ’αž™β€‹αž€αžΆαžšβ€‹αž’αž—αž·αžœαžŒαŸ’αžβ€‹αžŸαž˜αžΆαžŸαž—αžΆαž‚β€‹αž‘αžΌαž‘αŸ…β€‹αž”αžΎαž€β€‹αž€αžΆαžšβ€‹αž…αžΌαž›β€‹αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹β€‹αž€αŸ’αžšαŸ„αž˜β€‹αž’αžΆαž‡αŸ’αž‰αžΆαž”αŸαžŽαŸ’αžŽβ€‹αžŠαŸ„αž™β€‹αž₯αžβ€‹αž‚αž·αžβ€‹αžαŸ’αž›αŸƒαŸ” αž“αŸαŸ‡αž“αžΉαž„αžαž˜αŸ’αžšαžΌαžœαž±αŸ’αž™αž˜αžΆαž“αž€αžΆαžšαžαž·αžαžαŸ†αž”αŸ’αžšαžΉαž„αž”αŸ’αžšαŸ‚αž„ αž“αž·αž„αž–αŸαž›αžœαŸαž›αžΆαž˜αž½αž™αž…αŸ†αž“αž½αž“αŸ” αž€αžΆαžšαž™αž›αŸ‹αžŠαžΉαž„αž’αŸ†αž–αžΈαžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ‚αž”αž“αŸαŸ‡αž’αžΆαž…αž‡αžΆαž€αžΆαžšαž›αžΎαž€αž‘αžΉαž€αž…αž·αžαŸ’αžαž”αž“αŸ’αžαŸ‚αž˜αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αž™αžΎαž„αŸ” αž“αŸ…αž€αŸ’αž“αž»αž„αž’αžαŸ’αžαž”αž‘αžŠαŸ‚αž›αž”αžΆαž“αžŸαŸ’αž“αžΎαž‘αžΎαž„ αž€αžΆαžšαž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αžαž·αž…αžαž½αž…αž”αŸ†αž•αž»αžαž‚αžΊαžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αž„αŸ‹αž‘αŸ…αž›αžΎαžŸαž˜αžαŸ’αžαž—αžΆαž–αž“αŸƒαž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαžαŸ’αž›αž½αž“αž―αž„ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž–αž½αž€αž‚αŸαž˜αž½αž™αž…αŸ†αž“αž½αž“αž’αžΆαž…αž˜αžΎαž›αžƒαžΎαž‰αž–αžΈαž§αž‘αžΆαž αžšαžŽαŸαžŠαŸ‚αž›αž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αŸ” αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž™αžΎαž„αž”αŸ„αŸ‡αž•αŸ’αžŸαžΆαž™αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαžšαž”αžŸαŸ‹αž™αžΎαž„ αž’αžαŸ’αžαž”αž‘αžŠαžΆαž…αŸ‹αžŠαŸ„αž™αž‘αŸ‚αž€αž˜αž½αž™αž“αžΉαž„αžαŸ’αžšαžΌαžœαž”αžΆαž“αž§αž‘αŸ’αž‘αž·αžŸαžŠαž›αŸ‹αžœαžΆαŸ” αž€αŸ’αž“αž»αž„αž–αŸαž›αž“αŸαŸ‡ αž™αžΎαž„αž“αžΉαž„αžŠαžΉαž„αž‚αž»αžŽαž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž”αž‰αŸ’αž…αŸαž‰αž˜αžαž·αž€αŸ‚αž›αž˜αŸ’αž’αž”αž“αŸ’αžαž·αž…αž”αž“αŸ’αžαž½αž…αžŠαŸ„αž™αž†αŸ’αž›αžΎαž™αžŸαŸ†αžŽαž½αžšαŸ–

αž˜αžΆαž“αžαŸ‚αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ‚αž›αž”αžΆαž“αž…αž»αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡αžŠαŸ‚αž›αž’αžΆαž…αž…αžΌαž›αžšαž½αž˜αž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸ’αž‘αž„αŸ‹αž˜αžαž·αž“αŸαŸ‡αŸ” αž…αžΌαž›αžŸαžΌαž˜αŸ”

αžαžΎαž’αŸ’αž“αž€αžαŸ’αžšαžΌαžœαž€αžΆαžšαž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαž•αŸ’αžŸαŸαž„αž‘αŸ€αžαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž’αžΆαž‡αžΈαžœαž€αž˜αŸ’αž˜αž‘αŸ?

  • 18,8%αž”αžΆαž‘ αžαŸ’αž‰αž»αŸ†β€‹αž”αžΆαž“β€‹αžŸαŸ’αžœαŸ‚αž„β€‹αžšαž€β€‹αž’αŸ’αžœαžΈβ€‹αž˜αž½αž™β€‹αž”αŸ‚αž”β€‹αž“αŸαŸ‡β€‹αž‡αžΆβ€‹αž™αžΌαžšβ€‹αž˜αž€β€‹αž αžΎαž™αŸ”

  • 12,5%αžαŸ’αž‰αž»αŸ†αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαžŸαŸ’αžœαŸ‚αž„αž™αž›αŸ‹αž”αž“αŸ’αžαŸ‚αž˜αž’αŸ†αž–αžΈαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ αžœαžΆαž’αžΆαž…αž˜αžΆαž“αž”αŸ’αžšαž™αŸ„αž‡αž“αŸ2

  • 6,2%αž™αžΎαž„αž”αŸ’αžšαžΎαž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒαžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αž˜αž½αž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž€αŸ†αž–αž»αž„αž‚αž·αžαž’αŸ†αž–αžΈαž€αžΆαžšαž‡αŸ†αž“αž½αžŸ 1

  • 18,8%αž™αžΎαž„αž”αŸ’αžšαžΎαž€αŸ’αžšαž”αžαžŽαŸ’αžŒαžŠαŸ‚αž›αž˜αžΆαž“αžŸαŸ’αžšαžΆαž”αŸ‹αž˜αž½αž™ αž’αŸ’αžœαžΈαŸ—αž‚αžΊαž›αŸ’αž’ ៣

  • 18,8%αž™αžΎαž„αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αžŠαŸ„αž™αž‚αŸ’αž˜αžΆαž“αž€αŸ’αžšαž”αžαŸαžŽαŸ’αžŒ ៣

  • 25,0%αžŸαžšαžŸαŸαžšαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€ 4

αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ 16 αž“αžΆαž€αŸ‹αž”αžΆαž“αž”αŸ„αŸ‡αž†αŸ’αž“αŸ„αžαŸ” αž’αŸ’αž“αž€αž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ ៑ៀ αž“αžΆαž€αŸ‹αžαŸ’αžšαžΌαžœαž”αžΆαž“αž αžΆαž˜αžƒαžΆαžαŸ‹αŸ”

αž”αŸ’αžšαž—αž–: www.habr.com

αž”αž“αŸ’αžαŸ‚αž˜αž˜αžαž·αž™αŸ„αž”αž›αŸ‹