αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž

αžŸαž“αŸ’αž“αž·αžŸαžΈαž‘αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž“αžΉαž„αž’αŸ’αžœαžΎαž‘αžΎαž„αž“αŸ… Yekaterinburg αž“αŸ…αžαŸ’αž„αŸƒαž‘αžΈ 19 αžαŸ‚αž˜αŸαžŸαžΆ αž”αŸ„αŸ‡αž…αŸ„αž›. αž“αžΆαž™αž€αž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αŸƒαž•αŸ’αž“αŸ‚αž€ Backend - αž”αŸ’αžšαž’αžΆαž“αž€αžΆαžšαž·αž™αžΆαž›αŸαž™αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ Yandex αž›αŸ„αž€ Andrey Zharinov αž”αŸ’αžšαž’αžΆαž“αž•αŸ’αž“αŸ‚αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž“αŸƒαž˜αž‡αŸ’αžˆαž˜αžŽαŸ’αžŒαž›αž‘αŸ†αž“αžΆαž€αŸ‹αž‘αŸ†αž“αž„ Naumen αž›αŸ„αž€ Konstantin Beklemishev αž“αž·αž„αžœαž·αžŸαŸ’αžœαž€αžšαž•αŸ’αž“αŸ‚αž€αž‘αž“αŸ‹αž˜αž€αž–αžΈ Kontur Denis Tarasov αž”αžΆαž“αž”αŸ’αžšαžΆαž”αŸ‹αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž’αžΆαž…αžšαŸ†αž–αžΉαž„αž‘αž»αž€αž“αŸ…αž€αŸ’αž“αž»αž„αžŸαž“αŸ’αž“αž·αžŸαžΈαž‘αŸ”

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

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž

αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸ

αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž–αžΈαžšαžŠαŸ†αž”αžΌαž„αž‚αžΊαž‘αžΆαž€αŸ‹αž‘αž„αž‚αŸ’αž“αžΆ αž αžΎαž™αž™αžΎαž„αž–αž·αžαž‡αžΆαžŽαŸ‚αž“αžΆαŸ†αž±αŸ’αž™αžŸαŸ’αžαžΆαž”αŸ‹αž–αž½αž€αž‚αŸαž‘αžΆαŸ†αž„αž–αžΈαžšαŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž”αž‰αŸ’αž αžΆ 1. αž“αŸ…αž–αŸαž›αž”αŸ’αžšαžΎ APIs αžαžΆαž„αž€αŸ’αžšαŸ… αž”αž‰αŸ’αž αžΆαž“αŸƒαžŸαž»αž–αž›αž—αžΆαž–αž‘αž·αž“αŸ’αž“αž“αŸαž™αž…αžΌαž›αž‚αžΊαž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž‡αžΆαž–αž·αžŸαŸαžŸαŸ” αžŸαž»αž–αž›αž—αžΆαž–αž‘αž˜αŸ’αžšαž„αŸ‹αžαŸ‚αž˜αž½αž™αž˜αž»αžαž˜αž·αž“αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαžΆαž“αŸ‹αž‘αŸ αžœαžΆαž€αŸαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž•αž„αžŠαŸ‚αžš αžŠαžΎαž˜αŸ’αž”αžΈαž’αžΆαž“αžΆαž”αžΆαž“αž“αžΌαžœαž—αžΆαž–αžŸαŸŠαžΈαžŸαž„αŸ’αžœαžΆαž€αŸ‹αž‚αŸ’αž“αžΆαž“αŸƒαž‘αž·αž“αŸ’αž“αž“αŸαž™αŸ” αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž αžΆαž€αŸ‹αžŠαžΌαž…αž‡αžΆαž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž€αŸαžŠαŸ„αž™ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž…αŸ†αž“αž½αž“αž”αŸ’αžšαž—αž–αžαžΆαž„αž€αŸ’αžšαŸ…αž€αžΎαž“αž‘αžΎαž„ αž€αžΆαžšαžαŸ’αžšαž½αžαž–αž·αž“αž·αžαŸ’αž™αž”αž»αž‚αŸ’αž‚αž›αž‡αžΆαž…αŸ’αžšαžΎαž“αž’αžΆαž…αž€αŸ’αž›αžΆαž™αž‡αžΆαž˜αž·αž“αž’αžΆαž…αž‚αŸ’αžšαž”αŸ‹αž‚αŸ’αžšαž„αž”αžΆαž“αž™αŸ‰αžΆαž„αž„αžΆαž™αžŸαŸ’αžšαž½αž›αŸ” αž›αŸ„αž€ Sergey Dolganov αž–αžΈ αž˜αž“αž»αžŸαŸ’αžŸαž’αžΆαž€αŸ’αžšαž€αŸ‹ Martians αž“αžΉαž„αž”αž„αŸ’αž αžΆαž‰αž–αžΈαžœαž·αž’αžΈαžŸαžΆαžŸαŸ’αžšαŸ’αžαžŠαŸ‚αž›αž˜αžΆαž“αžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’αž…αŸ†αž–αŸ„αŸ‡αž”αž‰αŸ’αž αžΆαžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž”αž…αŸ’αž…αŸαž€αž‘αŸαžŸαžŸαžšαžŸαŸαžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž˜αž»αžαž„αžΆαžšαŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž”αž‰αŸ’αž αžΆ 2. αžŠαžΎαž˜αŸ’αž”αžΈαž±αŸ’αž™αž˜αžΆαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž“αŸ…αž–αŸαž›αž’αŸ’αžœαžΎαž’αž“αŸ’αžαžšαž€αž˜αŸ’αž˜αž‡αžΆαž˜αž½αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸ αžœαžΆαž…αžΆαŸ†αž”αžΆαž…αŸ‹αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž…αŸ†αž“αž½αž“αž“αŸƒαž€αžΆαžšαž αŸ…αž‘αŸ…αž€αžΆαž“αŸ‹ API αž“αž·αž„αž…αŸ†αž“αž½αž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸ‚αž›αž”αžΆαž“αžαŸ’αžšαž‘αž”αŸ‹αž˜αž€αžœαž·αž‰αŸ” αžœαžΆαž‘αžΆαž˜αž‘αžΆαžšαž€αžΆαžšαžšαž…αž“αžΆαž’αž„αŸ’αž‚αž—αžΆαž–αž‡αžΆαž”αŸ‹αž›αžΆαž”αŸ‹αž“αŸ…αž€αž˜αŸ’αžšαž·αžαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαŸ” αž›αŸ„αž€ Dmitry Tsepelev (αž˜αž“αž»αžŸαŸ’αžŸαž’αžΆαž€αŸ’αžšαž€αŸ‹ Martians) αž“αžΉαž„αž–αž“αŸ’αž™αž›αŸ‹αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αž“αŸαŸ‡αž’αžΆαž…αžαŸ’αžšαžΌαžœαž”αžΆαž“αž’αŸ’αžœαžΎαž”αŸ’αžšαž€αž”αžŠαŸ„αž™αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αžŠαŸ„αž™αž”αŸ’αžšαžΎαž‘αžŸαŸ’αžŸαž“αžœαž·αž‡αŸ’αž‡αžΆ αž“αž·αž„αž§αž”αž€αžšαžŽαŸαž“αŸƒ GraphQL αž™αž€αž…αž·αžαŸ’αžαž‘αž»αž€αžŠαžΆαž€αŸ‹αž›αžΎαž—αžΆαž–αžαž»αžŸαž”αŸ’αž›αŸ‚αž€αž‚αŸ’αž“αžΆ αž“αž·αž„αž”αŸ’αžšαŸ€αž”αž’αŸ€αž”αž§αž‘αžΆαž αžšαžŽαŸαž‡αžΆαž˜αž½αž™ REST αž”αŸ’αžšαž–αŸƒαžŽαžΈαŸ”

αž”αŸ’αž›αž»αž€αž‘αžΈαž–αžΈαžšαž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž€αžΆαžšαžšαž½αž˜αž”αž‰αŸ’αž…αžΌαž›αž‚αŸ’αž“αžΆαž“αŸƒ Postgres αž“αž·αž„ Go αŸ” αž‘αŸ…αžŸαŸ’αžαžΆαž”αŸ‹αž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαžšαž”αžŸαŸ‹ Avito αž“αž·αž„ Yandex :)

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αžαžΎαž’αŸ’αž“αž€αž˜αžΆαž“ Postgres αž αžΎαž™αž…αž„αŸ‹αž”αŸ’αžšαžΎ Go αž“αŸ…αž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž“αŸαŸ‡αž‡αžΆαž›αžΎαž€αžŠαŸ†αž”αžΌαž„αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€? αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž“αŸαŸ‡αž“αžΉαž„αž‡αž½αž™αžŸαž“αŸ’αžŸαŸ†αžŸαŸ†αž…αŸƒαž–αŸαž›αžœαŸαž›αžΆαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž”αžΆαž“αž™αŸ‰αžΆαž„αž…αŸ’αžšαžΎαž“αŸ” αžœαž·αžŸαŸ’αžœαž€αžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αŸ…αž€αŸ’αž“αž»αž„ ធអវីតូ Artemy Ryabinkov αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž§αž”αž€αžšαžŽαŸ αž“αž·αž„αž—αžΆαž–αžŸαŸ’αž˜αž»αž‚αžŸαŸ’αž˜αžΆαž‰αž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž˜αžΌαž›αžŠαŸ’αž‹αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™αž“αŸαŸ‡αž“αŸ…αž€αŸ’αž“αž»αž„ Go αžŠαŸ„αž™αž”αŸ’αžšαžΎαž§αž‘αžΆαž αžšαžŽαŸαž“αŸƒαž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αž‚αžΆαžαŸ‹αž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž‡αžΆαžšαŸ€αž„αžšαžΆαž›αŸ‹αžαŸ’αž„αŸƒαž“αŸ…αž€αŸ’αž“αž»αž„ Avito αŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž PostgreSQL αž“αž·αž„αž€αžΆαžšαž”αž˜αŸ’αžšαž»αž„αž‘αž»αž€αž‘αž·αž“αŸ’αž“αž“αŸαž™? αžœαžΆαž αžΆαž€αŸ‹αž”αžΈαžŠαžΌαž…αž‡αžΆαž”αŸ’αžšαž’αžΆαž“αž”αž‘αž“αŸαŸ‡αžαŸ’αžšαžΌαžœαž”αžΆαž“αžŸαž·αž€αŸ’αžŸαžΆαž™αŸ‰αžΆαž„αž‘αžΌαž›αŸ†αž‘αžΌαž›αžΆαž™αžšαž½αž…αž αžΎαž™αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž…αŸ†αžŽαŸαŸ‡αžŠαžΉαž„αž“αžΉαž„αž˜αž·αž“αž–αŸαž‰αž›αŸαž‰αž‘αŸ αžšαž αžΌαžαžŠαž›αŸ‹αž’αŸ’αž“αž€αžŠαžΉαž„αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž›αžœαžΆαž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„ Yandex: αž”αžšαž·αž˜αžΆαžŽαž‘αž·αž“αŸ’αž“αž“αŸαž™αžŠαŸαž’αŸ†αžŸαž˜αŸ’αž”αžΎαž˜ αžαž˜αŸ’αžšαžΌαžœαž€αžΆαžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž”αž„αŸ’αž αžΆαž”αŸ‹ αž€αžΆαžšαž’αŸŠαž·αž“αž‚αŸ’αžšαžΈαž” αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αŸ‰αžΆαžšαŸ‰αžΆαž‘αŸ‚αž› αž“αž·αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŸαŸŠαžΈαž—αžΈαž™αžΌαž–αž αž»αžŸαŸ’αž“αžΌαž›αž”αŸ’αžšαž€αž”αžŠαŸ„αž™αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–αž”αŸ†αž•αž»αžαŸ” Andrey Borodin αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžŸαŸ’αžαžΆαž”αžαŸ’αž™αž€αž˜αŸ’αž˜αžšαž”αžŸαŸ‹ WAL-G αžŠαŸ‚αž›αž‡αžΆαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αŸ’αžšαž—αž–αž”αžΎαž€αž…αŸ†αž αž“αŸ…αž€αŸ’αž“αž»αž„ Go αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαžšαž€αŸ’αžŸαžΆαž‘αž»αž€αž‡αžΆαž”αž“αŸ’αž Postgres αž“αž·αž„ MySQL αžŠαŸ‚αž› Yandex αž€αŸ†αž–αž»αž„αž’αž—αž·αžœαžŒαŸ’αžαž™αŸ‰αžΆαž„αžŸαž€αž˜αŸ’αž˜ αž αžΎαž™αž’αŸ’αž“αž€αž’αžΆαž…αž”αŸ’αžšαžΎαž€αŸ’αž“αž»αž„αž‚αž˜αŸ’αžšαŸ„αž„αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αŸ”

αž”αŸ’αž›αž»αž€αž‘αžΈαž”αžΈαž‚αžΊαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αž…αžΆαž”αŸ‹αž’αžΆαžšαž˜αŸ’αž˜αžŽαŸαž›αžΎαž€αžΆαžšαž‘αž‘αž½αž›αžŸαŸ’αž‚αžΆαž›αŸ‹αž€αžΆαžšαž“αž·αž™αžΆαž™ αž“αž·αž„αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŸαŸ†αž™αŸ„αž‚ αžŠαŸ‚αž› ASR αž“αž·αž„ TTS αž‚αžΊαž‡αžΆαž’αž€αŸ’αžŸαžšαž€αžΆαžαŸ‹αžŠαŸ‚αž›αž’αžΆαž…αž™αž›αŸ‹αž”αžΆαž“ αž“αž·αž„αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αžŠαŸ‚αž›αž”αž„αŸ’αž€αžΎαžαž‡αŸ†αž“αž½αž™αž€αžΆαžšαžŸαŸ†αž‘αŸαž„αŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž‡αŸ†αž“αž½αž™αž€αžΆαžšαžŸαŸ†αž‘αŸαž„αž‚αžΊαžŸαŸ’αžαž·αžαž“αŸ…αž€αŸ†αž–αžΌαž›αž“αŸƒαž”αŸ’αžšαž‡αžΆαž”αŸ’αžšαž·αž™αž—αžΆαž–αŸ” αž€αžΆαžšαž”αž„αŸ’αž€αžΎαžαž‡αŸ†αž“αžΆαž‰αž•αŸ’αž‘αžΆαž›αŸ‹αžαŸ’αž›αž½αž“αžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž–αž½αž€αž‚αŸαžŽαžΆαž˜αž½αž™αž‚αžΊαž˜αž·αž“αž„αžΆαž™αžŸαŸ’αžšαž½αž›αž“αŸ„αŸ‡αž‘αŸ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αžŸαžΆαž˜αž‰αŸ’αž‰αžŽαžΆαžŸαŸ‹αŸ” αž‘αŸ„αŸ‡αž‡αžΆαž™αŸ‰αžΆαž„αžŽαžΆαž€αŸαžŠαŸ„αž™ αž‚αŸαžŠαžΉαž„αžαž·αž…αžαž½αž…αž’αŸ†αž–αžΈαž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž“αŸƒαž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαž“αŸαŸ‡αŸ” Vitaly Semyachkin αž–αžΈ αžšαž…αž“αžΆαž”αŸαž‘αŸ’αž˜αž™αž“αŸ’αžαž αŸ„αŸ‡ αž“αžΉαž„αž–αž·αž“αž·αžαŸ’αž™αž‘αžΎαž„αžœαž·αž‰αž“αžΌαžœαžŸαž˜αžαŸ’αžαž—αžΆαž– αž“αž·αž„αžŠαŸ‚αž“αž€αŸ†αžŽαžαŸ‹αž“αŸƒαž‡αŸ†αž“αž½αž™αž€αžΆαžšαžŸαŸ†αžαžΆαž“αŸ‹αŸ— αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αŸ†αž–αžΈαž”αž‰αŸ’αž αžΆαž”αŸ’αžšαž—αŸαž‘αžŽαžΆαžŠαŸ‚αž›αž’αžΆαž…αž“αžΉαž„αž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ†αž’αŸ’αž“αž€ αžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž™αž€αžˆαŸ’αž“αŸ‡αž–αž½αž€αž‚αŸαžŠαŸ„αž™αž—αžΆαž–αž€αŸ’αž›αžΆαž αžΆαž“ αž“αž·αž„αž‡αžΆαž‘αžΌαž‘αŸ… αžšαž”αŸ€αž”αžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αžšαŸ€αž”αž…αŸ†αžšαžΏαž„αž‘αžΆαŸ†αž„αž˜αžΌαž›αž“αŸαŸ‡αŸ” αž›αžΎαžŸαž–αžΈαž“αŸαŸ‡αž‘αŸ€αž Vitaly αž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαž“αŸƒαž€αžΆαžšαž€αžŸαžΆαž„ "αž€αžΆαžšαž”αŸ’αžšαž‡αž»αŸ†αžŠαŸαž†αŸ’αž›αžΆαžαžœαŸƒ" αžŠαŸ„αž™αž•αŸ’αž’αŸ‚αž€αž›αžΎ Yandex.Station αŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž€αŸ’αžšαž»αž˜αž αŸŠαž»αž“αžˆαžΆαž“αž˜αž»αžαž‚αŸαž•αŸ’αžαž›αŸ‹ APIs αžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αž€αžΆαžšαž€αžŸαžΆαž„αž‡αŸ†αž“αž½αž™αž€αžΆαžšαžŸαŸ†αž‘αŸαž„αŸ” αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž…αž»αŸ‡αž™αŸ‰αžΆαž„αžŽαžΆαž”αžΎαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αžαžΆαž„αž€αŸ’αžšαŸ…αž˜αž·αž“αž˜αžΆαž“? IN αžœαžŽαŸ’αžŒαžœαž„αŸ’αž€ αž”αžΆαž“αžŠαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž”αž‰αŸ’αž αžΆαž“αŸαŸ‡ αž‘αŸ„αŸ‡αž”αžΈαž‡αžΆαž•αŸ’αž›αžΌαžœαž”αŸ’αžšαŸ‚αž‘αŸ…αž‡αžΆαž”αž“αŸ’αž›αžΆαž€αŸαžŠαŸ„αž™αŸ” Victor Kondoba ΠΈ Svetlana Zavyalova αž“αžΉαž„αž…αŸ‚αž€αžšαŸ†αž›αŸ‚αž€αž”αž‘αž–αž·αžŸαŸ„αž’αž“αŸαžšαž”αžŸαŸ‹αž–αž½αž€αž‚αŸαž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹αžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™αž€αžΆαžšαž‘αž‘αž½αž›αžŸαŸ’αž‚αžΆαž›αŸ‹αž€αžΆαžšαž“αž·αž™αžΆαž™αž€αŸ’αž“αž»αž„αžαŸ†αž”αž“αŸ‹ αž“αŸ…αž–αŸαž›αžŠαŸ‚αž›αž˜αžΆαž“αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŠαŸ„αž™αžŸαŸ’αžœαŸαž™αž”αŸ’αžšαžœαžαŸ’αžαž· αž”αž„αŸ’αž αžΆαž‰αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž‚αž½αžšαž•αŸ’αžαŸ„αžαž›αžΎ αž“αž·αž„αž’αŸ’αžœαžΈαžŠαŸ‚αž›αž’αŸ’αž“αž€αž’αžΆαž…αž›αŸ‡αž”αž„αŸ‹αžŠαžΎαž˜αŸ’αž”αžΈαž”αž„αŸ’αž€αžΎαž“αž”αŸ’αžšαžŸαž·αž‘αŸ’αž’αž—αžΆαž–

αžαžΎαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž“αžΉαž„αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαž‘αŸ€αž?

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αžαŸ’αž˜αžΈαŸ—αž“αŸαŸ‡ αž”αŸ’αžšαž—αŸαž‘αž‘αž·αž“αŸ’αž“αž“αŸαž™αžαŸ’αž˜αžΈαž”αžΆαž“αž”αž„αŸ’αž αžΆαž‰αžαŸ’αž›αž½αž“αž“αŸ…αž€αŸ’αž“αž»αž„ Redis 5 - streams αž“αŸαŸ‡αž‚αžΊαž‡αžΆαž€αžΆαžšαž’αž“αž»αžœαžαŸ’αžαž‚αŸ†αž“αž·αžαž–αžΈαžˆαŸ’αž˜αž½αž‰αž€αžŽαŸ’αžαžΆαž›αžŸαžΆαžšαžŠαŸαž–αŸαž‰αž“αž·αž™αž˜ Kafka αŸ” Denis Kataev (Tinkoff.ru) αž“αžΉαž„αž–αž“αŸ’αž™αž›αŸ‹αž–αžΈαž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž›αžŸαŸ’αž‘αŸ’αžšαžΈαž˜αžαŸ’αžšαžΌαžœαž€αžΆαžš αžšαž”αŸ€αž”αžŠαŸ‚αž›αžœαžΆαžαž»αžŸαž–αžΈαž‡αž½αžšαž’αž˜αŸ’αž˜αžαžΆ αž—αžΆαž–αžαž»αžŸαž‚αŸ’αž“αžΆαžšαžœαžΆαž„αžŸαŸ’αž‘αŸ’αžšαžΈαž˜ Kafka αž“αž·αž„ Redis αž αžΎαž™αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž’αŸ†αž–αžΈαž”αž‰αŸ’αž αžΆαžŠαŸ‚αž›αžšαž„αŸ‹αž…αžΆαŸ†αž’αŸ’αž“αž€αŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αžœαž·αžŸαŸ’αžœαž€αžšαž€αž˜αŸ’αž˜αžœαž·αž’αžΈαž“αžΆαŸ†αž˜αž»αžαž‚αŸαž“αŸ… Konture Grigory Koshelev αž“αžΉαž„αž–αž·αž“αž·αžαŸ’αž™αž˜αžΎαž›αžαžΆαžαžΎαž˜αžΆαž“αž”αž‰αŸ’αž αžΆαž’αŸ’αžœαžΈαžαŸ’αž›αŸ‡αž‡αžΆαž˜αž½αž™αž€αžΆαžšαž€αžαŸ‹αžαŸ’αžšαžΆ αž“αž·αž„αž€αžΆαžšαžœαžΆαžŸαŸ‹αžœαŸ‚αž„ αž”αŸ’αžšαžŸαž·αž“αž”αžΎαž’αŸ’αž“αž€αž˜αžΆαž“αž‘αž·αž“αŸ’αž“αž“αŸαž™ terabytes αž€αŸ’αž“αž»αž„αž˜αž½αž™αžαŸ’αž„αŸƒ αž αžΎαž™αž€αŸαž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαžŠαŸ†αžŽαŸ„αŸ‡αžŸαŸ’αžšαžΆαž™ Open-Source αžαŸ’αž˜αžΈαžŠαŸ‚αž›αž“αžΉαž„αž’αŸ’αžœαžΎαž±αŸ’αž™αž‡αžΈαžœαž·αžαžšαž”αžŸαŸ‹αž’αŸ’αž“αž€αž€αžΆαž“αŸ‹αžαŸ‚αž”αŸ’αžšαžŸαžΎαžšαž‘αžΎαž„αŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž˜αŸαžŠαžΉαž€αž“αžΆαŸ†αž“αŸƒαžŸαž αž‚αž˜αž“αŸ Kazan .Net Yuri Kerbitskov (Ak Bars αž”αž…αŸ’αž…αŸαž€αžœαž·αž‘αŸ’αž™αžΆαžŒαžΈαž‡αžΈαžαž›) αž“αžΉαž„αž˜αž€αžšαŸ†αž›αžΉαž€αž’αŸ’αž“αž€αž–αžΈαž˜αžΌαž›αž αŸαžαž»αžŠαŸ‚αž› Application Domains αžαŸ’αžšαžΌαžœαž€αžΆαžšαž“αŸ…αž€αŸ’αž“αž»αž„ .Net Framework αž αžΎαž™αž“αž·αž™αžΆαž™αž’αŸ†αž–αžΈαž’αŸ’αžœαžΈαžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αž›αžΆαžŸαŸ‹αž”αŸ’αžαžΌαžšαž“αŸ…αž–αŸαž›αž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž–αž½αž€αž‚αŸαž“αŸ…αž€αŸ’αž“αž»αž„ .Net Core αž“αž·αž„αžšαž”αŸ€αž”αžšαžŸαŸ‹αž“αŸ…αž‡αžΆαž˜αž½αž™αžœαžΆαž₯αž‘αžΌαžœαž“αŸαŸ‡αŸ” αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαž€αžΆαžšαž–αž·αž—αžΆαž€αŸ’αžŸαžΆ αž’αŸ’αž“αž€αž“αžΉαž„αž™αž›αŸ‹αž€αžΆαž“αŸ‹αžαŸ‚αž…αŸ’αž”αžΆαžŸαŸ‹αž’αŸ†αž–αžΈαžšαž”αŸ€αž”αžŠαŸ‚αž› .NET Core αžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž“αŸ…αž€αŸ’αžšαŸ„αž˜αž€αŸ’αžšαžŽαžΆαžαŸ‹αŸ”

αž αžΎαž™αž”αŸ’αžšαž’αžΆαž“αž”αž‘αžŠαŸ‚αž›αžαŸ’αžšαžΌαžœαž”αžΆαž“αž”αŸ„αŸ‡αž†αŸ’αž“αŸ„αžαž±αŸ’αž™αž…αŸ’αžšαžΎαž“αž‡αžΆαž„αž‚αŸαž“αŸ…αž›αžΎαž‚αŸαž αž‘αŸ†αž–αŸαžšαŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž αž”αžŠαž·αžœαžαŸ’αžαž“αŸαžŸαŸ’αž„αž”αŸ‹αžŸαŸ’αž„αžΆαžαŸ‹αž˜αž½αž™αž”αžΆαž“αž€αžΎαžαž‘αžΎαž„αž“αŸ…αž€αŸ’αž“αž»αž„αž†αŸ’αž“αžΆαŸ† 2014 αž αžΎαž™αž”αž“αŸ’αž‘αžšαžšαž”αžŸαŸ‹αžœαžΆαž€αŸ†αž–αž»αž„αžαžΆαž˜αž‘αžΆαž“αŸ‹αž™αžΎαž„αŸ” αž…αžΆαž”αŸ‹β€‹αž–αžΈβ€‹αž–αŸαž›β€‹αž“αŸαŸ‡β€‹αž‘αŸ… αž αŸαžŠαŸ’αž‹αžΆαžšαž…αž“αžΆαžŸαž˜αŸ’αž–αŸαž“αŸ’αž’β€‹αž”αžΆαž“β€‹αž€αŸ’αž›αžΆαž™β€‹αž‡αžΆβ€‹αž˜αžΎαž›β€‹αž˜αž·αž“β€‹αžƒαžΎαž‰β€‹αž‘αžΆαŸ†αž„β€‹αžŸαŸ’αžšαž»αž„ αž αžΎαž™β€‹αž›αŸ‚αž„β€‹αž˜αžΆαž“β€‹αž”αž‰αŸ’αž αžΆαŸ” αž“αŸαŸ‡αž˜αž·αž“αž˜αŸ‚αž“αž’αŸ†αž–αžΈαž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž“αž·αž˜αŸ’αž˜αž·αž αž¬αž€αž»αž„αžαžΊαž“αŸαžšαž“αŸ„αŸ‡αž‘αŸ - αž–αž½αž€αž‚αŸαž‚αžΊαž‡αžΆαžšαžΏαž„αž’αžαžΈαžαž€αžΆαž›αžšαž½αž…αž‘αŸ…αž αžΎαž™ αž”αŸ‰αž»αž“αŸ’αžαŸ‚αž’αŸ†αž–αžΈαž€αžΆαžšαž’αž—αž·αžœαžŒαŸ’αžαž“αŸαž”αž“αŸ’αžαŸ‚αž˜αž‘αŸ€αžαž“αŸƒαž‚αŸ†αž“αž·αžαž“αŸƒαžŸαŸαžœαžΆαž€αž˜αŸ’αž˜αž–αž–αž€ - AWS Lambda (αž™αžΎαž„αž…αŸ†αžŽαžΆαž™αžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžαŸ‚αž–αŸαž›αžœαŸαž›αžΆαžŠαŸ†αžŽαžΎαžšαž€αžΆαžšαž”αŸ‰αž»αžŽαŸ’αžŽαŸ„αŸ‡)αŸ” αžŠαŸ„αž™β€‹αž”αŸ’αžšαžΎβ€‹αž§αž‘αžΆαž αžšαžŽαŸβ€‹αž“αŸƒβ€‹αž‚αž˜αŸ’αžšαŸ„αž„ backend αž•αŸ’αž‘αžΆαž›αŸ‹β€‹αžαŸ’αž›αž½αž“β€‹αžšαž”αžŸαŸ‹β€‹αž‚αžΆαžαŸ‹, αž’αŸ’αž“αž€β€‹αž’αž—αž·αžœαžŒαŸ’αžαž“αŸβ€‹αž“αŸ…β€‹αž€αŸ’αž“αž»αž„ Evil Martians Nikolay Sverchkov αž“αžΉαž„αž”αŸ’αžšαžΆαž”αŸ‹αž’αŸ’αž“αž€αž‚αŸ’αžšαž”αŸ‹αž™αŸ‰αžΆαž„αž’αŸ†αž–αžΈαž•αŸ’αž“αŸ‚αž€αž‡αžΆαž€αŸ‹αžŸαŸ’αžαŸ‚αž„αž“αŸƒαž€αžΆαžšαž’αŸ’αžœαžΎαž€αžΆαžšαž‡αžΆαž˜αž½αž™αž˜αŸ‰αžΆαžŸαŸŠαžΈαž“αž˜αŸαŸ– αžαžΎαžœαžΆαž›αŸ†αž”αžΆαž€αž”αŸ‰αž»αžŽαŸ’αžŽαžΆαž€αŸ’αž“αž»αž„αž€αžΆαžšαž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜ αžαžΎαž―αž€αžŸαžΆαžš αž“αž·αž„αž€αžΆαžšαž”αž„αŸ’αžšαŸ€αž“αž˜αžΆαž“αž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“ αž˜αžΆαž“αž€αžΆαžšαž‚αžΆαŸ†αž‘αŸ’αžšαžŸαž˜αŸ’αžšαžΆαž”αŸ‹αžŸαŸ’αžαž„αŸ‹αžŠαžΆαžšαžŠαŸ‚αž›αž‘αž‘αž½αž›αž™αž€αž‡αžΆαž‘αžΌαž‘αŸ… αžšαž”αŸ€αž”αž’αŸ’αžœαžΎαžαŸαžŸαŸ’αžαž€αŸ’αž“αž»αž„αžŸαŸ’αžšαž»αž€ αžαžΎαžœαžΆαž˜αžΆαž“αžαž˜αŸ’αž›αŸƒαž”αŸ‰αž»αž“αŸ’αž˜αžΆαž“ αž—αžΆαžŸαžΆαž˜αž½αž™αžŽαžΆ αž›αŸ’αž’αž‡αžΆαž„αž€αŸ’αž“αž»αž„αž€αžΆαžšαž”αŸ’αžšαžΎαž”αŸ’αžšαžΆαžŸαŸ‹ αž‡αž„αŸ‹αž€αž·αž…αŸ’αž…αž€αžΆαžšαžŽαžΆαžŠαŸ‚αž›αž–αžΆαž€αŸ‹αž–αŸαž“αŸ’αž’αž‡αžΆαž„αž‚αŸαŸ”

αžαŸ’αž“αžΆαž€αŸ‹αž’αž“αž»αž”αžŽαŸ’αžŒαž·αž

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž CTO αž“αŸ…αž€αŸ’αž“αž»αž„ Mastery.pro Andrey Fefelov αž“αžΉαž„αžŠαžΉαž€αž“αžΆαŸ†αžαŸ’αž“αžΆαž€αŸ‹αž˜αŸαžŠαŸ‚αž›αž‚αžΆαžαŸ‹ αž“αž·αž„αž’αŸ’αž“αž€αž…αžΌαž›αžšαž½αž˜αž“αžΉαž„αž”αž„αŸ’αž€αžΎαžαž…αž„αŸ’αž€αŸ„αž˜αžŠαŸ‚αž›αž’αžαŸ‹αž±αž“αž…αŸ†αž–αŸ„αŸ‡αž€αŸ†αž αž»αžŸαžŸαžΆαž˜αž‰αŸ’αž‰αž“αŸƒ 3 nodes αž“αŸ…αž›αžΎ postgres, patroni, consul, s3, walg, ansible αŸ”

αž”αž“αŸ’αž‘αžΆαž”αŸ‹αž–αžΈαžαŸ’αž“αžΆαž€αŸ‹αž˜αŸ αž’αŸ’αž“αž€αž“αžΉαž„αž’αžΆαž…αž…αžΆαž”αŸ‹αž•αŸ’αžαžΎαž˜αž…αž„αŸ’αž€αŸ„αž˜αž”αŸ‚αž”αž“αŸαŸ‡αž–αžΈαžŠαŸ†αž”αžΌαž„αžŠαŸ„αž™αž”αŸ’αžšαžΎαžŸαŸ€αžœαž—αŸ…αž›αŸαž„ Ansible αžŠαŸ‚αž›αž”αžΆαž“αž•αŸ’αžαž›αŸ‹αž±αŸ’αž™αŸ”

αž•αŸ’αž“αŸ‚αž€αžαžΆαž„αž€αŸ’αžšαŸ„αž™αž“αŸ…αž›αžΎ DUMPαŸ– Serverless, Postgres αž“αž·αž„ Go, .NET Core, GraphQL αž“αž·αž„αž…αŸ’αžšαžΎαž“αž‘αŸ€αž
αžšαž”αžΆαž™αž€αžΆαžšαžŽαŸαž‘αžΆαŸ†αž„αž’αžŸαŸ‹αž–αžΈαžŸαž“αŸ’αž“αž·αžŸαžΈαž‘αž€αžΆαž›αž–αžΈαž†αŸ’αž“αžΆαŸ†αž˜αž»αž“αž’αžΆαž…αž˜αžΎαž›αž”αžΆαž“αž“αŸ… αž‚αŸαž αž‘αŸ†αž–αŸαžšαž™αžΌαž’αžΌαž”αžΆαžŸ

αžŸαŸαž…αž€αŸ’αžαžΈαžŸαž„αŸ’αžαŸαž”αž“αŸƒαžšαž”αžΆαž™αž€αžΆαžšαžŽαŸ αž“αž·αž„αž€αžΆαžšαž…αž»αŸ‡αžˆαŸ’αž˜αŸ„αŸ‡αž‘αžΆαŸ†αž„αž’αžŸαŸ‹ - αž“αŸ… αž‚αŸαž αž‘αŸ†αž–αŸαžšαžŸαž“αŸ’αž“αž·αžŸαžΈαž‘.

αž’αŸ’αž“αž€αž’αž—αž·αžœαžŒαŸ’αžαž“αŸ αž™αžΎαž„αž€αŸ†αž–αž»αž„αžšαž„αŸ‹αž…αžΆαŸ†αž’αŸ’αž“αž€αž“αŸ…αžαŸ’αž„αŸƒαž‘αžΈ 19 αžαŸ‚αž˜αŸαžŸαžΆ αž“αŸ… DUMP!

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

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