ΠΡΠΎΡΡΠΎ ΠΈ ΠΏΠΎΠ½ΡΡΠ½ΠΎ (Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°ΠΌΠΈ) ΠΏΡΠΎ SSH ΠΈ ΡΠ°Π·Π½ΡΠ΅ Π²Π°ΡΠΈΠ°Π½ΡΡ Π΅Π³ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΡ with labs #ssh #tools
https://iximiuz.com/en/posts/ssh-tunnels/
https://iximiuz.com/en/posts/ssh-tunnels/
π1
ΠΏΠ°ΠΊΠ΅Ρ dotNext - ΠΌΠ½ΠΎΠ³ΠΎ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ³ΠΎ Π²Π½ΡΡΡΠΈ, Π½Π°ΡΠΈΠ½Π°Ρ ΠΎΡ ΡΠ°Π·Π½ΡΡ
ΡΡΡΠΊ ΡΠΈΠΏΠ° ΠΌΠΎΠ½Π°Π΄ Result<T> / Optional<T>. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡΡ ΡΠ°Π·Π½ΡΠ΅ unsafe ΡΡΡΠΊΠΈ Π΄Π»Ρ Π±Π°ΠΉΡΠΎΡΠ±ΡΡΠ²Π° - ΡΠ°ΡΡΠΈΡΠ½ΠΎ ΡΡΠΎ ΠΊΠΎΠ½Π΅ΡΠ½ΠΎ ΡΡΠΎ Π²ΡΡ ΡΠ΅ΡΠ°Π΅ΡΡΡ Marshal, Unsafe ΠΈ Π΄ΡΡΠ³ΠΈΠΌΠΈ ΡΡΡΠΊΠ°ΠΌΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π·Π°Π²Π΅Π·Π»ΠΈ Π² .net, ΠΊΠΎΠ³Π΄Π° ΠΎΠ½ Π΅ΡΡ Π½Π°Π·ΡΠ²Π°Π»ΡΡ core. ΠΡΡΡ ΡΠ΄ΠΎΠ±Π½ΡΠ΅ ΡΡΡΠΊΠΈ Π΄Π»Ρ ΠΊΠΎΠ½ΡΡΡΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Expressions, Π° ΡΠ°ΠΊΠΆΠ΅ ΠΏΠ°ΡΠ° Π²Π΅ΡΠ΅ΠΉ ΠΎΡΠ½ΠΎΡΡΡΠΈΡ
ΡΡ ΠΊ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΠΌ ΡΠΈΡΡΠ΅ΠΌΠ°ΠΌ - ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Raft Consensus Algorithm (Π΅ΡΠ»ΠΈ Π²Π΄ΡΡΠ³ ΠΊΡΠΎ Π·Π°Ρ
ΠΎΡΠ΅Ρ ΠΏΠΈΡΠ°ΡΡ Π°Π½Π°Π»ΠΎΠ³ Orleans, Akka ΠΈ Ρ.Π΄.) ΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Write Ahead Log, ΠΊΠΎΡΠΎΡΡΠΉ ΡΠ°ΡΡΠ΅Π½ΡΠΊΠΎ ΡΠΎΠΏΡΡΡΡΠ²ΡΠ΅Ρ ΡΡΠΎΠΌΡ. #dotnet
ΠΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ ΡΠ΅Π³ΡΠ»ΡΡΠΎΠΊ Π΄Π»Ρ Π³Π΅Π½Π΅ΡΠ°ΡΠΈΠΈ Colored HTML #dotnet
ΠΏΠ°ΠΊΠ΅Ρ Π½Π° github
ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΠ°
ΠΏΠ°ΠΊΠ΅Ρ Π½Π° github
ΠΏΠ΅ΡΠΎΡΠ½ΠΈΡΠ°
SeaweedFS - ΠΊΡΠΎΡΡΠΏΠ»Π°ΡΡΠΎΡΠΌΠ΅Π½Π½ΡΠΉ scalable object storage Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠ΅ΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° S3, Π²Π΅Π±ΠΌΠΎΡΠ΄ΠΎΠΉ, ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΡΠ΅ΠΏΠ»ΠΈΠΊΠ°ΡΠΈΠΈ, TTL ΡΠ°ΠΉΠ»ΠΎΠ² ΠΈ Π΄ΡΡΠ³ΠΈΡ
ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΡΡ
ΡΡΡΠΊ. ΠΡΠ΅Π½Ρ ΠΏΡΠΎΡΡΠΎΠΉ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ΅. ΠΠΎ ΡΡΠ±ΡΠ΅ΠΊΡΠΈΠ²Π½ΡΠΌ ΠΎΡΡΡΠ΅Π½ΠΈΡΠΌ - ΡΠΊΠΎΡΠΎΡΡΡ Π·Π°ΠΏΠΈΡΠΈ/ΡΡΠ΅Π½ΠΈΡ ΡΠΏΠΈΡΠ°Π΅ΡΡΡ ΡΠΎΠ»ΡΠΊΠΎ Π² Π΄ΠΈΡΠΊ (Π΄Π°ΠΆΠ΅ Π½Π° PCI 4.0 NVMe).
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ open-source ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΡ ΠΎΠΆΠ΅Π³ΠΎ ΡΠΎΠ΄Π° - CloudServer, Π½ΠΎ Π΅Π³ΠΎ Π»ΠΈΡΠ½ΠΎ Π½Π΅ ΡΡΠΎΠ³Π°Π» ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠ΅ΠΉ Π½Π΅ ΠΈΠΌΠ΅Ρ, Ρ ΠΎΡΡ ΡΡΠ΄Ρ ΠΏΠΎ Π³ΠΈΡΡ Π°Π±Ρ - ΠΏΡΠΎΠ΅ΠΊΡ ΠΆΠΈΠ²ΡΡ ΠΈ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ.
ΠΠΎΠ±ΡΠ΅ΠΌ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²ΠΈΡΡ, ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΡΠΎΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° S3, Π° Π½Π° ΠΏΡΠΎΠ΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΡΠ½ΡΠΉ Amazon S3. Π‘ SeaweedFS Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΎΡΡ, Ρ CloudServer - Π½Π΅ Π·Π½Π°Ρ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ :)) #storage
ΠΠ»ΡΡΠ΅ΡΠ½Π°ΡΠΈΠ²Π½ΡΠΉ open-source ΠΏΡΠΎΠ΅ΠΊΡ ΠΏΠΎΡ ΠΎΠΆΠ΅Π³ΠΎ ΡΠΎΠ΄Π° - CloudServer, Π½ΠΎ Π΅Π³ΠΎ Π»ΠΈΡΠ½ΠΎ Π½Π΅ ΡΡΠΎΠ³Π°Π» ΠΈ Π½ΠΈΠΊΠ°ΠΊΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠ΅ΠΉ Π½Π΅ ΠΈΠΌΠ΅Ρ, Ρ ΠΎΡΡ ΡΡΠ΄Ρ ΠΏΠΎ Π³ΠΈΡΡ Π°Π±Ρ - ΠΏΡΠΎΠ΅ΠΊΡ ΠΆΠΈΠ²ΡΡ ΠΈ ΡΠ°Π·Π²ΠΈΠ²Π°Π΅ΡΡΡ.
ΠΠΎΠ±ΡΠ΅ΠΌ ΡΠ΅ΠΎΡΠ΅ΡΠΈΡΠ΅ΡΠΊΠΈ ΠΌΠΎΠΆΠ½ΠΎ ΡΡΠ°Π²ΠΈΡΡ, ΠΏΠΈΡΠ°ΡΡ ΠΈ ΠΎΡΠ»Π°ΠΆΠΈΠ²Π°ΡΡ ΡΠΎΡΡ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΠΎΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° S3, Π° Π½Π° ΠΏΡΠΎΠ΄Π΅ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΎΠ±ΡΡΠ½ΡΠΉ Amazon S3. Π‘ SeaweedFS Ρ ΠΌΠ΅Π½Ρ ΡΠ°ΠΊΠΎΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π»ΠΎΡΡ, Ρ CloudServer - Π½Π΅ Π·Π½Π°Ρ, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ΄ΡΡ ΠΊΠ°ΠΊΠΈΠ΅-ΡΠΎ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΈ ΡΠ°Π·Π»ΠΈΡΠΈΡ ΠΊΠ°ΠΊ ΠΎΠ±ΡΡΠ½ΠΎ :)) #storage
ΠΠΎΠ»Π»Π΅ΠΊΡΠΈΡ ΠΊΠ½ΠΈΠ³ Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΠΈ Π°Π½Π³Π» ΡΠ·ΡΠΊΠ°Ρ
(~250 ΠΊΠ½ΠΈΠ³) #books
π₯3
ΠΠ½ΡΠ΅ΡΠ΅ΡΠ½Π΅ΠΉΡΠΈΠΉ ΡΠΈΠΊΠ» ΡΡΠ°ΡΠ΅ΠΉ ΠΎΡ Nick Craver (ΡΡΠΎ Architecture Lead StackOverflow/StackExchange). ΠΠ° ΠΌΠΎΠΉ Π²Π·Π³Π»ΡΠ΄ StackOverflow ΡΡΠΎ Ρ
ΠΎΡΠΎΡΠΈΠΉ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ Π°ΡΡ
ΠΈΡΠ΅ΠΊΡΡΡΡ ΠΈ Π΅Ρ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ (ΡΡΠΈΡΡΠ²Π°Ρ ΠΈΡ
ΠΏΠΎΡΠ΅ΡΠ°Π΅ΠΌΠΎΡΡΡ ΠΈ ΡΠ°ΠΊΠΎΠ΅ Π½Π΅Π·Π½Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ΅ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎ ΡΠ΅ΡΠ²Π΅ΡΠΎΠ², ΠΊΠΎΡΠΎΡΠΎΠ΅ ΠΎΠ±ΡΠ»ΡΠΆΠΈΠ²Π°Π΅Ρ ΠΈΡ
ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ).
Π’Π°ΠΊΠΆΠ΅ SO Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½ΡΠΉ Π΄Π°ΠΌΠΏ ΠΈΡ Π±Π°Π·Ρ MSSQL - ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΡΡΠΊΡΡΡΡ (Ρ ΠΌΠ΅Π½Ρ ΠΊ Π½Π΅ΠΉ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ - Π½ΠΎ Π±Π΅Π· ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΡ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΡΡΡ ΠΊΡΠΈΡΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π² ΡΠ΅Π»ΠΎΠΌ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½ΠΎΡΠΌ). ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΡΠ°ΡΡΠΈ Π΄Π°ΡΠΈΡΡΡΡΡΡ 2016-ΠΌ Π³ΠΎΠ΄ΠΎΠΌ - ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΡ ΠΈΠ½ΡΠ° Π°ΠΊΡΡΠ°Π»ΡΠ½Π° ΠΈ ΠΏΠΎ ΡΠ΅ΠΉ Π΄Π΅Π½Ρ.
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ - ΠΊΡΠ°ΡΠΊΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΈΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Ρ .NET Framework Π½Π° .NET 6 ΠΈ Ρ ΡΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠ΅ΠΉ #architecture #stackoverflow
Π’Π°ΠΊΠΆΠ΅ SO Π²ΡΠ΅ΠΌΡ ΠΎΡ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ Π²ΡΠΊΠ»Π°Π΄ΡΠ²Π°Π΅Ρ ΠΎΠ±Π½ΠΎΠ²Π»ΡΠ½Π½ΡΠΉ Π΄Π°ΠΌΠΏ ΠΈΡ Π±Π°Π·Ρ MSSQL - ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΡΡΠΊΡΡΡΡ (Ρ ΠΌΠ΅Π½Ρ ΠΊ Π½Π΅ΠΉ Π΅ΡΡΡ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΠΎΠΏΡΠΎΡΡ - Π½ΠΎ Π±Π΅Π· ΠΏΠΎΠ³ΡΡΠΆΠ΅Π½ΠΈΡ Π² ΠΈΠ½ΡΡΠ°ΡΡΡΡΠΊΡΡΡΡ ΡΡΡ ΠΊΡΠΈΡΠΈΠΊΠΎΠ²Π°ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎ, Π½ΠΎ Π² ΡΠ΅Π»ΠΎΠΌ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ Π½ΠΎΡΠΌ). ΠΠ΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΡΠ°ΡΡΠΈ Π΄Π°ΡΠΈΡΡΡΡΡΡ 2016-ΠΌ Π³ΠΎΠ΄ΠΎΠΌ - ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΡ ΠΈΠ½ΡΠ° Π°ΠΊΡΡΠ°Π»ΡΠ½Π° ΠΈ ΠΏΠΎ ΡΠ΅ΠΉ Π΄Π΅Π½Ρ.
Π Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ - ΠΊΡΠ°ΡΠΊΠ°Ρ ΠΈΡΡΠΎΡΠΈΡ ΠΈΡ ΠΌΠΈΠ³ΡΠ°ΡΠΈΠΈ Ρ .NET Framework Π½Π° .NET 6 ΠΈ Ρ ΡΡΡΡ Π±ΠΎΠ»ΡΡΠΈΠΌ ΠΊΠΎΠ»ΠΈΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ΅Ρ Π½ΠΈΡΠ΅ΡΠΊΠΈΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΡΡΠ΅ΠΉ #architecture #stackoverflow
Build your own .NET CPU profiler in C# - ΠΊΠ°ΠΊ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΡΠ²ΠΎΠΈ ΠΌΠ΅ΡΡΠΈΠΊΠΈ Π² ΠΎΠ±ΡΠΈΠΉ workflow ΡΡΠ°ΡΠ½ΡΡ
Trace ΠΈ Listeners #dotnet #tools #docker
Medium
Build your own .NET CPU profiler in C#
After describing memory allocation profiling it is now time to dig into the CPU sample profiling in C#!
π₯1
Π Π΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π΄Π²ΡΡ
ΡΠ°ΠΊΡΠΎΡΠ½ΠΎΠΉ Π°ΡΡΠ΅Π½ΡΠΈΡΠΈΠΊΠ°ΡΠΈΠΈ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ FIDO2, ΡΠΎΠΊΠ΅Π½Π° Yubikey ΠΈ ASP.NET Core #dotnet #security
Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡ ΠΏΠΎ Yubikey Π½Π° Ρ Π°Π±ΡΠ΅
Π² Π΄ΠΎΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΡΡΠ°ΡΡΡ ΠΏΠΎ Yubikey Π½Π° Ρ Π°Π±ΡΠ΅
ΠΠΎΡΡ high level design ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ½ΡΡ
ΡΠΈΡΡΠ΅ΠΌ π ΠΠ»Ρ ΡΠ°ΡΡΠΈΡΠ΅Π½ΠΈΡ ΠΊΡΡΠ³ΠΎΠ·ΠΎΡΠ° Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ ΠΏΠΎΠ»Π΅Π·Π½ΡΡ
ΡΡΡΠ»ΠΎΠΊ. ΠΠ°, ΡΡΠΎ ΡΠ΅Π°Π»ΡΠ½ΠΎ Π²ΡΡ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ°Ρ
ΠΎΡ senior ΠΈ Π²ΡΡΠ΅ (ΠΈΠ½ΡΠ° 100%):
Microsoft - Drone Delivery system - Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΡΠΎ ΡΠ°Π·Π΄Π΅Π» ΠΏΡΠΎ Azure - ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅, ΡΠ΅ΠΎΡΠΈΡ ΠΈ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°Π»ΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΠΊ Azure, ΠΎΠ½ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ Π² Π»ΡΠ±ΠΎΠΉ ΠΎΠ±Π»Π°ΡΠ½ΠΎΠΉ ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π΄Π΅.
ΠΠ° medium - ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΎΡΠΈΡ ΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
30 Π²ΠΎΠΏΡΠΎΡΠΎΠ² ΠΏΠΎ System Design Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°ΠΌΠΈ π
System Design Patterns (github)
Backend best practices (github)
Domain-Driven Hexagon (github) - ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° #typescript
Domain-Driven Design and Messaging Architectures
#books #education #ddd
Microsoft - Drone Delivery system - Π½Π΅ΡΠΌΠΎΡΡΡ Π½Π° ΡΠΎ, ΡΡΠΎ ΡΡΠΎ ΡΠ°Π·Π΄Π΅Π» ΠΏΡΠΎ Azure - ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅, ΡΠ΅ΠΎΡΠΈΡ ΠΈ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ ΠΌΠ°Π»ΠΎ ΠΎΡΠ½ΠΎΡΠ΅Π½ΠΈΡ ΠΈΠΌΠ΅Π΅Ρ ΠΊ Azure, ΠΎΠ½ ΠΏΡΠΈΠΌΠ΅Π½ΠΈΠΌ Π² Π»ΡΠ±ΠΎΠΉ ΠΎΠ±Π»Π°ΡΠ½ΠΎΠΉ ΠΈ Π½Π΅ ΡΠΎΠ»ΡΠΊΠΎ ΡΡΠ΅Π΄Π΅.
ΠΠ° medium - ΡΠΎΠ»ΡΠΊΠΎ ΡΠ΅ΠΎΡΠΈΡ ΠΈ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ ΠΏΡΠΎΠ΅ΠΊΡΠΈΡΠΎΠ²Π°Π½ΠΈΡ
30 Π²ΠΎΠΏΡΠΎΡΠΎΠ² ΠΏΠΎ System Design Ρ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°ΠΌΠΈ π
System Design Patterns (github)
Backend best practices (github)
Domain-Driven Hexagon (github) - ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ Π½Π° #typescript
Domain-Driven Design and Messaging Architectures
#books #education #ddd
π1
Π ΡΡΠΎ, ΡΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ? π΅βπ« #css #ui
ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΡ cheat sheet Π΄Π»Ρ CSS
ΠΌΠ½ΠΎΠ³ΠΎ Π΄ΡΡΠ³ΠΈΡ cheat sheet Π΄Π»Ρ CSS
π2
DotNetBook - ΠΊΠ½ΠΈΠ³Π° Π‘ΡΠ°Π½ΠΈΡΠ»Π°Π²Π° Π‘ΠΈΠ΄ΡΠΈΡΡΠΎΠ³ΠΎ (ru) ΠΏΠΎ Π²Π½ΡΡΡΠ΅Π½Π½Π΅ΠΌΡ ΡΡΡΡΠΎΠΉΡΡΠ²Ρ ΠΎΠ±ΡΠ΅ΠΊΡΠΎΠ² Π² #dotnet, disposable-ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ, memory management'Ρ, ΠΈΡΠΊΠ»ΡΡΠ΅Π½ΠΈΡΠΌ, ΠΊΠΎΠ½ΠΊΡΡΠ΅Π½ΡΠ½ΠΎΠΌΡ Π΄ΠΎΡΡΡΠΏΡ, ΠΈ Ρ.Π΄. Π Π΅ΠΊΠΎΠΌΠ΅Π½Π΄ΡΠ΅ΡΡΡ Π΄Π»Ρ ΠΏΡΠΎΡΡΠ΅Π½ΠΈΡ ΡΠ΅Π»ΠΈΠΊΠΎΠΌ Π²ΡΠ΅ΠΌ, ΠΊΡΠΎ ΠΏΠΈΡΠ΅Ρ Π΄Π»Ρ dotnet. #education
Dapr - Distributed Application Runtime - Π΅ΡΡ ΠΎΠ΄ΠΈΠ½ ΡΡΠ΅ΠΉΠΌΠ²ΠΎΡΠΊ Π΄Π»Ρ ΠΏΠΎΡΡΡΠΎΠ΅Π½ΠΈΡ ΡΠ°ΡΠΏΡΠ΅Π΄Π΅Π»ΡΠ½Π½ΡΡ
ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ. Π‘Π°ΠΌ Π½Π΅ ΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π», Π½ΠΎ Π²ΡΠ³Π»ΡΠ΄ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎ. Π§ΡΠΎ Π½Π΅ΠΌΠ°Π»ΠΎΠ²Π°ΠΆΠ½ΠΎ - ΠΎΠ½ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ Π΄Π΅ΡΠΆΠ°ΡΡ Π³Π΅ΡΠ΅ΡΠΎΠ³Π΅Π½Π½ΡΠ΅ ΠΏΡΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π½Π° ΡΠ°Π·Π½ΡΡ
ΡΠ°Π½ΡΠ°ΠΉΠΌΠ°Ρ
ΠΈ ΡΠ·ΡΠΊΠ°Ρ
. ΠΠΎΠΏΡΠΎΠ±ΡΡ Π² Π±Π»ΠΈΠΆΠ°ΠΉΡΠ΅Π΅ Π²ΡΠ΅ΠΌΡ ΠΏΠΎΡΡΠΊΠ°ΡΡ ΠΈ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΠΊΠ°ΠΊ ΠΎΠ½ΠΎ Π² ΡΠ°Π±ΠΎΡΠ΅. Scott Hanselman Π΄Π°ΠΆΠ΅ ΠΊΠ½ΠΈΠ³Ρ ΠΏΠΎ Π½Π΅ΠΌΡ Π½Π°ΠΏΠΈΡΠ°Π» Π΄Π²Π° Π³ΠΎΠ΄Π° Π½Π°Π·Π°Π΄ (ΠΊΠ½ΠΈΠ³Π° Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ).
C# functional extensions - ΡΠ΄Π°ΡΠ½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Ρ Π·Π°ΡΠ°ΡΠΊΠΈΠ²Π°Π½ΠΈΠ΅ΠΌ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΡ
ΡΡΡΠΊ Π² C# - ΠΌΠΎΠ½Π°Π΄Ρ Maybe/Optional/Chain/Tap/Result/Match. Π ΠΏΠ΅Ρ-ΠΏΡΠΎΠ΅ΠΊΡΠ°Ρ
- ΠΏΠΎΡΡΠΈ Π²ΡΠ΅Π³Π΄Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ. ΠΠ»ΡΡ ΠΊ ΡΠΈΡΡΠΎΡΠ΅ ΠΈ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ΄Π°. #dotnet
ΠΠ²Π° ΠΏΠ»Π°Π³ΠΈΠ½Π° Π΄Π»Ρ Riderπ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΊΠ°Π·ΡΠ²Π°ΡΡ Π² IDE ΡΠΈΠΊΠ»ΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΡΡ ΠΈ ΠΊΠΎΠ³Π½ΠΈΡΠΈΠ²Π½ΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ ΠΌΠ΅ΡΠΎΠ΄ΠΎΠ² ΠΈ ΠΊΠ»Π°ΡΡΠΎΠ², ΠΌΠ΅ΡΡΠΈΠΊΠΈ ΠΊΠΎΡΠΎΡΡΡ
ΡΡΠΈΡΠ°ΡΡΡΡ ΠΏΠΎ Π²ΠΎΡ ΡΡΠΎΠΌΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΡ (G. Ann Campbell, ΠΎΠ΄Π½ΠΎΠΉ ΠΈΠ· ΠΊΠΎΠ½ΡΡΠΈΠ±ΡΡΠΎΡΠΎΠ² SonarQube)
ΠΡΠ°ΡΠΈΠ²ΡΠΉ ΠΈ ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΡΠ΅ΡΠ²ΠΈΡ Π΄Π»Ρ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΈΠ½ΡΠ΅ΡΠ°ΠΊΡΠΈΠ²Π½ΡΡ
Π²ΡΠ΅ΠΌΠ΅Π½Π½ΡΡ
Π΄ΠΈΠ°Π³ΡΠ°ΠΌΠΌ (timelines) #tools
Manage your terraform like a container (en) - Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ ΠΏΡΠΎΡΡΠ°Ρ ΡΡΠ°ΡΡΡ ΠΏΡΠΎ #terraform ΠΈ #aws Ρ ΠΏΡΠΈΠΌΠ΅ΡΠ°ΠΌΠΈ ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°ΠΌΠΈ
FluentValidation - ΡΠ΄ΠΎΠ±Π½ΡΠΉ ΠΏΠ°ΠΊΠ΅Ρ Π΄Π»Ρ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ, ΠΊΠΎΡΠΎΡΡΠΉ ΠΏΠΎΠ·Π²ΠΎΠ»ΡΠ΅Ρ
π Π²ΡΠ½Π΅ΡΡΠΈ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡ Π² ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠ΅ ΠΊΠ»Π°ΡΡΡ
π ΡΠ΄Π΅Π»Π°ΡΡ chaining-Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΡ
π ΠΏΠΎΠ»ΡΡΠΈΡΡ Π³ΠΎΡΠΎΠ²ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ ΠΎΡΠΈΠ±ΠΎΠΊ Π² ΠΌΠΎΠ΄Π΅Π»ΠΈ (Π΄Π»Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π½Π° ΡΡΠΎΠ½Ρ)
π ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°Π΅Ρ DI
π ΠΏΡΠΈ ΠΆΠ΅Π»Π°Π½ΠΈΠΈ (ΡΡΠ°ΡΠ½ΠΎ ΡΡΠΎΠ³ΠΎ Π½Π΅Ρ) - ΡΠ΄Π΅Π»Π°ΡΡ Π½Π΅Π±ΠΎΠ»ΡΡΡΡ middleware ΠΈ Π²ΠΎΡΠΊΠ½ΡΡΡ Π² pipeline ASP.NET Core Π΄Π»Ρ Π°Π²ΡΠΎΠΌΠ°ΡΠΈΡΠ΅ΡΠΊΠΎΠΉ Π²Π°Π»ΠΈΠ΄Π°ΡΠΈΠΈ Π²ΡΠ΅Ρ
Π²Ρ
ΠΎΠ΄ΡΡΠΈΡ
ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Ρ ΡΡΠΎΠ½ΡΠ° ΠΈ Π²ΠΎΠ·Π²ΡΠ°ΡΠ° Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ http 400, Π΅ΡΠ»ΠΈ ΠΌΠΎΠ΄Π΅Π»Ρ Π½Π΅ ΡΠΎΠΎΡΠ²Π΅ΡΡΡΠ²ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΈΠ»Π°ΠΌ.
β Π ΡΠΈΡΡΠΎΡΠ΅ ΠΈ ΡΠΈΡΠ°Π±Π΅Π»ΡΠ½ΠΎΡΡΠΈ ΠΊΠΎΠ΄Π° #dotnet
Please open Telegram to view this post
VIEW IN TELEGRAM
π5
ΠΠ°ΠΊ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ TLS Π½Π° ΡΡΡΡΠΊΠΎΠΌ ΡΠ·ΡΠΊΠ΅ (ΠΌΠ½ΠΎΠ³ΠΎΡΡΡΠ°Π½ΠΈΡΠ½Π°Ρ ΡΡΠ°ΡΡΡ). ΠΠΈΠ½ΠΈΠΌΡΠΌ ΠΊΠ°ΡΡΠΈΠ½ΠΎΠΊ, ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ Π΄Π°ΠΌΠΏΠΎΠ² ΠΈ ΠΏΡΠΈΠΌΠ΅ΡΠΎΠ² ΠΏΠ°ΠΊΠ΅ΡΠΎΠ² #education
Building a Scalable Event-Driven Search Architecture With Postgresβ Full-Text Search - ΡΡΠ°ΡΡΡ ΠΏΠΎ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΠΏΠΎΠ»Π½ΠΎΡΠ΅ΠΊΡΡΠΎΠ²ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ° Π½Π° Postgres - Ρ Π±Π»ΡΠΊΠ΄ΠΆΠ΅ΠΊΠΎΠΌ ΠΌΠΈΠΊΡΠΎΡΠ΅ΡΠ²ΠΈΡΠ°ΠΌΠΈ, ΠΎΡΠ΅ΡΠ΅Π΄ΡΠΌΠΈ ΠΈ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°ΠΌΠΈ. #books #education