เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบกเบ™เบตเป‰, เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเบˆเบฐเบชเบปเบ™เบ—เบฐเบ™เบฒเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเป‚เบ„เบ‡เบเบฒเบ™เบ—เบตเปˆเบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบŠเบธเบ”เบ‚เบญเบ‡ microservices.

เป‚เบ„เบ‡โ€‹เบเบฒเบ™โ€‹เบ”เบฑเปˆเบ‡โ€‹เบเปˆเบฒเบงโ€‹เป„เบ”เป‰โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบ›เบฐโ€‹เบซเบงเบฑเบ”โ€‹เบชเบฒเบ”โ€‹เบ‚เบญเบ‡โ€‹เบ•เบปเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เป€เบงโ€‹เบฅเบฒโ€‹เบ”เบปเบ™โ€‹เบ™เบฒเบ™โ€‹เบเปˆเบญเบ™โ€‹เบซเบ™เป‰เบฒโ€‹เบ™เบตเป‰โ€‹, เปƒเบ™โ€‹เบ•เบปเป‰เบ™โ€‹เบ›เบต 2000โ€‹. เบชเบฐโ€‹เบšเบฑเบšโ€‹เบ—เปเบฒโ€‹เบญเบดเบ”โ€‹เป„เบ”เป‰โ€‹เบ–เบทเบโ€‹เบ‚เบฝเบ™โ€‹เปƒเบ™ Visual Basic 6โ€‹. เป€เบกเบทเปˆเบญโ€‹เป€เบงโ€‹เบฅเบฒโ€‹, เบกเบฑเบ™โ€‹เป„เบ”เป‰โ€‹เบเบฒเบโ€‹เป€เบ›เบฑเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เปเบˆเป‰เบ‡โ€‹เบงเปˆเบฒโ€‹เบเบฒเบ™โ€‹เบžเบฑเบ”โ€‹เบ—เบฐโ€‹เบ™เบฒโ€‹เปƒเบ™โ€‹เบžเบฒโ€‹เบชเบฒโ€‹เบ™เบตเป‰โ€‹เบˆเบฐโ€‹เป€เบ›เบฑเบ™โ€‹เบเบฒเบ™โ€‹เบเบฒเบโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบชเบฐโ€‹เบซเบ™เบฑเบšโ€‹เบชเบฐโ€‹เบซเบ™เบนเบ™โ€‹เปƒเบ™โ€‹เบญเบฐโ€‹เบ™เบฒโ€‹เบ„เบปเบ”โ€‹, เบ™เบฑเบšโ€‹เบ•เบฑเป‰เบ‡โ€‹เปเบ•เปˆ IDE เป„เบ”เป‰โ€‹. เปเบฅเบฐโ€‹เบžเบฒโ€‹เบชเบฒโ€‹เบ•เบปเบงโ€‹เบกเบฑเบ™โ€‹เป€เบญเบ‡โ€‹เบžเบฑเบ”โ€‹เบ—เบฐโ€‹เบ™เบฒโ€‹เบšเปเปˆโ€‹เบ”เบตโ€‹. เปƒเบ™เบ•เบญเบ™เบ—เป‰เบฒเบเบ‚เบญเบ‡ 2000s, เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบˆเบฐเบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆ C # เบ—เบตเปˆเบกเบตเบ—เปˆเบฒเปเบฎเบ‡เบซเบผเบฒเบ. เบชเบฐเบšเบฑเบšเปƒเบซเบกเปˆเป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เปƒเบ™เบ‚เบฐเบซเบ™เบฒเบ™เบเบฑเบšเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบชเบฐเบšเบฑเบšเป€เบเบปเปˆเบฒ, เบ„เปˆเบญเบเป†เบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบซเบผเบฒเบเบ‚เบทเป‰เบ™เปƒเบ™ .NET. Backend เปƒเบ™ C# เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เป„เบ”เป‰เบชเบธเบกเปƒเบชเปˆเบเบฒเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เปเบ•เปˆเปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ, เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบ—เบปเปˆเบงเป„เบ›เบ—เบตเปˆเบกเบตเป€เบซเบ”เบœเบปเบ™เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰, เปเบฅเบฐเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป„เบ”เป‰เบ–เบทเบเป€เบ›เบตเบ”เบ•เบปเบงเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฝเบง. เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบกเปˆเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเป€เบญเบตเป‰เบ™เบงเปˆเบฒ "เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ monolith."

เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ‚เปเป‰เป„เบ”เป‰เบ›เบฝเบšเบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบ„เบงเบฒเบกเบชเบฒเบกเบฒเบ”เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบˆเบฐเป‚เบ—เบซเบฒเบเบฑเบ™เปเบฅเบฐเบเบฑเบ™เป‚เบ”เบเบœเปˆเบฒเบ™ API เบžเบฒเบเบ™เบญเบ. เบกเบตเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบ—เบตเปˆเบŠเบฑเบ”เป€เบˆเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡เบเบงเปˆเบฒ, เปเบฅเบฐเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”, เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบˆเบธเบฅเบฐเบžเบฒเบ.

เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบงเบฝเบโ€‹เบ‡เบฒเบ™โ€‹เบ‚เบญเบ‡โ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เป€เบชเบทเปˆเบญเบกโ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เปƒเบ™โ€‹เบ›เบฐโ€‹เบกเบฒเบ™ 2015โ€‹. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบšเบฑเบ™เบฅเบธเบชเบฐเบžเบฒเบšเบ—เบตเปˆเป€เบซเบกเบฒเบฐเบชเบปเบก - เบเบฑเบ‡เบกเบตเบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ—เบตเปˆเป€เบเบทเบญเบšเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบญเบตเป‰เบ™เบงเปˆเบฒ monoliths, เปเบ•เปˆเบžเบงเบเบกเบฑเบ™เบšเปเปˆเบ„เป‰เบฒเบเบ„เบทเบเบฑเบš microservices. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบ„เบงเบฒเบกเบเป‰เบฒเบงเบซเบ™เป‰เบฒเปเบกเปˆเบ™เบชเปเบฒเบ„เบฑเบ™.
เบ‚เป‰เบญเบเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เปƒเบ™เบšเบปเบ”เบ„เบงเบฒเบก.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เป€เบ™เบทเป‰เบญเปƒเบ™

เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเปเบฅเบฐเบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง


เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเป€เบšเบดเปˆเบ‡เบ„เบทเบ”เบฑเปˆเบ‡เบ™เบตเป‰: UI เป€เบ›เบฑเบ™เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบชเปˆเบงเบ™ monolithic เปเบกเปˆเบ™เบฅเบฒเบเบฅเบฑเบเบญเบฑเบเบชเบญเบ™เปƒเบ™ Visual Basic 6, เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ .NET เปเบกเปˆเบ™เบŠเบธเบ”เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบžเปเบชเบปเบกเบ„เบงเบ™.

เบ‚เปเป‰เป€เบชเบเบ‚เบญเบ‡เบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบœเปˆเบฒเบ™เบกเบฒ

เบˆเบธเบ”เบ”เบฝเบงเบ‚เบญเบ‡เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบง
เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบˆเบธเบ”เบ”เบฝเบงเบ‚เบญเบ‡เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบง: เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ .NET เปเบฅเปˆเบ™เบขเบนเปˆเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฝเบง. เบ–เป‰เบฒเป‚เบกเบ”เบนเบ™เปƒเบ”เบฅเบปเป‰เบกเป€เบซเบฅเบง, เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบฅเบปเป‰เบกเป€เบซเบฅเบงเปเบฅเบฐเบ•เป‰เบญเบ‡เบ–เบทเบเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เปƒเบซเบกเปˆ. เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบžเบงเบเป€เบฎเบปเบฒเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบฅเบงเปƒเบ™เบซเบ™เบถเปˆเบ‡เปƒเบ™เบ™เบฑเป‰เบ™, เบ—เบธเบเบ„เบปเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เป€เบงเบฅเบฒ. เปเบฅเบฐเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบ„เบงเบฒเบกเบœเบดเบ”เบžเบฒเบ”เบ‚เบญเบ‡เบŠเบญเบšเปเบง, เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบเบฒเบ™เบชเปเบฒเบฎเบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบšเปเปˆเป„เบ”เป‰เบŠเปˆเบงเบ.

เปเบ–เบงเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡
เบ‚เปเป‰เบšเบปเบเบœเปˆเบญเบ‡เบ™เบตเป‰เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เป€เบ›เบฑเบ™เบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡. เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบฅเบนเบเบ„เป‰เบฒเบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบ, เปเบฅเบฐเบžเบงเบเป€เบ‚เบปเบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบกเบฑเบ™เป„เบงเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰. เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เปเบ™เบงเบ™เบตเป‰เปเบšเบšเบ‚เบฐเบซเบ™เบฒเบ™, เปเบฅเบฐเบฅเบนเบเบ„เป‰เบฒเบ—เบฑเบ‡เบซเบกเบปเบ”เบขเบทเบ™เบขเบนเปˆเปƒเบ™เปเบ–เบง. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบšเปเปˆเบ”เบตเบชเปเบฒเบฅเบฑเบšเบ—เบธเบฅเบฐเบเบดเบ”เบเป‰เบญเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบ•เป‰เบญเบ‡เบžเบดเบชเบนเบ”เบงเปˆเบฒเบงเบฝเบเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบกเบตเบ„เบธเบ™เบ„เปˆเบฒ. เปเบฅเบฐเบ—เบตเบกเบ‡เบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบ”เป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เปเบ–เบงเบ™เบตเป‰. เบ™เบตเป‰เปƒเบŠเป‰เป€เบงเบฅเบฒเบซเบผเบฒเบเปเบฅเบฐเบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบก, เปเบฅเบฐเบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบชเบธเบ”เบ—เป‰เบฒเบเบšเปเปˆเบชเบฒเบกเบฒเบ”เบ›เปˆเบฝเบ™เปเบ›เบ‡เป„เบ”เป‰เป„เบงเป€เบ—เบปเปˆเบฒเบ—เบตเปˆเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเบกเบฑเบ.

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™เบ—เบตเปˆเป€เปเบฒเบฐเบชเบปเบกเบ—เบตเปˆเบชเบธเบ”
เป€เบกเบทเปˆเบญเบšเปเบฅเบดเบเบฒเบ™เป‚เบฎเบ”เบ•เบดเป‰เบ‡เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฝเบง, เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบตเบ„เบฑเบ”เบฅเบญเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบงเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เป‚เบซเบผเบ”เปœเบฑเบเบ—เบตเปˆเบชเบธเบ”เปเบเบเบเบฑเบ™เป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เป€เบชเบเบŠเบฑเบšเบžเบฐเบเบฒเบเบญเบ™ เปเบฅเบฐ เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบ„เบงเบšเบ„เบธเบกเบ—เบตเปˆเบเบทเบ”เบซเบเบธเปˆเบ™เบซเบผเบฒเบเบ‚เบถเป‰เบ™เบ•เปเปˆเบเบฑเบšเบฅเบฐเบšเบปเบšเบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ.

เบเบฒเบเบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบก
เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบ„เบธเป‰เบ™เป€เบ„เบตเบเบเบฑเบšเบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ—เบฑเบ‡เบซเบกเบปเบ”: เบกเบตเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐเบ™เปเบฒเบชเบฐเป€เบซเบ™เบตเป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบ—เบตเปˆเบ—เบฑเบ™เบชเบฐเป„เบซเบกเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เป‚เบ„เบ‡เบเบฒเบ™, เปเบ•เปˆเบšเปเปˆเบกเบตเป‚เบญเบเบฒเบ”. เบ”เป‰เบงเบเบเบฒเบ™เปเบเป‰เป„เบ‚เปเบšเบš monolithic เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เปƒเบ”เป†เบ‚เบญเบ‡เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™, เบšเปเปˆเปƒเบซเป‰เป€เบงเบปเป‰เบฒเป€เบ–เบดเบ‡เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เป„เบ›เบชเบนเปˆเบญเบฑเบ™เปƒเบซเบกเปˆ, เบเบฒเบเป€เบ›เบฑเบ™เบงเบฝเบเบ‡เบฒเบ™เบ—เบตเปˆเบšเปเปˆเปเบกเปˆเบ™เป€เบฅเบทเปˆเบญเบ‡เป€เบฅเบฑเบเบ™เป‰เบญเบ. เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบ”เบปเบ™เป€เบžเบทเปˆเบญเบžเบดเบชเบนเบ”เปƒเบซเป‰เบœเบนเป‰เบ™เปเบฒเบ—เบตเบกเบฎเบนเป‰เบงเปˆเบฒเบ™เบตเป‰เบˆเบฐเบ™เปเบฒเป€เบญเบปเบฒเป€เบ‡เบดเบ™เป‚เบšเบ™เบฑเบ”เบซเบผเบฒเบเบเบงเปˆเบฒเป€เบชเบฑเป‰เบ™เบ›เบฐเบชเบฒเบ”เบ—เบตเปˆเป€เบชเบเป„เบ›.

เบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบญเบญเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡
เบ™เบตเป‰เปเบกเปˆเบ™เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เบ—เบตเปˆเบชเบธเบ” - เบžเบงเบเป€เบฎเบปเบฒเบญเบญเบเบเบฒเบ™เบ›เปˆเบญเบเบ‚เปˆเบฒเบงเบ—เบธเบเป†เบชเบญเบ‡เป€เบ”เบทเบญเบ™.
เบเบฒเบ™เบ›เปˆเบญเบเบ•เบปเบงเปเบ•เปˆเบฅเบฐเบ„เบปเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เป„เบžเบžเบดเบšเบฑเบ”เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบชเปเบฒเบฅเบฑเบšเบ—เบฐเบ™เบฒเบ„เบฒเบ™, เป€เบ–เบดเบ‡เบงเปˆเบฒเบˆเบฐเบกเบตเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบฅเบฐเบ„เบงเบฒเบกเบžเบฐเบเบฒเบเบฒเบกเบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ. เบ—เบธเบฅเบฐเบเบดเบ”เป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเปƒเบ™เบ•เบญเบ™เบ•เบปเป‰เบ™เบ‚เบญเบ‡เบญเบฒเบ—เบดเบ”เบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบ‚เบญเบ‡เบกเบฑเบ™เบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบ. เปเบฅเบฐเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบซเบ™เบถเปˆเบ‡เบญเบฒเบ—เบดเบ”เบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™เบฎเป‰เบฒเบเปเบฎเบ‡เบฅเปเบ–เป‰เบฒเบžเบงเบเป€เบ‚เบปเบฒ.
เบšเบธเบเบ„เบปเบ™เบ—เบธเบเบ„เบปเบ™เบกเบตเบ„เบงเบฒเบกเบ›เบฒเบ–เบฐเบซเบ™เบฒเบ—เบตเปˆเบˆเบฐเบ›เปˆเบฝเบ™เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™.

เบ„เบงเบฒเบกเบ„เบฒเบ”เบซเบงเบฑเบ‡เบˆเบฒเบเบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบ


เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบก. เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบญเบปเบ‡เบ›เบฐเบเบญเบšเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเป‚เบ”เบเบเบฒเบ™เบ—เปเบฒเบฅเบฒเบเบเบฒเบ™เปเบเป‰เป„เบ‚เปเบฅเบฐเบเบฒเบ™เปเบเบเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™.

เบ—เบตเบกเบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบชเปเบฒเบ„เบฑเบ™เป€เบžเบฒเบฐเบงเปˆเบฒเบ—เบตเบกเบ‡เบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™ monolith เป€เบเบปเปˆเบฒเบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเปƒเบ™เบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡. เบ—เบตเบกเบ‡เบฒเบ™เบ”เบฑเปˆเบ‡เบเปˆเบฒเบงเบ–เบทเบเบšเบฑเบ‡เบ„เบฑเบšเปƒเบซเป‰เป€เบฎเบฑเบ”เบงเบฝเบเบ•เบฒเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเป€เบ„เบฑเปˆเบ‡เบ„เบฑเบ”, เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ„เบงเบฒเบกเบ„เบดเบ”เบชเป‰เบฒเบ‡เบชเบฑเบ™เปเบฅเบฐเบ„เบงเบฒเบกเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบซเบผเบฒเบเบ‚เบถเป‰เบ™. เบกเบตเบžเบฝเบ‡เปเบ•เปˆเบ—เบตเบกเบ‡เบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบชเบฒเบกเบฒเบ”เบˆเปˆเบฒเบเป„เบ”เป‰.

เบเบฒเบ™เปเบเบเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เป‚เบ”เบเบซเบฅเบฑเบเบเบฒเบ™เปเบฅเป‰เบง, เบ‚เป‰เบญเบเบ•เป‰เบญเบ‡เบเบฒเบ™เปเบเบเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบเปˆเบญเบ‡เบšเบฑเบ™เบˆเบธ, เปเบ•เปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบ—เบตเปˆเบ‚เบฝเบ™เป„เบงเป‰เปƒเบ™ .NET Framework เป€เบฎเบฑเบ”เบงเบฝเบเบขเบนเปˆเปƒเบ™ Windows เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบญเบตเบ‡เปƒเบชเปˆ .NET Core เบเปเบฒเบฅเบฑเบ‡เบ›เบฐเบเบปเบ”เบ•เบปเบงเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™, เปเบ•เปˆเบกเบตเบˆเปเบฒเบ™เบงเบ™เบซเบ™เป‰เบญเบเบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ.

เบ„เบงเบฒเบกเบเบทเบ”เบซเบเบธเปˆเบ™เบ‚เบญเบ‡เบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบฅเบงเบกเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เบฒเบกเบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เบงเบดเบ—เบตเบ—เบตเปˆเบฅเบฐเบซเบฑเบ”เบšเบฑเบ‡เบ„เบฑเบšเบกเบฑเบ™.

เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เป€เบ•เบฑเบโ€‹เป‚เบ™โ€‹เป‚เบฅโ€‹เบŠเบตโ€‹เปƒเบซเบกเปˆโ€‹. เบ™เบตเป‰เปเบกเปˆเบ™เบซเบ™เป‰เบฒเบชเบปเบ™เปƒเบˆเบเบฑเบšเบ™เบฑเบเบ‚เบฝเบ™เป‚เบ›เบผเปเบเบผเบกเปƒเบ”เป†.

เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™


เปเบ™เปˆเบ™เบญเบ™, เบ–เป‰เบฒเบกเบฑเบ™เบ‡เปˆเบฒเบเบ—เบตเปˆเบˆเบฐเบ—เปเบฒเบฅเบฒเบ monolith เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ microservices, เบกเบฑเบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเบกเบฑเบ™เบขเบนเปˆเปƒเบ™เบเบญเบ‡เบ›เบฐเบŠเบธเบกเปเบฅเบฐเบ‚เบฝเบ™เบšเบปเบ”เบ„เบงเบฒเบก. เบกเบตโ€‹เบญเบธโ€‹เบ›เบฐโ€‹เบชเบฑเบโ€‹เบซเบผเบฒเบโ€‹เบขเปˆเบฒเบ‡โ€‹เปƒเบ™โ€‹เบ‚เบฐโ€‹เบšเบงเบ™โ€‹เบเบฒเบ™โ€‹เบ™เบตเป‰, เบ‚เป‰เบฒโ€‹เบžเบฐโ€‹เป€เบˆเบปเป‰เบฒโ€‹เบˆเบฐโ€‹เบญเบฐโ€‹เบ—เบดโ€‹เบšเบฒเบโ€‹เบšเบฑเบ™โ€‹เบ”เบฒโ€‹เบ•เบปเป‰เบ™โ€‹เบ•เปโ€‹เบ—เบตเปˆโ€‹เบเบตเบ”โ€‹เบ‚เบงเบฒเบ‡โ€‹เบžเบงเบโ€‹เป€เบฎเบปเบฒ.

เบ›เบฑเบ™เบซเบฒ เบ—เบณ เบญเบดเบ” เบ›เบปเบเบเบฐเบ•เบดเบชเปเบฒเบฅเบฑเบš monoliths เบชเปˆเบงเบ™เปƒเบซเบเปˆ: เบ„เบงเบฒเบกเบชเบญเบ”เบ„เปˆเบญเบ‡เบ‚เบญเบ‡เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”. เป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเบ‚เบฝเบ™ monolith, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบŠเป‰เบซเป‰เบญเบ‡เบฎเบฝเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ„เบทเบ™เปƒเบซเบกเปˆเป€เบžเบทเปˆเบญเบšเปเปˆเปƒเบซเป‰เบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™. เปเบฅเบฐเปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเป‰เบฒเบเป„เบ› microservices, เบ™เบตเป‰เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบšเบฑเบ™เบซเบฒ: เบฅเบฐเบซเบฑเบ”เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เปเบซเบ™เป‰เบ™, เปเบฅเบฐเบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเปเบเบเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™.

เปƒเบ™เป€เบงเบฅเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ, repository เบกเบตเบซเบผเบฒเบเบเปˆเบงเบฒ 500 เป‚เบ„เบ‡เบเบฒเบ™เปเบฅเบฐเบซเบผเบฒเบเบเปˆเบงเบฒ 700 เบžเบฑเบ™เบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบชเบฒเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบ—เบตเปˆเบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เปƒเบซเบเปˆเปเบฅเบฐ เบšเบฑเบ™เบซเบฒเบ—เบตเบชเบญเบ‡. เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เบšเปเปˆเป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบžเบฝเบ‡เปเบ•เปˆเป€เบญเบปเบฒเบกเบฑเบ™เปเบฅเบฐเปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™ microservices.

เบšเบฑเบ™เบซเบฒเบ—เบตเบชเบฒเบก โ€” เบ‚เบฒเบ”โ€‹เป‚เบ„เบ‡โ€‹เบฅเปˆเบฒเบ‡โ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบˆเปเบฒโ€‹เป€เบ›เบฑเบ™โ€‹. เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ„เบฑเบ”เบฅเบญเบเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡.

เบงเบดเบ—เบตเบเบฒเบ™เบเป‰เบฒเบเบˆเบฒเบ monolith เป„เบ›เบซเบฒ microservices


เบเบฒเบ™เบชเบฐเปœเบญเบ‡เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบ

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒ เบเบณ เบ™เบปเบ”เบ•เบปเบงเป€เบฎเบปเบฒเป€เบญเบ‡เบ—เบฑเบ™เบ—เบตเบงเปˆเบฒเบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ‚เบญเบ‡ microservices เปเบกเปˆเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเบŠเป‰เปเบฒเบเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบชเบฐเป€เบซเบกเบตเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบžเบทเปˆเบญเบžเบฑเบ”เบ—เบฐเบ™เบฒเบšเบฑเบ™เบซเบฒเบ—เบธเบฅเบฐเบเบดเบ”เบ‚เบฐเบซเบ™เบฒเบ™. เบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบšเบฑเบ™เบซเบฒเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบฅเป‰เบง. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบเบฐเบเบฝเบกเบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบŠเป‰เปเบฒเบŠเป‰เบญเบ™. เบกเบฑเบ™เบˆเบฐเบšเปเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบ—เบฒเบ‡เบญเบทเปˆเบ™เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเปเบฅเบฐเบกเบฑเบ™เบšเปเปˆเบžเป‰เบญเบกเบ—เบตเปˆเบˆเบฐเบ‚เบฝเบ™เปƒเบซเบกเปˆเปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™.

เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เปƒเบ”เปเบ”เปˆเป€เบžเบทเปˆเบญเปเบเบเบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบ?

เบงเบดเบ—เบตเบ—เปเบฒเบญเบดเบ” โ€” เบเป‰เบฒเบเป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™. เปƒเบ™เป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเป‚เบŠเบเบ”เบต: เบกเบตเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบฅเบปเบ‡เบ—เบฐเบšเบฝเบ™เปเบฅเป‰เบงเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป‚เบ”เบเปƒเบŠเป‰เป‚เบ›เป‚เบ•เบ„เบญเบ™ WCF. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเป„เบ”เป‰เบ–เบทเบเปเบเบเบญเบญเบเป€เบ›เบฑเบ™เบชเบฐเบžเบฒเปเบซเปˆเบ‡เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบžเบงเบเป€เบฎเบปเบฒ ported เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เป€เบžเบตเปˆเบก launcher เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเปƒเบ™เปเบ•เปˆเบฅเบฐเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡. เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ‚เบฝเบ™เป‚เบ”เบเปƒเบŠเป‰เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Topshelf เบ—เบตเปˆเบ›เบฐเป€เบชเบตเบ”, เป€เบŠเบดเปˆเบ‡เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เป„เบ”เป‰เบ—เบฑเบ‡เป€เบ›เบฑเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบฅเบฐเป€เบ›เบฑเบ™ console. เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบ”เบงเบเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ debugging เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบšเปเปˆเบกเบตเป‚เบ„เบ‡เบเบฒเบ™เป€เบžเบตเปˆเบกเป€เบ•เบตเบกเบ—เบตเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚.

เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป„เบ”เป‰เบ–เบทเบเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ•เบฒเบกเป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”, เบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบžเบงเบเป€เบ‚เบปเบฒเปƒเบŠเป‰เบชเบฐเบžเบฒเปเบซเปˆเบ‡เบ—เบปเปˆเบงเป„เบ›เปเบฅเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบปเปˆเบงเป„เบ›. เบžเบงเบเป€เบ‚เบปเบฒเป€เบเบทเบญเบšเบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบญเบตเป‰เบ™เบงเปˆเบฒเบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเปƒเบ™เบฎเบนเบšเปเบšเบšเบšเปเบฅเบดเบชเบธเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒ. เบขเปˆเบฒเบ‡เปƒเบ”เบเปเบ•เบฒเบก, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบญเบฑเบ™เบ”เบฝเบงเบ™เบตเป‰เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบซเบผเบธเบ”เบœเปˆเบญเบ™เบญเบดเบ”เบ—เบดเบžเบปเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบ•เปเปˆเบเบฑเบ™เปเบฅเบฐเบเบฑเบ™, เบซเบผเบธเบ”เบœเปˆเบญเบ™เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบกเบตเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบฐเบซเบ™เบฒเบ™เปเบฅเบฐเบˆเบธเบ”เบ”เบฝเบงเบ‚เบญเบ‡เบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบง.

เบเบฒเบ™เบ›เบฐเบŠเบธเบกเบเบฑเบšเป‚เบฎเบ”เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เป€เบชเบฑเป‰เบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เปƒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™ Program. เบžเบงเบเป€เบฎเบปเบฒเป€เบŠเบทเปˆเบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš Topshelf เปƒเบ™เบซเป‰เบญเบ‡เบฎเบฝเบ™เบŠเปˆเบงเบ.

namespace RBA.Services.Accounts.Host
{
   internal class Program
   {
      private static void Main(string[] args)
      {
        HostRunner<Accounts>.Run("RBA.Services.Accounts.Host");

       }
    }
}

เบงเบดเบ—เบตเบ—เบตเบชเบญเบ‡เปƒเบ™เบเบฒเบ™เบˆเบฑเบ”เบชเบฑเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเปเบกเปˆเบ™: เบชเป‰เบฒเบ‡เปƒเบซเป‰เป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเปƒเบซเบกเปˆ. เบ–เป‰เบฒเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™ monolith เบšเปเปˆเป€เบ•เบตเบšเป‚เบ•, เบ™เบตเป‰เปเบกเปˆเบ™เบ”เบตเป€เบฅเบตเบ”เปเบฅเป‰เบง, เบŠเบถเปˆเบ‡เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบเป‰เบฒเบงเป„เบ›เปƒเบ™เบ—เบดเบ”เบ—เบฒเบ‡เบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡. เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเปƒเบซเบกเปˆ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบžเบฐเบเบฒเบเบฒเบกเบชเป‰เบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบ–เป‰เบฒเบกเบตเป‚เบญเบเบฒเบ”เบ”เบฑเปˆเบ‡เบเปˆเบฒเบง, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™ "canonical" เบซเบผเบฒเบเบ‚เบถเป‰เบ™เบ—เบตเปˆเบˆเบฑเบ”เบเบฒเบ™เบฎเบนเบšเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™, เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เบžเบงเบเป€เบฎเบปเบฒ, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบšเบซเบผเบฒเบเป†เบ„เบปเบ™, เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เปเบฅเบฐเบเบฒเบ™เบญเบฐเบ™เบธเบเบฒเบ”. เบžเบงเบเป€เบ‚เบปเบฒเป€เบˆเบปเป‰เบฒเปเบกเปˆเบ™เบ”เบตเป€เบฅเบตเบ”เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ™เบตเป‰. เบžเบงเบเป€เบ‚เบปเบฒเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”, เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบš, เบžเบงเบเป€เบ‚เบปเบฒเบกเบตเบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบžเบงเบเป€เบ‚เบปเบฒเป€เบญเบ‡เบšเปเปˆเป„เบ”เป‰เบžเบปเบงเบžเบฑเบ™เบเบฑเบš monolith, เบžเบฝเบ‡เปเบ•เปˆเบกเบฑเบ™เบซเบฑเบ™เป„เบ›เบซเบฒเบžเบงเบเป€เบ‚เบปเบฒเป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบเบฒเบ™โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบšเปโ€‹เบฅเบดโ€‹เบเบฒเบ™โ€‹เป€เบซเบผเบปเปˆเบฒโ€‹เบ™เบตเป‰โ€‹, เบ—เปˆเบฒเบ™โ€‹เบชเบฒโ€‹เบกเบฒเบ”โ€‹เป€เบฅเบตเปˆเบกโ€‹เบ•เบปเป‰เบ™โ€‹เบเบฒเบ™โ€‹เบซเบฑเบ™โ€‹เบ›เปˆเบฝเบ™โ€‹เป€เบ›เบฑเบ™โ€‹เบชเบฐโ€‹เบ–เบฒโ€‹เบ›เบฑเบ”โ€‹เบ•เบฐโ€‹เบเบฐโ€‹เปƒเบซเบกเปˆโ€‹, เปเบเป‰โ€‹เป„เบ‚โ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เป‚เบ„เบ‡โ€‹เบฅเปˆเบฒเบ‡โ€‹เบ‚เบญเบ‡โ€‹เป€เบ‚เบปเบฒโ€‹เป€เบˆเบปเป‰เบฒโ€‹, เบžเบฐโ€‹เบเบฒโ€‹เบเบฒเบกโ€‹เบšเบฒเบ‡โ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบเปˆเบฝเบงโ€‹เบเบฑเบšโ€‹เบซเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบธเบ”โ€‹เป€เบ„เบทเบญโ€‹เบ‚เปˆเบฒเบโ€‹, เปเบฅเบฐโ€‹เบญเบทเปˆเบ™เป†โ€‹. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบกเบตเบ—เบตเบกเปƒเบ”เปƒเบ™เบญเบปเบ‡เบเบญเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบšเปเปˆเบชเบฒเบกเบฒเบ”เบชเป‰เบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบขเบฑเป‰เบ‡เบขเบทเบ™เป„เบ”เป‰.

เบงเบดเบ—เบตเบ—เบตเบชเบฒเบกเป€เบžเบทเปˆเบญเบˆเบฑเบ”เบชเบฑเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเบญเบฑเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เปเบกเปˆเบ™เบชเบฐเป€เบžเบฒเบฐเบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบฑเบเบ™เป‰เบญเบ. เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบเปเบฒเบˆเบฑเบ”เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบญเบญเบเบˆเบฒเบเบŠเบฑเป‰เบ™ UI. เบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ UI เบ•เบปเป‰เบ™เบ•เปเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเปเบกเปˆเบ™ desktop; เบกเบฑเบ™, เป€เบŠเบฑเปˆเบ™ backend, เปเบกเปˆเบ™เบ‚เบฝเบ™เปƒเบ™ C#. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเป„เบ”เป‰เป€เบฎเบฑเบ”เบœเบดเบ”เบžเบฒเบ”เป€เบ›เบฑเบ™เป„เบฅเบเบฐเป† เปเบฅเบฐเป‚เบญเบ™เบžเบฒเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เป€เบซเบ”เบœเบปเบ™เป„เบ›เบซเบฒ UI เบ—เบตเปˆเบ„เบงเบ™เบˆเบฐเบกเบตเบขเบนเปˆเปƒเบ™ backend เปเบฅเบฐเบ–เบทเบเบ™เปเบฒเบกเบฒเปƒเบŠเป‰เบ„เบทเบ™.

เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบšเบดเปˆเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบˆเบฒเบเบฅเบฐเบซเบฑเบ”เบ‚เบญเบ‡เบชเปˆเบงเบ™ UI, เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบซเบฑเบ™เป„เบ”เป‰เบงเปˆเบฒเบเบฒเบ™เปเบเป‰เป„เบ‚เบ™เบตเป‰เบชเปˆเบงเบ™เปƒเบซเบเปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบเป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เบ—เบตเปˆเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบญเบทเปˆเบ™เป†, เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบชเป‰เบฒเบ‡เปเบšเบšเบŸเบญเบก UI เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เป€เบซเบ”เบœเบปเบ™ UI เบ—เบตเปˆเปเบ—เป‰เบˆเบดเบ‡เปเบกเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบกเบตเบขเบนเปˆเปƒเบ™เบชเบญเบ‡เบชเบฒเบกเปเบ–เบงเบชเบธเบ”เบ—เป‰เบฒเบ. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป‚เบญเบ™เบกเบฑเบ™เป„เบ›เปƒเบชเปˆเป€เบŠเบตเบšเป€เบงเบตเป€เบžเบทเปˆเบญเปƒเบซเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ™เปเบฒเบกเบฒเปƒเบŠเป‰เบ„เบทเบ™เป„เบ”เป‰, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบเบฒเบ™เบซเบผเบธเบ”เบœเปˆเบญเบ™ UI เปเบฅเบฐเบšเบฑเบ™เบฅเบธเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบ—เบตเปˆเบ–เบทเบเบ•เป‰เบญเบ‡.

เบงเบดเบ—เบตเบ—เบตเปˆเบชเบตเปˆเปเบฅเบฐเบชเปเบฒเบ„เบฑเบ™เบ—เบตเปˆเบชเบธเบ”เป€เบžเบทเปˆเบญเปเบเบ microservices, เป€เบŠเบดเปˆเบ‡เป€เบฎเบฑเบ”เปƒเบซเป‰เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ—เบตเปˆเบˆเบฐเบซเบผเบธเบ”เบœเปˆเบญเบ™ monolith, เปเบกเปˆเบ™เบเบฒเบ™เบเปเบฒเบˆเบฑเบ”เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเบ”เป‰เบงเบเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡. เป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒเป‚เบกเบ”เบนเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเบญเบญเบ, เบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเบšเปเปˆเปเบกเปˆเบ™เบ„เบงเบฒเบกเบกเบฑเบเบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ, เปเบฅเบฐเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”เบญเบฒเบ”เบˆเบฐเบฅเป‰เบฒเบชเบฐเป„เบซเบกเบ™เบฑเบšเบ•เบฑเป‰เบ‡เปเบ•เปˆเบเบฒเบ™เบ—เปเบฒเบ‡เบฒเบ™เป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™. เบ”เป‰เบงเบ refactoring, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”เปƒเบซเบกเปˆเป€เบžเบฒเบฐเบงเปˆเบฒเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ›เบฑเบšเบ›เบธเบ‡เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡, เป€เบญเบปเบฒเบ‚เปเป‰เบšเบปเบเบžเปˆเบญเบ‡เบ—เบตเปˆเบฎเบนเป‰เบˆเบฑเบ, เปเบฅเบฐเบชเป‰เบฒเบ‡เบ•เบปเบงเปเบšเบšเบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ. เบกเบตเบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบซเบผเบฒเบเบขเปˆเบฒเบ‡เบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™.

เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบเบเบญเบญเบเบˆเบฒเบเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เปเบกเปˆเบ™เป€เบŠเบทเปˆเบญเบกเป‚เบเบ‡ inextricably เบเบฑเบšเปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡ bounded context. เบ™เบตเป‰เปเบกเปˆเบ™เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบˆเบฒเบ Domain Driven Design. เบกเบฑเบ™เบซเบกเบฒเบเบ„เบงเบฒเบกเบงเปˆเบฒเบžเบฒเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เบ•เบปเบงเปเบšเบšเป‚เบ”เป€เบกเบ™เบ—เบตเปˆเบ—เบธเบเบ‚เปเป‰เบเปเบฒเบ™เบปเบ”เบ‚เบญเบ‡เบžเบฒเบชเบฒเบ”เบฝเบงเบ–เบทเบเบเปเบฒเบ™เบปเบ”เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฑเบ. เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡เบ›เบฐเบเบฑเบ™เป„เบžเปเบฅเบฐเปƒเบšเบšเบดเบ™เบ„เปˆเบฒเป€เบ›เบฑเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ monolithic, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบšเบฑเบ™เบŠเบตเปƒเบ™เบเบฒเบ™เบ›เบฐเบเบฑเบ™เป„เบž. เบžเบงเบเป€เบฎเบปเบฒเบ„เบฒเบ”เบซเบงเบฑเบ‡เบงเปˆเบฒเบœเบนเป‰เบžเบฑเบ”เบ—เบฐเบ™เบฒเบˆเบฐเบŠเบญเบเบซเบฒเบŠเบฑเป‰เบ™เบšเบฑเบ™เบŠเบตเบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเปƒเบ™เบชเบฐเบžเบฒเปเบซเปˆเบ‡เบญเบทเปˆเบ™, เบญเป‰เบฒเบ‡เบญเบตเบ‡เบˆเบฒเบเบŠเบฑเป‰เบ™เบ›เบฐเบเบฑเบ™เป„เบž, เปเบฅเบฐเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบกเบตเบฅเบฐเบซเบฑเบ”เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบ. เบซเบผเบฑเบเบเบฒเบ™ DRY เบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เป€เบ„เบปเบฒเบฅเบปเบš, เบงเบฝเบเบ‡เบฒเบ™เบˆเบฐเบ–เบทเบเป€เบฎเบฑเบ”เป„เบ”เป‰เป„เบงเบ‚เบถเป‰เบ™เป‚เบ”เบเปƒเบŠเป‰เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบกเบตเบขเบนเปˆ.

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบกเบฑเบ™ turns เปƒเบซเป‰เป€เบซเบฑเบ™เบงเปˆเบฒเบชเบฐเบžเบฒเบšเบเบฒเบ™เบ‚เบญเบ‡เบšเบฑเบ™เบŠเบตเปเบฅเบฐเบเบฒเบ™เบ›เบฐเบเบฑเบ™เป„เบžเปเบกเปˆเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ. เป€เบกเบทเปˆเบญเบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเบกเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™, เบ„เบนเปˆเบชเบปเบกเบฅเบปเบ”เบ™เบตเป‰เบˆเบฐเปเบŠเบเปเบŠเบ‡เบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒ, เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™เบ‚เบญเบ‡เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เปเบฅเป‰เบง. เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ™เบตเป‰, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบŠเบญเบเบซเบฒเบ‚เบญเบšเป€เบ‚เบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡เบชเบฐเบžเบฒเบšเบเบฒเบ™เปƒเบ™เบฅเบฐเบซเบฑเบ”เปเบฅเบฐเป€เบญเบปเบฒเบเบฒเบ™เบฅเบฐเป€เบกเบตเบ”เบ‚เบญเบ‡เบกเบฑเบ™เบญเบญเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ›เบฐเบเบฑเบ™เป„เบž, เบกเบฑเบ™เป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบงเปˆเบฒเป€เบฅเบเบšเบฑเบ™เบŠเบตเบ—เบฐเบ™เบฒเบ„เบฒเบ™เบเบฒเบ‡ 20 เบ•เบปเบงเป€เบฅเบเปเบฅเบฐเบงเบฑเบ™เบ—เบตเป€เบ›เบตเบ”เบšเบฑเบ™เบŠเบตเบˆเบฐเบžเบฝเบ‡เบžเป.

เป€เบžเบทเปˆเบญเปเบเบเบšเปเบฅเบดเบšเบปเบ”เบ—เบตเปˆเบ–เบทเบเบœเบนเบเบกเบฑเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบญเบญเบเบˆเบฒเบเบเบฑเบ™เปเบฅเบฐเบเบฑเบ™เปเบฅเบฐเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบเบ microservices เบˆเบฒเบเบเบฒเบ™เปเบเป‰เป„เบ‚ monolithic, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เปƒเบŠเป‰เบงเบดเบ—เบตเบเบฒเบ™เป€เบŠเบฑเปˆเบ™เบเบฒเบ™เบชเป‰เบฒเบ‡ APIs เบžเบฒเบเบ™เบญเบเบžเบฒเบเปƒเบ™เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบฎเบนเป‰เบงเปˆเบฒเบšเบฒเบ‡เป‚เบกเบ”เบนเบ™เบ„เบงเบ™เบˆเบฐเบเบฒเบเป€เบ›เบฑเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบ™เบฅเบฐเบžเบฒเบ, เปเบเป‰เป„เบ‚เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบžเบฒเบเปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบงเบเป€เบฎเบปเบฒเบ—เบฑเบ™เบ—เบตเป‚เบ—เบซเบฒเป€เบซเบ”เบœเบปเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เบ‚เบญเบ‡เบชเบฐเบžเบฒเบšเบเบฒเบ™เบˆเปเบฒเบเบฑเบ”เบญเบทเปˆเบ™เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เป‚เบ—เบžเบฒเบเบ™เบญเบ. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบœเปˆเบฒเบ™ REST เบซเบผเบท WCF.

เบžเบงเบเป€เบฎเบปเบฒเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบขเปˆเบฒเบ‡เบซเบ™เบฑเบเปเบซเบ™เป‰เบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบšเปเปˆเบซเบฅเบตเบเบฅเปˆเบฝเบ‡เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบˆเบฐเบฎเบฝเบเบฎเป‰เบญเบ‡เปƒเบซเป‰เบกเบตเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเบ—เบตเปˆเปเบˆเบเบขเบฒเบ. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบกเบฑเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบ‡เปˆเบฒเบเบ—เบตเปˆเบˆเบฐเบ›เบฐเบ•เบดเบšเบฑเบ”เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบšเบ™เบตเป‰. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบžเบปเบšเบเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เบ—เบตเปˆเบเบฒเบ™เป€เบฎเบฑเบ”เบ—เบธเบฅเบฐเบเปเบฒเปเบˆเบเบขเบฒเบเบขเปˆเบฒเบ‡เป€เบ‚เบฑเป‰เบกเบ‡เบงเบ”เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เปเบ—เป‰เป† - เบ„เบงเบฒเบกเบชเบญเบ”เบ„เปˆเบญเบ‡เบชเบธเบ”เบ—เป‰เบฒเบเบฅเบฐเบซเบงเปˆเบฒเบ‡เป‚เบกเบ”เบนเบ™เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบžเบฝเบ‡เบžเป.

เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡เบชเบฐเป€เบžเบฒเบฐ. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เปเบ™เบงโ€‹เบ„เบงเบฒเบกโ€‹เบ„เบดเบ”โ€‹เบ‚เบญเบ‡ orchestrator เป€เบ›เบฑเบ™ - เบ—เปเปˆโ€‹เบ—เบตเปˆโ€‹เบ›เบธเบ‡โ€‹เปเบ•เปˆเบ‡โ€‹เบซเบปเบงโ€‹เบซเบ™เปˆเบงเบโ€‹เบ‚เบญเบ‡ "เบ„เปเบฒโ€‹เบฎเป‰เบญเบ‡โ€‹เบชเบฐโ€‹เบซเบกเบฑเบโ€‹" เป„เบ”เป‰โ€‹. เบฅเบฒเบงเบชเป‰เบฒเบ‡เบฅเบนเบเบ„เป‰เบฒ, เบšเบฑเบ™เบŠเบตเปเบฅเบฐเบšเบฑเบ”เบ—เบฐเบ™เบฒเบ„เบฒเบ™เปƒเบ™เบ—เบฒเบ‡เบเบฑเบšเบเบฑเบ™. เบ–เป‰เบฒเบฅเบนเบเบ„เป‰เบฒเปเบฅเบฐเบšเบฑเบ™เบŠเบตเบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบขเปˆเบฒเบ‡เบชเปเบฒเป€เบฅเบฑเบ”เบœเบปเบ™, เปเบ•เปˆเบเบฒเบ™เบชเป‰เบฒเบ‡เบšเบฑเบ”เบฅเบปเป‰เบกเป€เบซเบฅเบง, เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เบšเปเปˆเบเป‰เบฒเบเป„เบ›เบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐ "เบ›เบฐเบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”" เปเบฅเบฐเบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเปƒเบ™เบชเบฐเบ–เบฒเบ™เบฐ "เบšเปเปˆเบชเป‰เบฒเบ‡เบšเบฑเบ”". เปƒเบ™โ€‹เบญเบฐโ€‹เบ™เบฒโ€‹เบ„เบปเบ”, เบเบดเบ”โ€‹เบˆเบฐโ€‹เบเปเบฒโ€‹เบžเบทเป‰เบ™โ€‹เบ–เบฒเบ™โ€‹เบˆเบฐโ€‹เป€เบฅเบทเบญเบโ€‹เป€เบญเบปเบฒโ€‹เบกเบฑเบ™โ€‹เปเบฅเบฐโ€‹เบชเปเบฒโ€‹เป€เบฅเบฑเบ”โ€‹เบกเบฑเบ™โ€‹. เบฅเบฐเบšเบปเบšเป„เบ”เป‰เบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเบšเบ—เบตเปˆเบšเปเปˆเบชเบญเบ”เบ„เปˆเบญเบ‡เบชเปเบฒเบฅเบฑเบšเบšเบฒเบ‡เป€เบงเบฅเบฒ, เปเบ•เปˆเป‚เบ”เบเบ—เบปเปˆเบงเป„เบ›เปเบฅเป‰เบงเบžเบงเบเป€เบฎเบปเบฒเบžเปเปƒเบˆเบเบฑเบšเป€เบฅเบทเปˆเบญเบ‡เบ™เบตเป‰.

เบ–เป‰เบฒเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบˆเบฐเบŠเปˆเบงเบเบ›เบฐเบขเบฑเบ”เบชเปˆเบงเบ™เบซเบ™เบถเปˆเบ‡เบ‚เบญเบ‡เบ‚เปเป‰เบกเบนเบ™เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบชเปˆเบงเบ™เบซเบผเบฒเบเบญเบฒเบ”เบˆเบฐเป„เบ›เบฅเบงเบกเป€เบญเบปเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เบฝเบง.

เปƒเบซเป‰เป€เบšเบดเปˆเบ‡เบ•เบปเบงเบขเปˆเบฒเบ‡เบ‚เบญเบ‡เบเบฒเบ™เบˆเบฑเบ”เบชเบฑเบ™ microservice. เป€เบˆเบปเป‰เบฒเบชเบฒเบกเบฒเบ”เบ™เปเบฒเบกเบฑเบ™เป„เบ›เบœเบฐเบฅเบดเบ”เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ›เบญเบ”เป„เบžเป„เบ”เป‰เปเบ™เบงเปƒเบ”? เปƒเบ™เบ•เบปเบงเบขเปˆเบฒเบ‡เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบชเปˆเบงเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ‚เบญเบ‡เบฅเบฐเบšเบปเบš - เป‚เบกเบ”เบนเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเปˆเบฒเบเป€เบ‡เบดเบ™, เบซเบ™เบถเปˆเบ‡เปƒเบ™เบžเบฒเบเบชเปˆเบงเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบขเบฒเบเป€เบฎเบฑเบ” microservice.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเบชเป‰เบฒเบ‡ microservice เป‚เบ”เบเบเบฒเบ™เบ‚เบฝเบ™เบฅเบฐเบซเบฑเบ”เบ„เบทเบ™ เปƒเปเปˆ. เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบ›เบฑเบšเบ›เบธเบ‡เบšเบฒเบ‡เบ”เป‰เบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบžเปเปƒเบˆ. เบžเบงเบเป€เบฎเบปเบฒเบ›เบฐเบ•เบดเบšเบฑเบ”เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”เปƒเบซเบกเปˆเบˆเบฒเบเบฅเบนเบเบ„เป‰เบฒ. เบžเบงเบเป€เบฎเบปเบฒเป€เบžเบตเปˆเบก API Gateway เบเบฑเบšเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบฅเบฐเบซเบงเปˆเบฒเบ‡ UI เปเบฅเบฐ backend, เป€เบŠเบดเปˆเบ‡เบˆเบฐเบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบชเบปเปˆเบ‡เบ•เปเปˆเบเบฒเบ™เป‚เบ—.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ•เปเปˆเป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบญเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰เป„เบ›เบชเบนเปˆเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบ‡เบฒเบ™, เปเบ•เปˆเบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเบšเบ—เบปเบ”เบฅเบญเบ‡. เบœเบนเป‰เปƒเบŠเป‰เบชเปˆเบงเบ™เปƒเบซเบเปˆเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”เป€เบเบปเปˆเบฒ. เบชเปเบฒเบฅเบฑเบšเบœเบนเป‰เปƒเบŠเป‰เปƒเบซเบกเปˆ, เบžเบงเบเป€เบฎเบปเบฒเบเปเบฒเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ monolithic เบฎเบธเปˆเบ™เปƒเบซเบกเปˆเบ—เบตเปˆเบšเปเปˆเบกเบตเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰เบญเบตเบเบ•เปเปˆเป„เบ›. เป‚เบ”เบเบžเบทเป‰เบ™เบ–เบฒเบ™เปเบฅเป‰เบง, เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบฒเบ™เบ›เบฐเบชเบปเบกเบ›เบฐเบชเบฒเบ™เบ‚เบญเบ‡ monolith เปเบฅเบฐ microservice เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเป€เบ›เบฑเบ™เบ™เบฑเบเบšเบดเบ™.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ”เป‰เบงเบเบเบฒเบ™เบ—เบปเบ”เบฅเบญเบ‡เบ—เบตเปˆเบ›เบฐเบชเบปเบšเบœเบปเบ™เบชเปเบฒเป€เบฅเบฑเบ”, เบžเบงเบเป€เบฎเบปเบฒเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบซเบกเปˆเปเบกเปˆเบ™เป€เบฎเบฑเบ”เบงเบฝเบเป„เบ”เป‰เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒ monolith เป€เบเบปเปˆเบฒเบญเบญเบเบˆเบฒเบเบชเบปเบกเบœเบปเบ™เปเบฅเบฐเบญเบญเบเบˆเบฒเบเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเปƒเบซเบกเปˆเปเบ—เบ™เบเบฒเบ™เปเบเป‰เป„เบ‚เป€เบเบปเปˆเบฒ.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เปƒเบ™เบˆเปเบฒเบ™เบงเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เป€เบเบทเบญเบšเบ—เบธเบเบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบกเบตเบขเบนเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบเบเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เบ‚เบญเบ‡ monolith. เบžเบงเบเบกเบฑเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบซเบผเบธเบ”เบœเปˆเบญเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ‚เบญเบ‡เบชเปˆเบงเบ™เบ•เปˆเบฒเบ‡เป†เบ‚เบญเบ‡เปเบญเบฑเบšเบžเบฅเบดเป€เบ„เบŠเบฑเบ™เปเบฅเบฐเปเบ›เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเบขเบนเปˆเปƒเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปƒเบซเบกเปˆ, เป€เบฎเบฑเบ”เปƒเบซเป‰เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒ.

เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™


เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบชเบฒเบกเบฒเบ”เปเบšเปˆเบ‡เบญเบญเบเป„เบ”เป‰เบฎเป‰เบฒเบเปเบฎเบ‡เบเบงเปˆเบฒเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒเบกเบฑเบ™เบšเปเปˆเบžเบฝเบ‡เปเบ•เปˆเบ›เบฐเบเบญเบšเบ”เป‰เบงเบ schema เปƒเบ™เบ›เบฐเบˆเบธเบšเบฑเบ™, เปเบ•เปˆเบเบฑเบ‡เป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”.

เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบ„เบปเบ™เบญเบทเปˆเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบผเบฒเบ, เบกเบตเบ‚เปเป‰เบšเบปเบเบœเปˆเบญเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡ - เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เบกเบฑเบ™. เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบญเบญเบเปเบšเบšเบ•เบฒเบกเป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบ—เบตเปˆเบชเบฑเบšเบชเบปเบ™เบ‚เบญเบ‡ monolith, เปเบฅเบฐเบ„เบงเบฒเบกเบชเปเบฒเบžเบฑเบ™เบ—เบตเปˆเบชเบฐเบชเบปเบกเบฅเบฐเบซเบงเปˆเบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ‚เบญเบ‡เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ—เบตเปˆเบกเบตเบ‚เบญเบšเป€เบ‚เบ”เบ•เปˆเบฒเบ‡เป†.

เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ—เบฑเบ‡เบซเบกเบปเบ” (เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ, เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบซเบผเบฒเบ, เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบ‚เบญเบšเป€เบ‚เบ”เบ—เบตเปˆเบšเปเปˆเบŠเบฑเบ”เป€เบˆเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡), เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เปƒเบ™เบซเบผเบฒเบเป†เป‚เบ„เบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆ: เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เบฎเบนเบšเปเบšเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเปƒเบŠเป‰เบฎเปˆเบงเบกเบเบฑเบ™. เบ‚เปเป‰เบกเบนเบ™เป„เบ”เป‰เบ–เบทเบเป€เบญเบปเบฒเบกเบฒเบˆเบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เป€เบšเบดเปˆเบ‡, เป‚เบ”เบเบœเปˆเบฒเบ™เบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡, เปเบฅเบฐเบ–เบทเบเบชเบปเปˆเบ‡เป„เบ›เบซเบฒเบฅเบฐเบšเบปเบšเบญเบทเปˆเบ™เป†เบ—เบตเปˆเบเบฒเบ™เบˆเปเบฒเบฅเบญเบ‡เบ™เบตเป‰เบ•เป‰เบญเบ‡เบเบฒเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบชเบฒเบกเบฒเบ”เบเป‰เบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ schema เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเบกเบฑเบ™เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เบขเปˆเบฒเบ‡เบซเป‰เบฒเบงเบซเบฑเบ™.

เบเบฒเบ™เปเบšเปˆเบ‡เบชเปˆเบงเบ™เบ”เบฝเบงเบเบฑเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ—เบตเปˆเบˆเปเบฒเบเบฑเบ”เปƒเบ™เบฅเบฐเบซเบฑเบ”เบŠเปˆเบงเบเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเปเบเบเบญเบญเบเบˆเบฒเบเบเบฑเบ™. เบกเบฑเบ™เบกเบฑเบเบˆเบฐเป€เบฎเบฑเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ„เบงเบฒเบกเบ„เบดเบ”เบ—เบตเปˆเบ”เบตเบเปˆเบฝเบงเบเบฑเบšเบงเบดเบ—เบตเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ—เปเบฒเบฅเบฒเบเบ‚เปเป‰เบกเบนเบ™เปƒเบ™เบฅเบฐเบ”เบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™. เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป€เบ‚เบปเป‰เบฒโ€‹เปƒเบˆโ€‹เบงเปˆเบฒโ€‹เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹เปƒเบ”โ€‹เป€เบ›เบฑเบ™โ€‹เบ‚เบญเบ‡โ€‹เบชเบฐโ€‹เบžเบฒเบšโ€‹เบเบฒเบ™โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบ‚เบญเบšโ€‹เป€เบ‚เบ”โ€‹เปเบฅเบฐโ€‹เบ—เบตเปˆโ€‹เบˆเบฐโ€‹เบเบฑเบšโ€‹เบญเบตเบโ€‹.

เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เป„เบ”เป‰โ€‹เบ™เปเบฒโ€‹เปƒเบŠเป‰โ€‹เบชเบญเบ‡โ€‹เบงเบดโ€‹เบ—เบตโ€‹เบเบฒเบ™โ€‹เบ—เบปเปˆเบงโ€‹เป‚เบฅเบโ€‹เบ‚เบญเบ‡โ€‹เบเบฒเบ™โ€‹เปเบšเปˆเบ‡โ€‹เบ›เบฑเบ™โ€‹เบ–เบฒเบ™โ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™โ€‹: เบเบฒเบ™โ€‹เปเบšเปˆเบ‡โ€‹เบ›เบฑเบ™โ€‹เบ•เบฒโ€‹เบ•เบฐโ€‹เบฅเบฒเบ‡โ€‹เบ—เบตเปˆโ€‹เบกเบตโ€‹เบขเบนเปˆโ€‹เปเบฅเป‰เบงโ€‹เปเบฅเบฐโ€‹เบเบฒเบ™โ€‹เปเบšเปˆเบ‡โ€‹เบ›เบฑเบ™โ€‹เบเบฑเบšโ€‹เบเบฒเบ™โ€‹เบ›เบธเบ‡โ€‹เปเบ•เปˆเบ‡โ€‹.

เบเบฒเบ™เปเบเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบกเปˆเบ™เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเบ”เบตเบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰เบ–เป‰เบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบ”เบต, เบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเบดเบ”, เปเบฅเบฐเบ—เบธเบเบ„เบปเบ™เบกเบตเบ„เบงเบฒเบกเบชเบธเบเบเบฑเบšเบกเบฑเบ™. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เปเบเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบงเบญเบญเบเป€เบ›เบฑเบ™ schema เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เบžเบฐเปเบ™เบเบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡เปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบฎเบนเบšเปเบšเบšเบ—เบธเบฅเบฐเบเบดเบ”เบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ, เปเบฅเบฐเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบšเปเปˆเป€เบฎเบฑเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเบžเปเปƒเบˆเบญเบตเบเบ•เปเปˆเป„เบ›.

เบเบฒเบ™เปเบเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง. เบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบเปเบฒเบ™เบปเบ”เบชเบดเปˆเบ‡เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเปเบเบ. เป‚เบ”เบเบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบ™เบตเป‰, เบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบ, เปเบฅเบฐเปƒเบ™เบ—เบตเปˆเบ™เบตเป‰เบเบฒเบ™เปเบเบเบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบšเป€เบ‚เบ”เปƒเบ™เบฅเบฐเบซเบฑเบ”เบˆเบฐเบŠเปˆเบงเบเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒ. เบ•เบฒเบกเบเบปเบ”เบฅเบฐเบšเบฝเบš, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบ‚เบปเป‰เบฒเปƒเบˆเบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบชเบฐเบžเบฒเบšเบเบฒเบ™เปƒเบ™เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡, เบกเบฑเบ™เบˆเบฐเปเบˆเป‰เบ‡เบงเปˆเบฒเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปƒเบ”เบ„เบงเบ™เบ–เบทเบเบฅเบงเบกเป€เบ‚เบปเป‰เบฒเปƒเบ™เบšเบฑเบ™เบŠเบตเบฅเบฒเบเบŠเบทเปˆเบ‚เบญเบ‡เบžเบฐเปเบ™เบ.

เปƒเบซเป‰เบˆเบดเบ™เบ•เบฐเบ™เบฒเบเบฒเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบ—เบตเปˆเบชเบญเบ‡เป‚เบกเบ”เบนเบ™ monolith เบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ”เบฝเบง. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบซเป‰เปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบžเบฝเบ‡เปเบ•เปˆเบซเบ™เบถเปˆเบ‡เป‚เบกเบ”เบนเบ™เป‚เบ•เป‰เบ•เบญเบšเบเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเปเบเบเบเบฑเบ™, เปเบฅเบฐเบญเบตเบเบญเบฑเบ™เบซเบ™เบถเปˆเบ‡เป€เบฅเบตเปˆเบกเบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบกเบฑเบ™เบœเปˆเบฒเบ™ API. เป€เบžเบทเปˆเบญเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ”เป‰เบงเบ, เบกเบฑเบ™เบžเบฝเบ‡เบžเปเบ—เบตเปˆเบกเบตเบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบšเบฑเบ™เบ—เบถเบเบเบฒเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบœเปˆเบฒเบ™ API. เบ™เบตเป‰เปเบกเปˆเบ™เป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ—เบตเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบ—เบตเปˆเบˆเบฐเป€เบงเบปเป‰เบฒเบเปˆเบฝเบงเบเบฑเบšเป€เบญเบเบฐเบฅเบฒเบ”เบ‚เบญเบ‡ microservices. เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบญเปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เบเบฑเบ‡เบ„เบปเบ‡เบขเบนเปˆเบ•เบฒเบšเปƒเบ”เบ—เบตเปˆเบšเปเปˆเบกเบตเบšเบฑเบ™เบซเบฒเปƒเบซเบเปˆ.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ•เปเปˆเป„เบ›เปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เปเบเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบกเบตเบซเบผเบทเบšเปเปˆเบกเบตเบเบฒเบ™เบ›เบธเบ‡เปเบ•เปˆเบ‡, เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ microservice เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเปเบฅเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, container. เบ™เบตเป‰เบˆเบฐเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ—เบตเปˆเบกเบตเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ monolith เปเบฅเบฐเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป€เบซเบผเบปเปˆเบฒเบ™เบฑเป‰เบ™เบ—เบตเปˆเบšเปเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เป‚เบ”เบเบเบปเบ‡เบเบฑเบšเบกเบฑเบ™. monolith เบเบฑเบ‡เบžเบปเบงเบžเบฑเบ™เบเบฑเบšเบเบฒเบ™เบญเปˆเบฒเบ™เบเบฑเบšเบชเปˆเบงเบ™เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ–เบญเบ”เบญเบญเบเป„เบ”เป‰.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ•เปเปˆเบกเบฒเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบญเบปเบฒเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ™เบตเป‰, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบเบฒเบ™เบญเปˆเบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบ monolithic เบˆเบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบˆเบฐเบ–เบทเบเป‚เบญเบ™เป„เบ›เบซเบฒ API.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ•เปเปˆเป„เบ›, เบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเป€เบฅเบทเบญเบเป€เบญเบปเบฒเบˆเบฒเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบปเปˆเบงเป„เบ›เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ—เบตเปˆเบกเบตเบžเบฝเบ‡เปเบ•เปˆ microservice เปƒเบซเบกเปˆเป€เบฎเบฑเบ”เบงเบฝเบ. เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบเป‰เบฒเบเบ•เบฒเบ•เบฐเบฅเบฒเบ‡เป„เบ›เบซเบฒ schema เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบซเบผเบทเปเบกเป‰เบเบฐเบ—เบฑเป‰เบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบฒเบ‡เบ”เป‰เบฒเบ™เบฎเปˆเบฒเบ‡เบเบฒเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เบเบฑเบ‡เบกเบตเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฒเบ™เบญเปˆเบฒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡ microservice เปเบฅเบฐเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™ monolith, เปเบ•เปˆเบšเปเปˆเบกเบตเบซเบเบฑเบ‡เบ—เบตเปˆเบˆเบฐเบเบฑเบ‡เบงเบปเบ™, เปƒเบ™เบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบ™เบตเป‰เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เบ”เปเบฒเบฅเบปเบ‡เบŠเบตเบงเบดเบ”เป„เบ”เป‰เป€เบ›เบฑเบ™เป€เบงเบฅเบฒเบ”เบปเบ™เบ™เบฒเบ™.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบชเบธเบ”เบ—เป‰เบฒเบเปเบกเปˆเบ™เป€เบžเบทเปˆเบญเป€เบญเบปเบฒเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบ—เบฑเบ‡เบซเบกเบปเบ”เบญเบญเบเบซเบกเบปเบ”. เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเบญเบฒเบ”เบˆเบฐเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบเป‰เบฒเบเบ‚เปเป‰เบกเบนเบ™เบˆเบฒเบเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ•เบปเป‰เบ™เบ•เป. เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบŠเป‰เบ„เบทเบ™เบšเบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เบซเบผเบทเป„เบ”เป€เบฅเบเบฐเบ—เปเบฅเบตเบ—เบตเปˆ replicated เบˆเบฒเบเบฅเบฐเบšเบปเบšเบžเบฒเบเบ™เบญเบเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡. เบ™เบตเป‰เป€เบเบตเบ”เบ‚เบถเป‰เบ™เบเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเปเบ•เปˆเบฅเบฐเป„เบฅเบเบฐ.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบžเบฐเปเบ™เบเบ›เบธเบ‡เปเบ•เปˆเบ‡. เบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบ„เป‰เบฒเบเบ„เบทเบเบฑเบ™เบเบฑเบšเบงเบดเบ—เบตเบ—เปเบฒเบญเบดเบ”, เบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เบ„เปเบฒเบชเบฑเปˆเบ‡เบ›เบตเป‰เบ™เบเบฑเบšเบเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบˆเบฑเบ”เบชเบฑเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบซเบกเปˆเปเบฅเบฐเบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเปƒเบซเบกเปˆเปƒเบ™เบ—เบฑเบ™เบ—เบตเบ—เบตเปˆเบžเบปเบงเบžเบฑเบ™เบเบฑเบš monolith เบœเปˆเบฒเบ™ API. เปเบ•เปˆเปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบเบฑเบ‡เบกเบตเบŠเบธเบ”เบ‚เบญเบ‡เบ•เบฒเบ•เบฐเบฅเบฒเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบฅเบถเบšเปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบกเบฑเบ™เบญเบตเบเบ•เปเปˆเป„เบ›; เบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบฝเบ™เบกเบฑเบ™เปƒเบ™เปเบšเบšเปƒเบซเบกเปˆ.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เป€เบžเบทเปˆเบญเปƒเบซเป‰เป‚เบ„เบ‡เบเบฒเบ™เบ™เบตเป‰เป€เบฎเบฑเบ”เบงเบฝเบ, เบžเบงเบเป€เบฎเบปเบฒเบญเบฒเบ”เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เป„เบฅเบเบฐเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบกเบตเบชเบญเบ‡เบงเบดเบ—เบตเบเบฒเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป„เบ›เป„เบ”เป‰.

เบ—เปเบฒเบญเบดเบ”: เบžเบงเบเป€เบฎเบปเบฒเบชเบณเป€เบ™เบปเบฒเบ‚เปเป‰เบกเบนเบ™เบ—เบฑเบ‡เปเบปเบ”เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเปเปˆ เปเบฅเบฐ เป€เบเบปเปˆเบฒ. เปƒเบ™โ€‹เบเปโ€‹เบฅเบฐโ€‹เบ™เบตโ€‹เบ™เบตเป‰โ€‹, เบžเบงเบโ€‹เป€เบฎเบปเบฒโ€‹เบกเบตโ€‹เบ‚เปเป‰โ€‹เบกเบนเบ™ redundancy เปเบฅเบฐโ€‹เบšเบฑเบ™โ€‹เบซเบฒ synchronization เบญเบฒเบ”โ€‹เบˆเบฐโ€‹เป€เบเบตเบ”โ€‹เบ‚เบถเป‰เบ™โ€‹. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบชเบญเบ‡เบฅเบนเบเบ„เป‰เบฒเบ—เบตเปˆเปเบ•เบเบ•เปˆเบฒเบ‡เบเบฑเบ™. เบญเบฑเบ™เปœเบถเปˆเบ‡เบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบฅเบธเป‰เบ™เปƒเปเปˆ, เบญเบตเบเบญเบฑเบ™เปœเบถเปˆเบ‡เบเบฑเบšเบฅเบธเป‰เบ™เป€เบเบปเปˆเบฒ.

เบ—เบตเบชเบญเบ‡: เบžเบงเบเป€เบฎเบปเบฒเปเบšเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™เบ•เบฒเบกเป€เบ‡เบทเปˆเบญเบ™เป„เบ‚เบ—เบธเบฅเบฐเบเบดเบ”เบšเบฒเบ‡เบขเปˆเบฒเบ‡. เบ•เบปเบงเบขเปˆเบฒเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบกเบต 5 เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เปƒเบ™เบฅเบฐเบšเบปเบšเบ—เบตเปˆเบ–เบทเบเป€เบเบฑเบšเป„เบงเป‰เปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบเบปเปˆเบฒ. เบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เบญเบฑเบ™เบ”เบฑเบšเบ—เบต XNUMX เบžเบฒเบเปƒเบ™เบงเบฝเบเบ‡เบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”เปƒเบซเบกเปˆเปƒเบ™เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เปƒเบซเบกเปˆ. เปเบ•เปˆเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™ API Gateway เบ—เบตเปˆเบˆเบฐ synchronize เบ‚เปเป‰เบกเบนเบ™เบ™เบตเป‰เปเบฅเบฐเบชเบฐเปเบ”เบ‡เปƒเบซเป‰เบฅเบนเบเบ„เป‰เบฒเป€เบซเบฑเบ™เบšเปˆเบญเบ™เปƒเบ”เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบˆเบฐเป„เบ”เป‰เบฎเบฑเบšเบˆเบฒเบ.

เบงเบดเบ—เบตเบเบฒเบ™เบ—เบฑเบ‡เบชเบญเบ‡เป€เบฎเบฑเบ”เบงเบฝเบ, เป€เบฅเบทเบญเบเบ‚เบถเป‰เบ™เบขเบนเปˆเบเบฑเบšเบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเปเบ™เปˆเปƒเบˆเบงเปˆเบฒเบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เป€เบฎเบฑเบ”เบงเบฝเบ, เบชเปˆเบงเบ™เบ‚เบญเบ‡ monolith เบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™เป€เบเบปเปˆเบฒเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ›เบดเบ”เบเบฒเบ™เปƒเบŠเป‰เบ‡เบฒเบ™.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบชเบธเบ”เบ—เป‰เบฒเบเปเบกเปˆเบ™เป€เบžเบทเปˆเบญเป€เบญเบปเบฒเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบ‚เปเป‰เบกเบนเบ™เป€เบเบปเปˆเบฒเบญเบญเบ.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เป€เบžเบทเปˆเบญเบชเบฐเบซเบผเบธเบš, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบกเบตเบšเบฑเบ™เบซเบฒเบเบฑเบšเบ–เบฒเบ™เบ‚เปเป‰เบกเบนเบ™: เบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบกเบฑเบ™เป€เบกเบทเปˆเบญเบ—เบฝเบšเปƒเบชเปˆเบเบฑเบšเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡, เบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเปเบšเปˆเบ‡เบ›เบฑเบ™, เปเบ•เปˆเบกเบฑเบ™เบชเบฒเบกเบฒเบ”เป€เบฎเบฑเบ”เป„เบ”เป‰เปเบฅเบฐเบ„เบงเบ™เบˆเบฐเป€เบฎเบฑเบ”. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบžเบปเบšเป€เบซเบฑเบ™เบšเบฒเบ‡เบงเบดเบ—เบตเบ—เบตเปˆเบŠเปˆเบงเบเปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบญเบฑเบ™เบ™เบตเป‰เบขเปˆเบฒเบ‡เบ›เบญเบ”เป„เบž, เปเบ•เปˆเบกเบฑเบ™เบเบฑเบ‡เบ‡เปˆเบฒเบเบ•เปเปˆเบเบฒเบ™เป€เบฎเบฑเบ”เบœเบดเบ”เบžเบฒเบ”เบเบฑเบšเบ‚เปเป‰เบกเบนเบ™เบซเบผเบฒเบเบเปˆเบงเบฒเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡.

เป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡


เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเปเบœเบ™เบงเบฒเบ”เบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เป€เบšเบดเปˆเบ‡เบ„เบทเป€เบกเบทเปˆเบญเบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบงเบดเป€เบ„เบฒเบฐเป‚เบ„เบ‡เบเบฒเบ™ monolithic.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบกเบฑเบ™เบชเบฒเบกเบฒเบ”เปเบšเปˆเบ‡เบญเบญเบเบ›เบฐเบกเบฒเบ™เบชเบฒเบกเบŠเบฑเป‰เบ™. เบ™เบตเป‰เปเบกเปˆเบ™เบŠเบฑเป‰เบ™เบ‚เบญเบ‡เป‚เบกเบ”เบนเบ™เบ—เบตเปˆเป€เบ›เบตเบ”เบ•เบปเบง, plugins, เบšเปเบฅเบดเบเบฒเบ™เปเบฅเบฐเบเบดเบ”เบˆเบฐเบเปเบฒเบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™. เปƒเบ™เบ„เบงเบฒเบกเป€เบ›เบฑเบ™เบˆเบดเบ‡, เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เปเบกเปˆเบ™เบˆเบธเบ”เป€เบ‚เบปเป‰เบฒเบžเบฒเบเปƒเบ™เบเบฒเบ™เปเบเป‰เป„เบ‚ monolithic. เบžเบงเบเบกเบฑเบ™เบ—เบฑเบ‡เปเบปเบ”เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ—เบฑเบšเบ•เบฒเบขเปˆเบฒเบ‡เปเปœเป‰เบ™เปœเบฒเบ”เป‰เบงเบเบŠเบฑเป‰เบ™เบ—เบปเปˆเบงเป„เบ›. เบกเบฑเบ™เบกเบตเป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบ—เบตเปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เปเบฅเบฐเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบซเบผเบฒเบ. เปเบ•เปˆเบฅเบฐเบšเปเบฅเบดเบเบฒเบ™เปเบฅเบฐ plugin เปƒเบŠเป‰เป€เบ–เบดเบ‡ 10 เบซเบผเบทเบซเบผเบฒเบเบเบงเปˆเบฒเบ™เบฑเป‰เบ™, เบ‚เบถเป‰เบ™เบเบฑเบšเบ‚เบฐเบซเบ™เบฒเบ”เปเบฅเบฐเบˆเบดเบ”เปƒเบˆเบ‚เบญเบ‡เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒ.

เบžเบงเบเป€เบฎเบปเบฒเป‚เบŠเบเบ”เบตเบ—เบตเปˆเบกเบตเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบ—เบตเปˆเบชเบฒเบกเบฒเบ”เบ–เบทเบเบ™เปเบฒเปƒเบŠเป‰เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ.

เบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบชเบฐเบ–เบฒเบ™เบฐเบเบฒเบ™เป€เบเบตเบ”เบ‚เบถเป‰เบ™เป€เบกเบทเปˆเบญเบงเบฑเบ”เบ–เบธเบ—เบปเปˆเบงเป„เบ›เบšเบฒเบ‡เบขเปˆเบฒเบ‡เบšเปเปˆเป„เบ”เป‰เบขเบนเปˆเปƒเบ™เบŠเบฑเป‰เบ™เบ™เบตเป‰, เปเบ•เปˆเป€เบ›เบฑเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™. เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเปเบเป‰เป„เบ‚เป‚เบ”เบเบเบฒเบ™เบ›เปˆเบฝเบ™เบŠเบทเปˆ.

เบ„เบงเบฒเบกเบเบฑเบ‡เบงเบปเบ™เบ—เบตเปˆเปƒเบซเบเปˆเบ—เบตเปˆเบชเบธเบ”เปเบกเปˆเบ™เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบšเป€เบ‚เบ”เบชเบฐเบžเบฒเบšเบเบฒเบ™. เบกเบฑเบ™เป€เบเบตเบ”เบ‚เบทเป‰เบ™เบงเปˆเบฒ 3-4 เบชเบฐเบžเบฒเบšเบเบฒเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบชเบปเบกเบขเบนเปˆเปƒเบ™เบชเบฐเบžเบฒเปเบซเปˆเบ‡เบ—เบปเปˆเบงเป„เบ›เปเบฅเบฐเบ™เปเบฒเปƒเบŠเป‰เป€เบŠเบดเปˆเบ‡เบเบฑเบ™เปเบฅเบฐเบเบฑเบ™เบžเบฒเบเปƒเบ™เบซเบ™เป‰เบฒเบ—เบตเปˆเบ—เบธเบฅเบฐเบเบดเบ”เบ”เบฝเบงเบเบฑเบ™. เบกเบฑเบ™เป€เบ›เบฑเบ™เบชเบดเปˆเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ—เบตเปˆเบˆเบฐเป€เบ‚เบปเป‰เบฒเปƒเบˆเบงเปˆเบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เปเบšเปˆเบ‡เบญเบญเบเป„เบ”เป‰เปเบฅเบฐเบ•เบฒเบกเบ‚เบญเบšเป€เบ‚เบ”เปƒเบ”, เปเบฅเบฐเบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบ•เปเปˆเป„เบ›เบเบฑเบšเบเบฒเบ™เบชเป‰เบฒเบ‡เปเบœเบ™เบ—เบตเปˆเบเบฒเบ™เปเบšเปˆเบ‡เบ™เบตเป‰เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบเบฒเบ™เบ›เบฐเบเบญเบšเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡.

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบเบปเบ”เบฅเบฐเบšเบฝเบšเบˆเปเบฒเบ™เบงเบ™เบซเบ™เบถเปˆเบ‡เบชเปเบฒเบฅเบฑเบšเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เปเบเบเบฅเบฐเบซเบฑเบ”.

เบ—เปเบฒเบญเบดเบ”: เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เปเบšเปˆเบ‡เบ›เบฑเบ™เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เบเบดเบ”เบˆเบฐเบเปเบฒ เปเบฅเบฐ plugins เบญเบตเบเบ•เปเปˆเป„เบ›. เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบžเบฒเบเปƒเบ™ microservices. เปƒเบ™เบ—เบฒเบ‡เบเบปเบ‡เบเบฑเบ™เบ‚เป‰เบฒเบก, เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเปเบกเปˆเบ™เบ„เบดเบ”เบงเปˆเบฒเป€เบ›เบฑเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบขเปˆเบฒเบ‡เบชเบปเบกเบšเบนเบ™. เบ‚เป‰เบฒเบžเบฐเป€เบˆเบปเป‰เบฒเป€เบŠเบทเปˆเบญเบงเปˆเบฒเบงเบดเบ—เบตเบเบฒเบ™เบ™เบตเป‰เปเบกเปˆเบ™เบชเบดเปˆเบ‡เป€เบชเบ”เป€เบซเบผเบทเบญเบšเบฒเบ‡เบขเปˆเบฒเบ‡, เปเบฅเบฐเบกเบฑเบ™เบเบฒเบเบ—เบตเปˆเบˆเบฐเบšเบฑเบ™เบฅเบธเป„เบ”เป‰, เป€เบžเบฒเบฐเบงเปˆเบฒ, เบชเปเบฒเบฅเบฑเบšเบ•เบปเบงเบขเปˆเบฒเบ‡, เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปƒเบ™ C# เบˆเบฐเบ–เบทเบเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเป‚เบ”เบเบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ–เบทเบเบ‚เบฝเบ™เป„เบงเป‰เปƒเบ™ C#; เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เป„เบ”เป‰เบ™เปเบฒเปƒเบŠเป‰เป€เบ•เบฑเบเป‚เบ™เป‚เบฅเบขเบตเบญเบทเปˆเบ™เป†. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ—เบตเปˆเบˆเบฐเปƒเบŠเป‰เบญเบธเบ›เบฐเบเบญเบ™เบ›เบฐเบเบญเบšเบ”เป‰เบฒเบ™เบงเบดเบŠเบฒเบเบฒเบ™เบ—เบปเปˆเบงเป„เบ›. เบชเบดเปˆเบ‡เบ—เบตเปˆเบชเปเบฒเบ„เบฑเบ™เปเบกเปˆเบ™เบงเปˆเบฒเบžเบงเบเป€เบ‚เบปเบฒเบšเปเปˆเบกเบตเบŠเบดเป‰เบ™เบชเปˆเบงเบ™เบ‚เบญเบ‡เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเปเบœเปˆเบ™เบซเปเปˆเบ„เบงเบฒเบกเบชเบฐเบ”เบงเบเบชเบฐเบšเบฒเบเบซเบผเบฒเบเบเบงเปˆเบฒ ORM เบ—เบตเปˆเบ—เปˆเบฒเบ™เบเปเบฒเบฅเบฑเบ‡เปƒเบŠเป‰, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบเบฒเบ™เบ„เบฑเบ”เบฅเบญเบเบˆเบฒเบเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป„เบ›เบซเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เปเบกเปˆเบ™เบฅเบฒเบ„เบฒเปเบžเบ‡เบซเบผเบฒเบ.

เบ—เบตเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบฑเบ™เปเบŸเบ™เบ‚เบญเบ‡เบเบฒเบ™เบญเบญเบเปเบšเบšเบ—เบตเปˆเบ‚เบฑเบšเป€เบ„เบทเปˆเบญเบ™เป‚เบ”เบเป‚เบ”เป€เบกเบ™, เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเบœเบฑเบเบšเบปเปˆเบงเปเบกเปˆเบ™เป€เบซเบกเบฒเบฐเบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒ. เบžเบทเป‰เบ™เบ–เบฒเบ™เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเปเบกเปˆเบ™เบŠเบฑเป‰เบ™เบเบฒเบ™เป€เบ‚เบปเป‰เบฒเป€เบ–เบดเบ‡เบ‚เปเป‰เบกเบนเบ™, เปเบ•เปˆเบเบฒเบ™เบ›เบฐเบเบญเบšเบเบฑเบšเป€เบซเบ”เบœเบปเบ™เบ‚เบญเบ‡เป‚เบ”เป€เบกเบ™, เป€เบŠเบดเปˆเบ‡เบ›เบฐเบเบญเบšเบ”เป‰เบงเบเป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™เปเบฅเบฐเบšเปเปˆเบกเบตเบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™. เปƒเบ™เป€เบงเบฅเบฒเบ”เบฝเบงเบเบฑเบ™, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เปเบเป‰เป„เบ‚เบเบฒเบ™เบ›เบฐเบเบญเบšเป‚เบ”เป€เบกเบ™เบขเปˆเบฒเบ‡เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบเบญเบš.

เปƒเบ™เบ‚เบฑเป‰เบ™เบ•เบญเบ™เบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบžเบปเบšเบเบฑเบšเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เบ„เบฑเป‰เบ‡เบ—เปเบฒเบญเบดเบ”เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ•เป‰เบญเบ‡เบญเป‰เบฒเบ‡เป€เบ–เบดเบ‡เบเบฒเบ™เบ›เบฐเบเบญเบšเป‚เบ”เป€เบกเบ™เบซเบ™เบถเปˆเบ‡, เบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เป€เบฎเบฑเบ”เปƒเบซเป‰เป€เบซเบ”เบœเบปเบ™เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”, เปเบฅเบฐเบซเบผเบฑเบเบเบฒเบ™ DRY เป„เบ”เป‰เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบžเบงเบเป€เบฎเบปเบฒเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ™เบฑเบเบžเบฑเบ”เบ—เบฐเบ™เบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบŠเป‰เบ„เบทเบ™เปƒเบซเบกเปˆเบˆเบฒเบเบชเบฐเบžเบฒเปเบซเปˆเบ‡เปƒเบเป‰เบ„เบฝเบ‡เป€เบžเบทเปˆเบญเบซเบผเบตเบเป€เบงเบฑเป‰เบ™เบเบฒเบ™เบŠเป‰เปเบฒเบเบฑเบ™, เปเบฅเบฐเบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป‚เบ”เป€เบกเบ™เป€เบฅเบตเปˆเบกเป€เบŠเบทเปˆเบญเบกเบ•เปเปˆเบเบฑเบ™เบญเบตเบเป€เบ—เบทเปˆเบญเบซเบ™เบถเปˆเบ‡. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบงเบดเป€เบ„เบฒเบฐเบœเบปเบ™เป„เบ”เป‰เบฎเบฑเบšเปเบฅเบฐเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒเบšเบฒเบ‡เบ—เบตเบšเบฑเบ™เบซเบฒเบเบฑเบ‡เบขเบนเปˆเปƒเบ™เบžเบทเป‰เบ™เบ—เบตเปˆเบ‚เบญเบ‡เบญเบธเบ›เบฐเบเบญเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡. เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ—เบตเปˆเบกเบตเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เบ—เบฑเบ‡เบซเบกเบปเบ”. เบเบฒเบ™เปเบเป‰เป„เบ‚เบชเปเบฒเบฅเบฑเบšเป‚เบ„เบ‡เบเบฒเบ™เบ—เบฑเบ‡เบซเบกเบปเบ”เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบซเบเบธเป‰เบ‡เบเบฒเบเบซเบผเบฒเบเบ—เบตเปˆเบˆเบฐเบ›เบฐเบเบญเบšเบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เปเบเป‰เป„เบ‚เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเป„เบ”เป‰เบ–เบทเบเบชเป‰เบฒเบ‡เบ‚เบทเป‰เบ™เบชเปเบฒเบฅเบฑเบšเบžเบฒเบเบชเปˆเบงเบ™เบ‚เบญเบ‡เป‚เบ„เบ‡เบเบฒเบ™, เปเบฅเบฐเบšเปเปˆเบกเบตเปƒเบœเบซเป‰เบฒเบกเบเบฒเบ™เป€เบžเบตเปˆเบกเบšเบฒเบ‡เบชเปˆเบงเบ™เบ—เบปเปˆเบงเป„เบ›เบซเบผเบทเป‚เบ”เป€เบกเบ™เปƒเบซเป‰เบžเบงเบเป€เบ‚เบปเบฒเปเบฅเบฐเบ™เปเบฒเปƒเบŠเป‰เบ„เบทเบ™เปƒเบซเบกเปˆ. เป€เบ„เบทเปˆเบญเบ‡เบกเบทเบ”เบฝเบงเบ—เบตเปˆเบšเปเปˆเป„เบ”เป‰เบญเบฐเบ™เบธเบเบฒเบ”เปƒเบซเป‰เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เบ™เบตเป‰เปเบกเปˆเบ™เบเบฒเบ™เบ—เบปเบšเบ—เบงเบ™เบ„เบทเบ™เบฅเบฐเบซเบฑเบ”. เปเบ•เปˆเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบกเบฑเบ™เบเปเปˆเบฅเบปเป‰เบกเป€เบซเบฅเบง.

เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป„เบ›เบชเบนเปˆเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบกเบต repositories เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ. เป€เบซเบ”เบœเบปเบ™เบ—เบฒเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบšเปเปˆเป„เบซเบผเบญเบญเบเบˆเบฒเบเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป„เบ›เบซเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™, เป‚เบ”เป€เบกเบ™เป„เบ”เป‰เบเบฒเบเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบขเปˆเบฒเบ‡เปเบ—เป‰เบˆเบดเบ‡. เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ—เบตเปˆเบ–เบทเบเบœเบนเบเบกเบฑเบ”เปเบกเปˆเบ™เป„เบ”เป‰เบฎเบฑเบšเบเบฒเบ™เบชเบฐเบซเบ™เบฑเบšเบชเบฐเบซเบ™เบนเบ™เบขเปˆเบฒเบ‡เบŠเบฑเบ”เป€เบˆเบ™เบเบงเปˆเบฒ. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เบซเป‰เบญเบ‡เบชเบฐเปเบธเบ”เบžเบทเป‰เบ™เบ–เบฒเบ™เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡เบ„เบทเบ™เปƒเปเปˆเปเบ™เบงเปƒเบ”? เบžเบงเบเป€เบฎเบปเบฒเปเบเบเบžเบงเบเบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เป€เบญเบปเบฒเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบŠเบธเบ” Nuget, เป€เบŠเบดเปˆเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบญเบปเบฒเป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™ Artifactory. เบ”เป‰เบงเบเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปƒเบ”เป†, เบเบฒเบ™เบ›เบฐเบเบญเบšเปเบฅเบฐเบเบฒเบ™เบžเบดเบกเป€เบœเบตเบเปเบœเปˆเป€เบเบตเบ”เบ‚เบทเป‰เบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเบญเป‰เบฒเบ‡เบญเบตเบ‡เบŠเบธเบ”เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™เบžเบฒเบเปƒเบ™เปเบšเบšเบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบšเปเบฅเบดเบเบฒเบ™เบžเบฒเบเบ™เบญเบ. เบžเบงเบเป€เบฎเบปเบฒเบ”เบฒเบงเป‚เบซเบฅเบ”เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เบžเบฒเบเบ™เบญเบเบˆเบฒเบ Nuget. เป€เบžเบทเปˆเบญเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบš Artifactory, เบšเปˆเบญเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบงเบฒเบ‡เปเบžเบฑเบเป€เบเบฑเบ”เป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เปƒเบŠเป‰เบ•เบปเบงเบˆเบฑเบ”เบเบฒเบ™เบŠเบธเบ”เบชเบญเบ‡. เปƒเบ™เบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ, เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เป„เบ”เป‰เปƒเบŠเป‰ Nuget. เปƒเบ™ repositories เบ—เบตเปˆเบกเบตเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบซเบผเบฒเบ, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เปƒเบŠเป‰ Paket, เป€เบŠเบดเปˆเบ‡เบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบชเบญเบ”เบ„เปˆเบญเบ‡เบ‚เบญเบ‡เบชเบฐเบšเบฑเบšเบซเบผเบฒเบเบฅเบฐเบซเบงเปˆเบฒเบ‡เป‚เบกเบ”เบนเบ™.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เป‚เบ”เบเบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเบเปˆเบฝเบงเบเบฑเบšเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡, เบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเป€เบฅเบฑเบเบ™เป‰เบญเบเปเบฅเบฐเบเบฒเบ™เปเบเบเบšเปˆเบญเบ™เป€เบเบฑเบšเบกเป‰เบฝเบ™, เบžเบงเบเป€เบฎเบปเบฒเป€เบฎเบฑเบ”เปƒเบซเป‰เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”เบซเบผเบฒเบเบเบงเปˆเบฒเป€เบเบปเปˆเบฒ.

เบšเบฑเบ™เบซเบฒเบžเบทเป‰เบ™เบ–เบฒเบ™เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡


เบเบฒเบ™เบซเบผเบธเบ”เบฅเบปเบ‡เบชเปˆเบงเบ™เปƒเบซเบเปˆเปƒเบ™เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป„เบ›เบชเบนเปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเปเบกเปˆเบ™เบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™. เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบ›เบฑเบšเปƒเบŠเป‰เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”, เบ—เปˆเบฒเบ™เบˆเบฐเบ•เป‰เบญเบ‡เบเบฒเบ™เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ”เปƒเบซเบกเปˆเป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป‚เบ„เบ‡เบชเป‰เบฒเบ‡เบžเบทเป‰เบ™เบ–เบฒเบ™.

เบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบ”เป‰เบงเบเบกเบทเปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบก

เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบเบฒเบ™เปเบเป‰เป„เบ‚เบชเปเบฒเบฅเบฑเบšเบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบ”เป‰เบงเบเบ•เบปเบ™เป€เบญเบ‡. เป€เบžเบทเปˆเบญเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ™เบตเป‰, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบชเป‰เบฒเบ‡เบ—เปเปˆ CI/CD. เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบทเบญเบเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เป€เบžเบฒเบฐเบงเปˆเบฒเบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบขเปˆเบฒเบ‡เบ•เปเปˆเป€เบ™เบทเปˆเบญเบ‡เปเบกเปˆเบ™เบเบฑเบ‡เบšเปเปˆเบ—เบฑเบ™เบเบญเบกเบฎเบฑเบšเป„เบ”เป‰เบชเปเบฒเบฅเบฑเบšเบžเบงเบเป€เบฎเบปเบฒเบˆเบฒเบเบ—เบฑเบ”เบชเบฐเบ™เบฐเบ‚เบญเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เบชเบปเปˆเบ‡เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”เบ‡เบฒเบ™เปเบกเปˆเบ™เบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป‚เบ”เบเปƒเบŠเป‰เบ›เบธเปˆเบก, เปเบฅเบฐเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš - เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ Atlassian, Bitbucket เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบฅเบฐเบซเบฑเบ”เปเบซเบผเปˆเบ‡เปเบฅเบฐเป„เบกเป‰เป„เบœเปˆเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบเปเปˆเบชเป‰เบฒเบ‡. เบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเบ‚เบฝเบ™เบ•เบปเบงเบชเป‰เบฒเบ‡เปƒเบ™ Cake เป€เบžเบฒเบฐเบงเปˆเบฒเบกเบฑเบ™เบ„เบทเบเบฑเบ™เบเบฑเบš C#. เปเบžเบเป€เบเบ”เบ—เบตเปˆเบเบฝเบกเบžเป‰เบญเบกเบกเบฒเบฎเบญเบ” Artifactory, เปเบฅเบฐ Ansible เป„เบ›เบซเบฒเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบžเบงเบเป€เบ‚เบปเบฒเบชเบฒเบกเบฒเบ”เบ—เบปเบ”เบชเบญเบšเป„เบ”เป‰เบ—เบฑเบ™เบ—เบต.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบเบฒเบ™เบ•เบฑเบ”เป„เบกเป‰เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบ


เปƒเบ™เป€เบงเบฅเบฒเบซเบ™เบถเปˆเบ‡, เบซเบ™เบถเปˆเบ‡เปƒเบ™เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡ monolith เปเบกเปˆเบ™เบเบฒเบ™เบชเบฐเบซเบ™เบญเบ‡เบเบฒเบ™เบ•เบฑเบ”เป„เบกเป‰เบฎเปˆเบงเบกเบเบฑเบ™. เบžเบงเบเป€เบฎเบปเบฒเบเบฑเบ‡เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบ‚เบปเป‰เบฒเปƒเบˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบ•เป‰เบญเบ‡เป€เบฎเบฑเบ”เบเบฑเบšเบšเบฑเบ™เบ—เบถเบเบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™เบ—เบตเปˆเบขเบนเปˆเปƒเบ™เปเบœเปˆเบ™. เบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบ–เบทเบเบ‚เบฝเบ™เป€เบ›เบฑเบ™เป„เบŸเบฅเปŒเบ‚เปเป‰เบ„เบงเบฒเบก. เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเปƒเบŠเป‰ stack ELK เบกเบฒเบ”เบ•เบฐเบ–เบฒเบ™. เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป„เบ”เป‰เบ‚เบฝเบ™เบซเบฒ ELK เป‚เบ”เบเบเบปเบ‡เบœเปˆเบฒเบ™เบœเบนเป‰เปƒเบซเป‰เบšเปเบฅเบดเบเบฒเบ™, เปเบ•เปˆเบ•เบฑเบ”เบชเบดเบ™เปƒเบˆเบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบˆเบฐเบ”เบฑเบ”เปเบ›เบ‡เบšเบฑเบ™เบ—เบถเบเบ‚เปเป‰เบ„เบงเบฒเบก เปเบฅเบฐเบ‚เบฝเบ™ ID เบ•เบดเบ”เบ•เบฒเบกเบขเบนเปˆเปƒเบ™เบžเบงเบเบกเบฑเบ™เป€เบ›เบฑเบ™เบ•เบปเบงเบฅเบฐเบšเบธ, เป€เบžเบตเปˆเบกเบŠเบทเปˆเบšเปเบฅเบดเบเบฒเบ™, เป€เบžเบทเปˆเบญเปƒเบซเป‰เบšเบฑเบ™เบ—เบถเบเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบชเบฒเบกเบฒเบ”เบงเบดเป€เบ„เบฒเบฐเป„เบ”เป‰เปƒเบ™เบžเบฒเบเบซเบผเบฑเบ‡.

เบเบฒเบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบˆเบฒเบ monolith เป„เบ›เบชเบนเปˆ microservices: เบ›เบฐเบซเบงเบฑเบ”เบชเบฒเบ”เปเบฅเบฐเบเบฒเบ™เบ›เบฐเบ•เบดเบšเบฑเบ”

เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰ Filebeat, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบฎเบฑเบšเป‚เบญเบเบฒเบ”เบ—เบตเปˆเบˆเบฐเป€เบเบฑเบšเบเปเบฒเบ‚เปเป‰เบกเบนเบ™เบšเบฑเบ™เบ—เบถเบเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒเบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบ, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบซเบฑเบ™เบ›เปˆเบฝเบ™เบžเบงเบเบกเบฑเบ™, เปƒเบŠเป‰ Kibana เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เปเบšเบšเบชเบญเบšเบ–เบฒเบกเปƒเบ™ UI เปเบฅเบฐเป€เบšเบดเปˆเบ‡เบงเบดเบ—เบตเบเบฒเบ™เป‚เบ—เบซเบฒเบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™. Trace ID เบŠเปˆเบงเบเบซเบผเบฒเบเบเบฑเบšเบชเบดเปˆเบ‡เบ™เบตเป‰.

เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเปเบฅเบฐ debugging เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡


เปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบšเปเปˆเป€เบ‚เบปเป‰เบฒเปƒเบˆเบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบชเปˆเบงเบ™เบงเบดเบ—เบตเบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบเปเบฒเบฅเบฑเบ‡เบžเบฑเบ”เบ—เบฐเบ™เบฒ. เบ—เบธเบเบชเบดเปˆเบ‡เบ—เบธเบเบขเปˆเบฒเบ‡เปเบกเปˆเบ™เบ‡เปˆเบฒเบเบ”เบฒเบเบ”เป‰เบงเบ monolith; เบžเบงเบเป€เบฎเบปเบฒเปเบฅเปˆเบ™เบกเบฑเบ™เบขเบนเปˆเปƒเบ™เป€เบ„เบทเปˆเบญเบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™. เบ—เปเบฒเบญเบดเบ”เบžเบงเบเป€เบ‚เบปเบฒเบžเบฐเบเบฒเบเบฒเบกเป€เบฎเบฑเบ”เป€เบŠเบฑเปˆเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบš microservices, เปเบ•เปˆเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เป€เบžเบทเปˆเบญเป€เบ›เบตเบ”เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบฅเบฐเบžเบฒเบเบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบ—เบตเปˆ, เบ—เปˆเบฒเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป€เบ›เบตเบ”เบ•เบปเบงเบญเบทเปˆเบ™เบซเบผเบฒเบ, เปเบฅเบฐเบ™เบตเป‰เบเปเปˆเบšเปเปˆเบชเบฐเบ”เบงเบ. เบžเบงเบเป€เบฎเบปเบฒเบฎเบฑเบšเบฎเบนเป‰เบงเปˆเบฒเบžเบงเบเป€เบฎเบปเบฒเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เป„เบ”เป‰เบเป‰เบฒเบเป„เบ›เบ—เบตเปˆเบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบญเบญเบเบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เบ—เป‰เบญเบ‡เบ–เบดเปˆเบ™เบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบซเบผเบทเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบ•เป‰เบญเบ‡เบเบฒเบ™เบ—เบตเปˆเบˆเบฐ debug. เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบเบฑเบ‡เป€เบซเบผเบทเบญเปเบกเปˆเบ™เปƒเบŠเป‰เบˆเบฒเบเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบ—เบตเปˆเบเบปเบ‡เบเบฑเบšเบเบฒเบ™เบ•เบฑเป‰เบ‡เบ„เปˆเบฒเบเบฑเบš prod. เบซเบผเบฑเบ‡เบˆเบฒเบ debugging, เปƒเบ™เบฅเบฐเบซเบงเปˆเบฒเบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, เบชเปเบฒเบฅเบฑเบšเปเบ•เปˆเบฅเบฐเบงเบฝเบเบ‡เบฒเบ™, เบžเบฝเบ‡เปเบ•เปˆเบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบ—เบตเปˆเบกเบตเบเบฒเบ™เบ›เปˆเบฝเบ™เปเบ›เบ‡เปเบกเปˆเบ™เบญเบญเบเปƒเบซเป‰เบเบฑเบšเป€เบ„เบทเปˆเบญเบ‡เปเบกเปˆเบ‚เปˆเบฒเบเบเบฒเบ™เบ—เบปเบ”เบชเบญเบš. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบเบฒเบ™เปเบเป‰เป„เบ‚เป„เบ”เป‰เบ–เบทเบเบ—เบปเบ”เบชเบญเบšเปƒเบ™เบฎเบนเบšเปเบšเบšเบ—เบตเปˆเบกเบฑเบ™เบˆเบฐเบ›เบฒเบเบปเบ”เบขเบนเปˆเปƒเบ™เบเบฒเบ™เบœเบฐเบฅเบดเบ”เปƒเบ™เบญเบฐเบ™เบฒเบ„เบปเบ”.

เบกเบตเป€เบŠเบตเบšเป€เบงเบตเบ—เบตเปˆเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบชเบฐเบšเบฑเบšเบเบฒเบ™เบœเบฐเบฅเบดเบ”เป€เบ—เบปเปˆเบฒเบ™เบฑเป‰เบ™. เป€เบŠเบตเบšเป€เบงเบตเป€เบซเบผเบปเปˆเบฒเบ™เบตเป‰เบกเบตเบ„เบงเบฒเบกเบˆเปเบฒเป€เบ›เบฑเบ™เปƒเบ™เบเปเบฅเบฐเบ™เบตเบ‚เบญเบ‡เป€เบซเบ”เบเบฒเบ™, เป€เบžเบทเปˆเบญเบเบงเบ”เบเบฒเป€เบšเบดเปˆเบ‡เบเบฒเบ™เบˆเบฑเบ”เบชเบปเปˆเบ‡เบเปˆเบญเบ™เบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰เปเบฅเบฐเบเบฒเบ™เบเบถเบเบญเบปเบšเบฎเบปเบกเบžเบฒเบเปƒเบ™.

เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰เบซเป‰เบญเบ‡เบชเบฐเบซเบกเบธเบ” Specflow เบ—เบตเปˆเบ™เบดเบเบปเบก. เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เป‚เบ”เบเบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เป‚เบ”เบเปƒเบŠเป‰ NUnit เบ—เบฑเบ™เบ—เบตเบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบ•เบดเบ”เบ•เบฑเป‰เบ‡เบˆเบฒเบ Ansible. เบ–เป‰เบฒเบเบฒเบ™เบ„เบธเป‰เบกเบ„เบญเบ‡เบงเบฝเบเบ‡เบฒเบ™เปเบกเปˆเบ™เบญเบฑเบ”เบ•เบฐเป‚เบ™เบกเบฑเบ”เบขเปˆเบฒเบ‡เป€เบ•เบฑเบกเบชเปˆเบงเบ™, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™เบšเปเปˆเบˆเปเบฒเป€เบ›เบฑเบ™เบ•เป‰เบญเบ‡เบกเบตเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบนเปˆเบกเบท. เป€เบ–เบดเบ‡เปเบกเปˆเบ™เบงเปˆเบฒเบšเบฒเบ‡เบ„เบฑเป‰เบ‡เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ„เบนเปˆเบกเบทเป€เบžเบตเปˆเบกเป€เบ•เบตเบกเปเบกเปˆเบ™เบเบฑเบ‡เบ•เป‰เบญเบ‡เบเบฒเบ™. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰เปเบ—เบฑเบเปƒเบ™ Jira เป€เบžเบทเปˆเบญเบเปเบฒเบ™เบปเบ”เบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบ—เบตเปˆเบˆเบฐเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบšเบฑเบ™เบซเบฒเบชเบฐเป€เบžเบฒเบฐ.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เบ—เบปเบ”เบชเบญเบšเบเบฒเบ™เป‚เบซเบผเบ”เป„เบ”เป‰เป€เบžเบตเปˆเบกเบ‚เบถเป‰เบ™; เบเปˆเบญเบ™เบซเบ™เป‰เบฒเบ™เบตเป‰เบกเบฑเบ™เป„เบ”เป‰เบ–เบทเบเบ›เบฐเบ•เบดเบšเบฑเบ”เบžเบฝเบ‡เปเบ•เปˆเปƒเบ™เบเปเบฅเบฐเบ™เบตเบ—เบตเปˆเบซเบฒเบเบฒเบ. เบžเบงเบเป€เบฎเบปเบฒเปƒเบŠเป‰ JMeter เป€เบžเบทเปˆเบญเบ”เปเบฒเป€เบ™เบตเบ™เบเบฒเบ™เบ—เบปเบ”เบชเบญเบš, InfluxDB เป€เบžเบทเปˆเบญเป€เบเบฑเบšเบฎเบฑเบเบชเบฒเบžเบงเบเบกเบฑเบ™, เปเบฅเบฐ Grafana เป€เบžเบทเปˆเบญเบชเป‰เบฒเบ‡เบเบฒเบŸเบ‚เบฐเบšเบงเบ™เบเบฒเบ™.

เบžเบงเบเป€เบฎเบปเบฒเบšเบฑเบ™เบฅเบธเป„เบ”เป‰เบซเบเบฑเบ‡เปเบ”เปˆ?


เบเปˆเบญเบ™เบญเบทเปˆเบ™ เปเบปเบ”, เบžเบงเบเป€เบฎเบปเบฒ เบเบณ เบˆเบฑเบ”เปเบ™เบงเบ„เบงเบฒเบกเบ„เบดเบ”เบ‚เบญเบ‡ "เบเบฒเบ™เบ›เบปเบ”เบ›เปˆเบญเบ". เบซเบกเบปเบ”เปเบกเปˆเบ™เบเบฒเบ™เบ›เปˆเบญเบ monstrous เบชเบญเบ‡เป€เบ”เบทเบญเบ™เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆ colossus เบ™เบตเป‰เป„เบ”เป‰เบ–เบทเบเบ™เปเบฒเป„เบ›เปƒเบŠเป‰เปƒเบ™เบชเบฐเบžเบฒเบšเปเบงเบ”เบฅเป‰เบญเบกเบเบฒเบ™เบœเบฐเบฅเบดเบ”, เบ‚เบฑเบ”เบ‚เบงเบฒเบ‡เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ—เบธเบฅเบฐเบเบดเบ”เบŠเบปเปˆเบงเบ„เบฒเบง. เบ•เบญเบ™เบ™เบตเป‰เบžเบงเบเป€เบฎเบปเบฒเบ™เบณเปƒเบŠเป‰เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป‚เบ”เบเบชเบฐเป€เบฅเปˆเบเปƒเบ™เบ—เบธเบเป† 1,5 เบกเบทเป‰, เบˆเบฑเบ”เบเบธเปˆเบกเบžเบงเบเบกเบฑเบ™เป€เบžเบฒเบฐเบงเปˆเบฒเบžเบงเบเบกเบฑเบ™เบ”เบณเป€เบ™เบตเบ™เบ‡เบฒเบ™เบซเบผเบฑเบ‡เบˆเบฒเบเบเบฒเบ™เบญเบฐเบ™เบธเบกเบฑเบ”.

เบšเปเปˆเบกเบตเบ„เบงเบฒเบกเบฅเบปเป‰เบกเป€เบซเบผเบงเบ—เบตเปˆเบฎเป‰เบฒเบเปเบฎเบ‡เบขเบนเปˆเปƒเบ™เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ. เบ–เป‰เบฒเบžเบงเบเป€เบฎเบปเบฒเบ›เปˆเบญเบ microservice เบ—เบตเปˆเบกเบต bug, เบซเบผเบฑเบ‡เบˆเบฒเบเบ™เบฑเป‰เบ™, เบŸเบฑเบ‡เบŠเบฑเบ™เบ—เบตเปˆเบเปˆเบฝเบงเบ‚เป‰เบญเบ‡เบเบฑเบšเบกเบฑเบ™เบˆเบฐเบ–เบทเบเบ—เปเบฒเบฅเบฒเบ, เปเบฅเบฐเบŸเบฑเบ‡เบŠเบฑเบ™เบญเบทเปˆเบ™เป†เบ—เบฑเบ‡เบซเบกเบปเบ”เบˆเบฐเบšเปเปˆเป„เบ”เป‰เบฎเบฑเบšเบœเบปเบ™เบเบฐเบ—เบปเบš. เบ™เบตเป‰เบ›เบฑเบšเบ›เบธเบ‡เบ›เบฐเบชเบปเบšเบเบฒเบ™เบ‚เบญเบ‡เบœเบนเป‰เปƒเบŠเป‰เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบ.

เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เบ„เบงเบšเบ„เบธเบกเบฎเบนเบšเปเบšเบšเบเบฒเบ™เบ™เปเบฒเปƒเบŠเป‰. เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เป€เบฅเบทเบญเบเบเบธเปˆเบกเบšเปเบฅเบดเบเบฒเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบˆเบฒเบเบชเปˆเบงเบ™เบ—เบตเปˆเป€เบซเบผเบทเบญเบ‚เบญเบ‡เบเบฒเบ™เปเบเป‰เป„เบ‚, เบ–เป‰เบฒเบˆเปเบฒเป€เบ›เบฑเบ™.

เบ™เบญเบเบˆเบฒเบเบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเป„เบ”เป‰เบซเบผเบธเบ”เบฅเบปเบ‡เบขเปˆเบฒเบ‡เบซเบผเบงเบ‡เบซเบผเบฒเบเบšเบฑเบ™เบซเบฒเบ—เบตเปˆเบกเบตเปเบ–เบงเบ‚เบฐเบซเบ™เบฒเบ”เปƒเบซเบเปˆเบ‚เบญเบ‡เบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡. เปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™เบžเบงเบเป€เบฎเบปเบฒเบกเบตเบ—เบตเบกเบ‡เบฒเบ™เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ—เบตเปˆเป€เบฎเบฑเบ”เบงเบฝเบเบเบฑเบšเบšเบฒเบ‡เบชเปˆเบงเบ™เบ‚เบญเบ‡เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เป€เบ›เบฑเบ™เป€เบญเบเบฐเบฅเบฒเบ”. เบ‚เบฐเบšเบงเบ™เบเบฒเบ™ Scrum เปเบกเปˆเบ™เปเบฅเป‰เบงเบ”เบตเบขเบนเปˆเบ—เบตเปˆเบ™เบตเป‰. เบ—เบตเบกเบ‡เบฒเบ™เบชเบฐเป€เบžเบฒเบฐเบญเบฒเบ”เบˆเบฐเบกเบตเป€เบˆเบปเป‰เบฒเบ‚เบญเบ‡เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เปเบเบเบ•เปˆเบฒเบ‡เบซเบฒเบเบ—เบตเปˆเบกเบญเบšเบซเบกเบฒเบเบงเบฝเบเบ‡เบฒเบ™เปƒเบซเป‰เบกเบฑเบ™.

Summary

  • Microservices เปเบกเปˆเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบ”เบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™ decomposing เบฅเบฐเบšเบปเบšเบชเบฐเบฅเบฑเบšเบชเบฑเบšเบŠเป‰เบญเบ™. เปƒเบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™, เบžเบงเบเป€เบฎเบปเบฒเป€เบฅเบตเปˆเบกเป€เบ‚เบปเป‰เบฒเปƒเบˆเบชเบดเปˆเบ‡เบ—เบตเปˆเบขเบนเปˆเปƒเบ™เบฅเบฐเบšเบปเบšเบ‚เบญเบ‡เบžเบงเบเป€เบฎเบปเบฒ, เบชเบฐเบžเบฒเบšเบเบฒเบ™เบ—เบตเปˆเบˆเปเบฒเบเบฑเบ”เปเบกเปˆเบ™เบซเบเบฑเบ‡, เบ‚เบญเบšเป€เบ‚เบ”เบ‚เบญเบ‡เบžเบงเบเป€เบ‚เบปเบฒเบขเบนเปˆเบšเปˆเบญเบ™เปƒเบ”. เบ™เบตเป‰เบŠเปˆเบงเบเปƒเบซเป‰เบ—เปˆเบฒเบ™เบชเบฒเบกเบฒเบ”เปเบˆเบเบขเบฒเบเบเบฒเบ™เบ›เบฑเบšเบ›เบธเบ‡เบฅเบฐเบซเบงเปˆเบฒเบ‡เป‚เบกเบ”เบนเบ™เป„เบ”เป‰เบขเปˆเบฒเบ‡เบ–เบทเบเบ•เป‰เบญเบ‡เปเบฅเบฐเบ›เป‰เบญเบ‡เบเบฑเบ™เบ„เบงเบฒเบกเบชเบฑเบšเบชเบปเบ™เบ‚เบญเบ‡เบฅเบฐเบซเบฑเบ”.
  • Microservices เปƒเบซเป‰เบœเบปเบ™เบ›เบฐเป‚เบซเบเบ”เบ‚เบญเบ‡เบญเบปเบ‡เบเบฒเบ™เบˆเบฑเบ”เบ•เบฑเป‰เบ‡. เบžเบงเบเบกเบฑเบ™เบกเบฑเบเบˆเบฐเบ–เบทเบเบเปˆเบฒเบงเป€เบ–เบดเบ‡เบžเบฝเบ‡เปเบ•เปˆเป€เบ›เบฑเบ™เบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒ, เปเบ•เปˆเบชเบฐเบ–เบฒเบ›เบฑเบ”เบ•เบฐเบเบฐเบเปเบฒเปƒเบ”เบเปเปˆเบ•เบฒเบกเปเบกเปˆเบ™เบˆเปเบฒเป€เบ›เบฑเบ™เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเบดเบ”, เปเบฅเบฐเบšเปเปˆเปเบกเปˆเบ™เบ‚เบญเบ‡เบ•เบปเบ™เป€เบญเบ‡. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบžเบงเบเป€เบฎเบปเบฒเบชเบฒเบกเบฒเบ”เป€เบงเบปเป‰เบฒเป„เบ”เป‰เบงเปˆเบฒ microservices เปเบกเปˆเบ™เป€เบซเบกเบฒเบฐเบชเบปเบกเบ”เบตเบชเปเบฒเบฅเบฑเบšเบเบฒเบ™เปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเปƒเบ™เบ—เบตเบกเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบ, เป€เบ™เบทเปˆเบญเบ‡เบˆเบฒเบเบงเปˆเบฒ Scrum เปเบกเปˆเบ™เบกเบตเบ„เบงเบฒเบกเบ™เบดเบเบปเบกเบซเบผเบฒเบเปƒเบ™เบ›เบฑเบ”เบˆเบธเบšเบฑเบ™.
  • เบเบฒเบ™โ€‹เปเบเบโ€‹เบญเบญเบโ€‹เป€เบ›เบฑเบ™โ€‹เบ‚เบฐโ€‹เบšเบงเบ™โ€‹เบเบฒเบ™โ€‹เบŠโ€‹เป‰โ€‹เปเบฒโ€‹. เบ—เปˆเบฒเบ™เบšเปเปˆเบชเบฒเบกเบฒเบ”เป€เบญเบปเบฒเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเปเบฅเบฐเบžเบฝเบ‡เปเบ•เปˆเปเบšเปˆเบ‡เบญเบญเบเป€เบ›เบฑเบ™ microservices. เบœเบฐเบฅเบดเบ”เบ•เบฐเบžเบฑเบ™เบ—เบตเปˆเป„เบ”เป‰เบฎเบฑเบšเบœเบปเบ™เปเบกเปˆเบ™เบšเปเปˆเบซเบ™เป‰เบฒเบˆเบฐเป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”. เปƒเบ™เป€เบงเบฅเบฒเบ—เบตเปˆเบเบฒเบ™เบญเบธเบ—เบดเบ” microservices, เบกเบฑเบ™เป€เบ›เบฑเบ™เบ›เบฐเป‚เบซเบเบ”เบ—เบตเปˆเบˆเบฐเบ‚เบฝเบ™เบ„เบทเบ™เบกเปเบฅเบฐเบ”เบปเบเบ—เบตเปˆเบกเบตเบขเบนเปˆเปเบฅเป‰เบง, เบ™เบฑเป‰เบ™เปเบกเปˆเบ™, เบ›เปˆเบฝเบ™เบกเบฑเบ™เป€เบ‚เบปเป‰เบฒเป„เบ›เปƒเบ™เบฅเบฐเบซเบฑเบ”เบ—เบตเปˆเบžเบงเบเป€เบฎเบปเบฒเบกเบฑเบเปเบฅเบฐเบ•เบญเบšเบชเบฐเบซเบ™เบญเบ‡เบ„เบงเบฒเบกเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบญเบ‡เบ—เบธเบฅเบฐเบเบดเบ”เบ—เบตเปˆเบ”เบตเบเบงเปˆเบฒเปƒเบ™เบ”เป‰เบฒเบ™เบเบฒเบ™เป€เบฎเบฑเบ”เบงเบฝเบเปเบฅเบฐเบ„เบงเบฒเบกเป„เบง.

    เบ„เปเบฒโ€‹เป€เบ•เบทเบญเบ™โ€‹เบ‚เบฐโ€‹เบซเบ™เบฒเบ”โ€‹เบ™เป‰เบญเบโ€‹: เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเปƒเบ™เบเบฒเบ™เป€เบ„เบทเปˆเบญเบ™เบเป‰เบฒเบเป„เบ›เบชเบนเปˆ microservices เปเบกเปˆเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เบชเปเบฒเบ„เบฑเบ™. เบกเบฑเบ™เปƒเบŠเป‰เป€เบงเบฅเบฒเบ”เบปเบ™เป€เบžเบทเปˆเบญเปเบเป‰เป„เบ‚เบšเบฑเบ™เบซเบฒเบžเบทเป‰เบ™เบ–เบฒเบ™เป‚เบ„เบ‡เบฅเปˆเบฒเบ‡เบขเปˆเบฒเบ‡เบ”เบฝเบง. เบ”เบฑเปˆเบ‡เบ™เบฑเป‰เบ™, เบ–เป‰เบฒเบ—เปˆเบฒเบ™เบกเบตเบ„เปเบฒเบฎเป‰เบญเบ‡เบชเบฐเบซเบกเบฑเบเบ‚เบฐเบซเบ™เบฒเบ”เบ™เป‰เบญเบเบ—เบตเปˆเบšเปเปˆเบ•เป‰เบญเบ‡เบเบฒเบ™เบ‚เบฐเบซเบ™เบฒเบ”เบชเบฐเป€เบžเบฒเบฐ, เป€เบงเบฑเป‰เบ™เป€เบชเบเปเบ•เปˆเบงเปˆเบฒเบ—เปˆเบฒเบ™เบกเบตเบฅเบนเบเบ„เป‰เบฒเบˆเปเบฒเบ™เบงเบ™เบซเบฅเบฒเบเบ—เบตเปˆเปเบ‚เปˆเบ‡เบ‚เบฑเบ™เบชเปเบฒเบฅเบฑเบšเบ„เบงเบฒเบกเบชเบปเบ™เปƒเบˆเปเบฅเบฐเป€เบงเบฅเบฒเบ‚เบญเบ‡เบ—เบตเบกเบ‡เบฒเบ™เบ‚เบญเบ‡เบ—เปˆเบฒเบ™, เบเบฒเบ™เบšเปเบฅเบดเบเบฒเบ™เบˆเบธเบ™เบฅเบฐเบžเบฒเบเบญเบฒเบ”เบˆเบฐเบšเปเปˆเปเบกเปˆเบ™เบชเบดเปˆเบ‡เบ—เบตเปˆเบ—เปˆเบฒเบ™เบ•เป‰เบญเบ‡เบเบฒเบ™เปƒเบ™เบกเบทเป‰เบ™เบตเป‰. เบกเบฑเบ™เบ‚เป‰เบญเบ™เบ‚เป‰เบฒเบ‡เปเบžเบ‡. เบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เบ‚เบฐเบšเบงเบ™เบเบฒเบ™เบ”เป‰เบงเบ microservices, เบ„เปˆเบฒเปƒเบŠเป‰เบˆเปˆเบฒเบเปƒเบ™เป€เบšเบทเป‰เบญเบ‡เบ•เบปเป‰เบ™เบˆเบฐเบชเบนเบ‡เบเบงเปˆเบฒเบ–เป‰เบฒเบ—เปˆเบฒเบ™เป€เบฅเบตเปˆเบกเบ•เบปเป‰เบ™เป‚เบ„เบ‡เบเบฒเบ™เบ”เบฝเบงเบเบฑเบ™เบเบฑเบšเบเบฒเบ™เบžเบฑเบ”เบ—เบฐเบ™เบฒเบ‚เบญเบ‡ monolith.

    P.S. เป€เบฅเบทเปˆเบญเบ‡เบ—เบตเปˆเบกเบตเบ„เบงเบฒเบกเบฎเบนเป‰เบชเบถเบเบซเบผเบฒเบ (เปเบฅเบฐเป€เบ›เบฑเบ™เบ–เป‰เบฒเบซเบฒเบเบงเปˆเบฒเบ—เปˆเบฒเบ™เบชเปˆเบงเบ™เบšเบธเบเบ„เบปเบ™) - เบญเบตเบ‡เบ•เบฒเบกเบเบฒเบ™ เบเบฒเบ™เป€เบŠเบทเปˆเบญเบกเบ•เปเปˆ.
    เบ™เบตเป‰เปเบกเปˆเบ™เบชเบฐเบšเบฑเบšเป€เบ•เบฑเบกเบ‚เบญเบ‡เบšเบปเบ”เบฅเบฒเบเบ‡เบฒเบ™.

เปเบซเบผเปˆเบ‡เบ‚เปเป‰เบกเบนเบ™: www.habr.com

เป€เบžเบตเปˆเบกเบ„เบงเบฒเบกเบ„เบดเบ”เป€เบซเบฑเบ™