.NET Fest 2019. Irina Scurtu. Forget about HTTP

N
Тема доклада
Тема доклада
Тема доклада
KYIV 2019
Irina Scurtu
Forget about HTTP
.NET CONFERENCE #1 IN UKRAINE
Irina Scurtu
 Romania Based
 Software Architect @Endava
 Organizer of DotNetIasi user group
 I teach .Net
@irina_scurtu
Agenda
 Monoliths& Microservices
 HTTP calls – sync & async
 RPC
 Messaging
 Queues
 Message Brokers
 Actor Model
Easy life
The Monolith
MONOLITH
 Self-contained
 Single codebase
 Single deploy unit
 Easy life for developers
 Dependencies are in your code
 Single technology stack
MONOLITH
 All or nothing deploys
 Downtimes
 Long build times
 ~ 0 continuous delivery
 Hard to test
Scaling the MONOLITH
Scale up
2
1 5
3
monolith syndrome?
MICROSERVICE
 it’s that thing that is not a monolith
 With it’s own database
 Easy to deploy
 Standalone
 Easy to maintain
Is it?
MICROSERVICES?
 Introduces complexity
 Cascading effects in case of failure
 Need to monitor them closely
2
1 5
3
Independent
units
2
1 5
3
.NET Fest 2019. Irina Scurtu. Forget about HTTP
.NET Fest 2019. Irina Scurtu. Forget about HTTP
Dou you
know?
150 Amazoncalls
APIs to Build a Page
5 billions
/day
Netflix
 services about 5
billions API
calls/day
 97.7 % are internal
Sync Calls
HTTP
HTTP CALLS
API
Response
API
HTTP CALLS
API API
HTTP CALLS
NFRs
Availablity
Troughput
Reliability
Timeouts
Latency
Retries
Resilience
“It’s perfectly
fine to use sync
HTTP Calls”
 Timeouts
 Availability
 Going back to
coupling?
 You can loose
requests
 Retries?
async Calls
HTTP
“It’s perfectly fine to use async HTTP Calls”
You’ll have exactly the same issues as with sync
calls
Distribute load?!
You can serve more request
You can serve the requests faster
.NET Fest 2019. Irina Scurtu. Forget about HTTP
HTTP General Notes
 Sync by nature
 Make a TCP connection for each request
 No retry out of the box
 No delivery guarantees
 Location transparency
 Good for public facing APIs
 Familiar
 Easy to debug
Challenges
Service Discovery
Retry policies
Timeouts
Routing
Tracing
gRPC
gRPC
 No-code references
 Contract based
 Uses HTTP/2 => faster
 Efficient ProtoBuf serialization => smaller payload
 Available in many languages
 Code generation
syntax = "proto3";
option csharp_namespace = "MyFirstGrpc";
package Fibonacci;
// The service definition.
service Fibo {
rpc ComputeFibonacci(RequestedNumber) returns (FibonacciResult){}
}
//the request message format
message RequestedNumber {
int32 number = 1;
}
//the response message format
message FibonacciResult {
int32 result = 1;
}
syntax = "proto3";
option csharp_namespace = "MyFirstGrpc";
package Fibonacci;
// The service definition.
service Fibo {
rpc ComputeFibonacci(RequestedNumber) returns (FibonacciResult){}
}
//the request message format
message RequestedNumber {
int32 number = 1;
}
//the response message format
message FibonacciResult {
int32 result = 1;
}
syntax = "proto3";
option csharp_namespace = "MyFirstGrpc";
package Fibonacci;
// The service definition.
service Fibo {
rpc ComputeFibonacci(RequestedNumber) returns (FibonacciResult){}
}
//the request message format
message RequestedNumber {
int32 number = 1;
}
//the response message format
message FibonacciResult {
int32 result = 1;
}
syntax = "proto3";
option csharp_namespace = "MyFirstGrpc";
package Fibonacci;
// The service definition.
service Fibo {
rpc ComputeFibonacci(RequestedNumber) returns (FibonacciResult){}
}
//the request message format
message RequestedNumber {
int32 number = 1;
}
//the response message format
message FibonacciResult {
int32 result = 1;
}
syntax = "proto3";
option csharp_namespace = "MyFirstGrpc";
package Fibonacci;
// The service definition.
service Fibo {
rpc ComputeFibonacci(RequestedNumber) returns (FibonacciResult){}
}
//the request message format
message RequestedNumber {
int32 number = 1;
}
//the response message format
message FibonacciResult {
int32 result = 1;
}
syntax = "proto3";
option csharp_namespace = "MyFirstGrpc";
package Fibonacci;
// The service definition.
service Fibo {
rpc ComputeFibonacci(RequestedNumber) returns (FibonacciResult){}
}
//the request message format
message RequestedNumber {
int32 number = 1;
}
//the response message format
message FibonacciResult {
int32 result = 1;
}
Trough a message
broker
RPC
RPC
 A kind of API call
Done through a message broker
 Ties systems together but preserves their
encapsulations
Makes an external system look ‘local’
No direct code dependencies
RPC
S H
Queues
Request
RPC
S
Queues
Response
Request
H
.NET Fest 2019. Irina Scurtu. Forget about HTTP
Gain vs Loss
You don’t lose the requests
You can add more handler instances
You can ‘apparently’ spread the load
You can process more requests
 Need to match the request
to the response
 Is still sync
Messaging Body
Header
Messaging
Gives you loosely coupled integration
Doesn’t require both systems to be up
Messages ca be transformed in transit - Enrichers
Messaging systems trade consistency for availability
You don’t lose messages
Involves a Producer and a consumer
Messaging
ASYNC Message Processing
S H
Queues
RequestRequest
Queue
S
Queues
Response
Request
RequestRequest
H
Queue
Response
Response
With a DB
S
Queues
Response
Request
RequestRequest
H
Storage
With a DB
s
Queues
Response
Request
RequestRequest
H
Storage
Gains
• Is a reaction to the problems
of distributed systems
• Process more requests
• Process request faster
• Don’t lose requests
 You move the potential
issues to another
subsystem (DB in our case)
 Eventual consistency
remains a problem
Loss
Solutions to eventual problems
 Connection is scarce
 Batch process the message
 Use a semaphore to process them in batches
WHY USE a messaging
system with MSA ?
Agility
Faster development
No integration process
You depend only on a response
Teams have ownership and full understanding of the codebase
You can switch technologies if needed
Scalability
Scale up
Scale out
Increased Throughput
38 267 vs 3500
ElasticityScale down to
reduce costs
A lot of ‘ilities’
Reliability
Flexibility
Distribution
Increased Throughput
Scalability
Elasticity
Performance
Agility
Fault Tolerance
Tools/Frameworks/Systems
What options do I have?
plenty
Many more
Data Types
Queues
Actor Model
Message Brokers
Queues
Useful for point to point communication
Messages are ordered and timestamped
Pull-mode
Actor model
Born from Reactive Programming
Actors are processes that encapsulate behavior
Actors are more than message consumers
Can delegate and create new actors
Can supervise children
At most once delivery
Reactive Manifesto
Message Driven
ResilientElastic
Responsive
Async message
Loose coupling
Location transparency
Scalable
React to workload
changes
Failures are self contained
Recovery
Isolation
Message Brokers
Message Brokers
One process sends a message to a named queue/topic
One or many consumers
Handles connections and disconnections
Dead-letter queue concept
Message Guarantees ( 3 types)
Different Protocols
Guarantees
RabbitMQ
Message Brokers
Lightweight
Queues are FIFO
Supports AMQP protocol
Easy to use, fast
At-least-once delivery
AMQP General Notes
 Async by nature
 Guaranteed message delivery
 At-least once, exactly once, at most once delivery
 No DNS resolve
 Programmatic routing
 Retries out-of-the box
 Ack, Nack out of the box
 Has the “channel” concept
AMQP General Notes
 Has the “channel”
concept
.NET Fest 2019. Irina Scurtu. Forget about HTTP
.NET Fest 2019. Irina Scurtu. Forget about HTTP
Topic Exchange
References
Distributed systems are
all about tradeoffs
Http is not
the only
option!
PLEASE DON’T FOLLOW
ME
@irina_scurtu
Q&A
1 of 79

Recommended

The Migration From Erlang To Otp A Case Study Of A Heavy Duty Tcpip Clients... by
The Migration From Erlang To Otp   A Case Study Of A Heavy Duty Tcpip Clients...The Migration From Erlang To Otp   A Case Study Of A Heavy Duty Tcpip Clients...
The Migration From Erlang To Otp A Case Study Of A Heavy Duty Tcpip Clients...l xf
1.3K views13 slides
Rhein-Main Scala Enthusiasts — Your microservice as a Function by
Rhein-Main Scala Enthusiasts — Your microservice as a FunctionRhein-Main Scala Enthusiasts — Your microservice as a Function
Rhein-Main Scala Enthusiasts — Your microservice as a FunctionPhil Calçado
3.5K views74 slides
Patterns&Antipatternsof SOA by
Patterns&Antipatternsof SOAPatterns&Antipatternsof SOA
Patterns&Antipatternsof SOAMohamed Samy
979 views53 slides
Www ccnav5 net_ccna_1_chapter_3_v5_0_exam_answers_2014 by
Www ccnav5 net_ccna_1_chapter_3_v5_0_exam_answers_2014Www ccnav5 net_ccna_1_chapter_3_v5_0_exam_answers_2014
Www ccnav5 net_ccna_1_chapter_3_v5_0_exam_answers_2014Đồng Quốc Vương
1.4K views8 slides
SOA patterns by
SOA patterns SOA patterns
SOA patterns Arnon Rotem-Gal-Oz
2.6K views62 slides
RIPP Notes by
RIPP NotesRIPP Notes
RIPP NotesGiacomo Vacca
545 views21 slides

More Related Content

Similar to .NET Fest 2019. Irina Scurtu. Forget about HTTP

Move fast and make things with microservices by
Move fast and make things with microservicesMove fast and make things with microservices
Move fast and make things with microservicesMithun Arunan
107 views36 slides
What you need to know about .NET Core 3.0 and beyond by
What you need to know about .NET Core 3.0 and beyondWhat you need to know about .NET Core 3.0 and beyond
What you need to know about .NET Core 3.0 and beyondJon Galloway
157 views65 slides
Questions On Dns And Dhcp by
Questions On Dns And DhcpQuestions On Dns And Dhcp
Questions On Dns And DhcpLeanne Uhl
4 views39 slides
Interoperability and Windows Communication Foundation (WCF) Overview by
Interoperability and Windows Communication Foundation (WCF) OverviewInteroperability and Windows Communication Foundation (WCF) Overview
Interoperability and Windows Communication Foundation (WCF) OverviewJorgen Thelin
5.4K views46 slides
Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit... by
Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit...Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit...
Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit...Ambassador Labs
3.2K views91 slides
Bsit – integration styles (intra + inter) by
Bsit – integration styles (intra + inter)Bsit – integration styles (intra + inter)
Bsit – integration styles (intra + inter)kyroskoh
599 views35 slides

Similar to .NET Fest 2019. Irina Scurtu. Forget about HTTP(20)

Move fast and make things with microservices by Mithun Arunan
Move fast and make things with microservicesMove fast and make things with microservices
Move fast and make things with microservices
Mithun Arunan107 views
What you need to know about .NET Core 3.0 and beyond by Jon Galloway
What you need to know about .NET Core 3.0 and beyondWhat you need to know about .NET Core 3.0 and beyond
What you need to know about .NET Core 3.0 and beyond
Jon Galloway157 views
Questions On Dns And Dhcp by Leanne Uhl
Questions On Dns And DhcpQuestions On Dns And Dhcp
Questions On Dns And Dhcp
Leanne Uhl4 views
Interoperability and Windows Communication Foundation (WCF) Overview by Jorgen Thelin
Interoperability and Windows Communication Foundation (WCF) OverviewInteroperability and Windows Communication Foundation (WCF) Overview
Interoperability and Windows Communication Foundation (WCF) Overview
Jorgen Thelin5.4K views
Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit... by Ambassador Labs
Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit...Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit...
Microservices Practitioner Summit Jan '15 - Don't Build a Distributed Monolit...
Ambassador Labs3.2K views
Bsit – integration styles (intra + inter) by kyroskoh
Bsit – integration styles (intra + inter)Bsit – integration styles (intra + inter)
Bsit – integration styles (intra + inter)
kyroskoh599 views
CocoaConf: The Language of Mobile Software is APIs by Tim Burks
CocoaConf: The Language of Mobile Software is APIsCocoaConf: The Language of Mobile Software is APIs
CocoaConf: The Language of Mobile Software is APIs
Tim Burks473 views
A Pattern Language for Microservices (@futurestack) by Chris Richardson
A Pattern Language for Microservices (@futurestack)A Pattern Language for Microservices (@futurestack)
A Pattern Language for Microservices (@futurestack)
Chris Richardson4.3K views
Asynchronous Python with Twisted by Adam Englander
Asynchronous Python with TwistedAsynchronous Python with Twisted
Asynchronous Python with Twisted
Adam Englander1.8K views
Scaling Streaming - Concepts, Research, Goals by kamaelian
Scaling Streaming - Concepts, Research, GoalsScaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, Goals
kamaelian765 views
A pattern language for microservices (melbourne) by Chris Richardson
A pattern language for microservices (melbourne)A pattern language for microservices (melbourne)
A pattern language for microservices (melbourne)
Chris Richardson1.9K views
A pattern language for microservices - Chris Richardson by JAXLondon_Conference
A pattern language for microservices - Chris RichardsonA pattern language for microservices - Chris Richardson
A pattern language for microservices - Chris Richardson
#JaxLondon keynote: Developing applications with a microservice architecture by Chris Richardson
#JaxLondon keynote: Developing applications with a microservice architecture#JaxLondon keynote: Developing applications with a microservice architecture
#JaxLondon keynote: Developing applications with a microservice architecture
Chris Richardson3.3K views
Developing Applications with a Micro Service Architecture - Chris Richardson by JAXLondon2014
Developing Applications with a Micro Service Architecture - Chris RichardsonDeveloping Applications with a Micro Service Architecture - Chris Richardson
Developing Applications with a Micro Service Architecture - Chris Richardson
JAXLondon20141.3K views
Oo Design And Patterns by Anil Bapat
Oo Design And PatternsOo Design And Patterns
Oo Design And Patterns
Anil Bapat1K views
Lunar Way and the Cloud Native "stack" by Kasper Nissen
Lunar Way and the Cloud Native "stack"Lunar Way and the Cloud Native "stack"
Lunar Way and the Cloud Native "stack"
Kasper Nissen694 views
Overview of Windows Vista Devices and Windows Communication Foundation (WCF) by Jorgen Thelin
Overview of Windows Vista Devices and Windows Communication Foundation (WCF)Overview of Windows Vista Devices and Windows Communication Foundation (WCF)
Overview of Windows Vista Devices and Windows Communication Foundation (WCF)
Jorgen Thelin777 views

More from NETFest

.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET by
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NETNETFest
705 views74 slides
.NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE... by
.NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE....NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE...
.NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE...NETFest
341 views41 slides
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET by
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NETNETFest
617 views43 slides
.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов by
.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов
.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистовNETFest
516 views40 slides
.NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem... by
.NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem....NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem...
.NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem...NETFest
254 views7 slides
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design by
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven DesignNETFest
1.5K views55 slides

More from NETFest(20)

.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET by NETFest
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
.NET Fest 2019. Николай Балакин. Микрооптимизации в мире .NET
NETFest705 views
.NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE... by NETFest
.NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE....NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE...
.NET Fest 2019. Сергей Калинец. Efficient Microservice Communication with .NE...
NETFest341 views
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET by NETFest
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET
.NET Fest 2019. Оля Гавриш. .NET Core 3.0 и будущее .NET
NETFest617 views
.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов by NETFest
.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов
.NET Fest 2019. Оля Гавриш. Машинное обучение для .NET программистов
NETFest516 views
.NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem... by NETFest
.NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem....NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem...
.NET Fest 2019. Roberto Freato. Provisioning Azure PaaS fluently with Managem...
NETFest254 views
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design by NETFest
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
.NET Fest 2019. Halil Ibrahim Kalkan. Implementing Domain Driven Design
NETFest1.5K views
.NET Fest 2019. Сергій Бута. Feature Toggles: Dynamic Configuration at Wirex by NETFest
.NET Fest 2019. Сергій Бута. Feature Toggles: Dynamic Configuration at Wirex.NET Fest 2019. Сергій Бута. Feature Toggles: Dynamic Configuration at Wirex
.NET Fest 2019. Сергій Бута. Feature Toggles: Dynamic Configuration at Wirex
NETFest357 views
.NET Fest 2019. Michael Staib. Hot Chocolate: GraphQL Schema Stitching with A... by NETFest
.NET Fest 2019. Michael Staib. Hot Chocolate: GraphQL Schema Stitching with A....NET Fest 2019. Michael Staib. Hot Chocolate: GraphQL Schema Stitching with A...
.NET Fest 2019. Michael Staib. Hot Chocolate: GraphQL Schema Stitching with A...
NETFest1.6K views
.NET Fest 2019. Андрей Литвинов. Async lifetime tests with xUnit and AutoFixture by NETFest
.NET Fest 2019. Андрей Литвинов. Async lifetime tests with xUnit and AutoFixture.NET Fest 2019. Андрей Литвинов. Async lifetime tests with xUnit and AutoFixture
.NET Fest 2019. Андрей Литвинов. Async lifetime tests with xUnit and AutoFixture
NETFest326 views
.NET Fest 2019. Анатолий Колесник. Love, Death & F# Tests by NETFest
.NET Fest 2019. Анатолий Колесник. Love, Death & F# Tests.NET Fest 2019. Анатолий Колесник. Love, Death & F# Tests
.NET Fest 2019. Анатолий Колесник. Love, Death & F# Tests
NETFest224 views
.NET Fest 2019. Алексей Голуб. Монадные парсер-комбинаторы в C# (простой спос... by NETFest
.NET Fest 2019. Алексей Голуб. Монадные парсер-комбинаторы в C# (простой спос....NET Fest 2019. Алексей Голуб. Монадные парсер-комбинаторы в C# (простой спос...
.NET Fest 2019. Алексей Голуб. Монадные парсер-комбинаторы в C# (простой спос...
NETFest275 views
.NET Fest 2019. Roberto Freato. Azure App Service deep dive by NETFest
.NET Fest 2019. Roberto Freato. Azure App Service deep dive.NET Fest 2019. Roberto Freato. Azure App Service deep dive
.NET Fest 2019. Roberto Freato. Azure App Service deep dive
NETFest197 views
.NET Fest 2019. Леонид Молотиевский. DotNet Core in production by NETFest
.NET Fest 2019. Леонид Молотиевский. DotNet Core in production.NET Fest 2019. Леонид Молотиевский. DotNet Core in production
.NET Fest 2019. Леонид Молотиевский. DotNet Core in production
NETFest250 views
.NET Fest 2019. Александр Демчук. How to measure relationships within the Com... by NETFest
.NET Fest 2019. Александр Демчук. How to measure relationships within the Com....NET Fest 2019. Александр Демчук. How to measure relationships within the Com...
.NET Fest 2019. Александр Демчук. How to measure relationships within the Com...
NETFest204 views
.NET Fest 2019. Anna Melashkina та Philipp Bauknecht. Dragons in a Mixed Real... by NETFest
.NET Fest 2019. Anna Melashkina та Philipp Bauknecht. Dragons in a Mixed Real....NET Fest 2019. Anna Melashkina та Philipp Bauknecht. Dragons in a Mixed Real...
.NET Fest 2019. Anna Melashkina та Philipp Bauknecht. Dragons in a Mixed Real...
NETFest453 views
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem by NETFest
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
.NET Fest 2019. Alex Thissen. Architecting .NET solutions in a Docker ecosystem
NETFest263 views
.NET Fest 2019. Stas Lebedenko. Practical serverless use cases in Azure with ... by NETFest
.NET Fest 2019. Stas Lebedenko. Practical serverless use cases in Azure with ....NET Fest 2019. Stas Lebedenko. Practical serverless use cases in Azure with ...
.NET Fest 2019. Stas Lebedenko. Practical serverless use cases in Azure with ...
NETFest170 views
.NET Fest 2019. Сергей Медведев. How serverless makes Integration TDD a reali... by NETFest
.NET Fest 2019. Сергей Медведев. How serverless makes Integration TDD a reali....NET Fest 2019. Сергей Медведев. How serverless makes Integration TDD a reali...
.NET Fest 2019. Сергей Медведев. How serverless makes Integration TDD a reali...
NETFest182 views
.NET Fest 2019. Сергей Корж. Natural Language Processing in .NET by NETFest
.NET Fest 2019. Сергей Корж. Natural Language Processing in .NET.NET Fest 2019. Сергей Корж. Natural Language Processing in .NET
.NET Fest 2019. Сергей Корж. Natural Language Processing in .NET
NETFest388 views
.NET Fest 2019. Eran Stiller. Create Your Own Serverless PKI with .NET & Azur... by NETFest
.NET Fest 2019. Eran Stiller. Create Your Own Serverless PKI with .NET & Azur....NET Fest 2019. Eran Stiller. Create Your Own Serverless PKI with .NET & Azur...
.NET Fest 2019. Eran Stiller. Create Your Own Serverless PKI with .NET & Azur...
NETFest243 views

Recently uploaded

Volf work.pdf by
Volf work.pdfVolf work.pdf
Volf work.pdfMariaKenney3
90 views43 slides
PRELIMS ANSWER.pptx by
PRELIMS ANSWER.pptxPRELIMS ANSWER.pptx
PRELIMS ANSWER.pptxsouravkrpodder
50 views60 slides
Thanksgiving!.pdf by
Thanksgiving!.pdfThanksgiving!.pdf
Thanksgiving!.pdfEnglishCEIPdeSigeiro
568 views17 slides
ICS3211_lecture 09_2023.pdf by
ICS3211_lecture 09_2023.pdfICS3211_lecture 09_2023.pdf
ICS3211_lecture 09_2023.pdfVanessa Camilleri
147 views10 slides
unidad 3.pdf by
unidad 3.pdfunidad 3.pdf
unidad 3.pdfMarcosRodriguezUcedo
138 views38 slides
Monthly Information Session for MV Asterix (November) by
Monthly Information Session for MV Asterix (November)Monthly Information Session for MV Asterix (November)
Monthly Information Session for MV Asterix (November)Esquimalt MFRC
213 views26 slides

Recently uploaded(20)

Monthly Information Session for MV Asterix (November) by Esquimalt MFRC
Monthly Information Session for MV Asterix (November)Monthly Information Session for MV Asterix (November)
Monthly Information Session for MV Asterix (November)
Esquimalt MFRC213 views
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37 by MysoreMuleSoftMeetup
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37
Payment Integration using Braintree Connector | MuleSoft Mysore Meetup #37
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (FRIE... by Nguyen Thanh Tu Collection
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (FRIE...BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (FRIE...
BÀI TẬP BỔ TRỢ TIẾNG ANH 11 THEO ĐƠN VỊ BÀI HỌC - CẢ NĂM - CÓ FILE NGHE (FRIE...
Introduction to AERO Supply Chain - #BEAERO Trainning program by Guennoun Wajih
Introduction to AERO Supply Chain  - #BEAERO Trainning programIntroduction to AERO Supply Chain  - #BEAERO Trainning program
Introduction to AERO Supply Chain - #BEAERO Trainning program
Guennoun Wajih123 views
Pharmaceutical Analysis PPT (BP 102T) by yakshpharmacy009
Pharmaceutical Analysis PPT (BP 102T) Pharmaceutical Analysis PPT (BP 102T)
Pharmaceutical Analysis PPT (BP 102T)
yakshpharmacy009116 views
JRN 362 - Lecture Twenty-Two by Rich Hanley
JRN 362 - Lecture Twenty-TwoJRN 362 - Lecture Twenty-Two
JRN 362 - Lecture Twenty-Two
Rich Hanley39 views
The Future of Micro-credentials: Is Small Really Beautiful? by Mark Brown
The Future of Micro-credentials:  Is Small Really Beautiful?The Future of Micro-credentials:  Is Small Really Beautiful?
The Future of Micro-credentials: Is Small Really Beautiful?
Mark Brown102 views
Creative Restart 2023: Leonard Savage - The Permanent Brief: Unearthing unobv... by Taste
Creative Restart 2023: Leonard Savage - The Permanent Brief: Unearthing unobv...Creative Restart 2023: Leonard Savage - The Permanent Brief: Unearthing unobv...
Creative Restart 2023: Leonard Savage - The Permanent Brief: Unearthing unobv...
Taste62 views
Creative Restart 2023: Atila Martins - Craft: A Necessity, Not a Choice by Taste
Creative Restart 2023: Atila Martins - Craft: A Necessity, Not a ChoiceCreative Restart 2023: Atila Martins - Craft: A Necessity, Not a Choice
Creative Restart 2023: Atila Martins - Craft: A Necessity, Not a Choice
Taste52 views

.NET Fest 2019. Irina Scurtu. Forget about HTTP