130 likes | 276 Views
Martin Parry Developer & Platform Group Microsoft Ltd Martin.Parry@microsoft.com http://www.martinparry.com. Windows Communication Foundation. Sys.Messaging. MSMQ, Txns, Queuing. Communications. ASMX. Ent Services. Secure, Transactional. Basic, Open Comms. Remoting. WSE.
E N D
Martin Parry Developer & Platform Group Microsoft Ltd Martin.Parry@microsoft.com http://www.martinparry.com WindowsCommunicationFoundation
Sys.Messaging MSMQ, Txns, Queuing Communications ASMX Ent Services Secure, Transactional Basic, Open Comms Remoting WSE Secure, Open Comms Fast, Secure, Binary
“Service” Message (SOAP) Message Headers: Addressing, Security, etc. Message Body: Payload Metadata Distributed Applications “Client” • Services pass messages described by a contract • Service may provide metadata, describing: - • The contract • The policy applied to communication
Security? Encoding? Transport? Mechanics of Communication “Service” “Client” What do I send? Contract Where do I send it? Address How should I send it? Binding
Endpoint Endpoint Endpoint Contract Contract Contract Binding Binding Binding Address Address Address Mechanics of Communication “Service” “Client”
Basic WCF Demo
XML objects formatting behaviours behaviours WCF – sketched architecture Client Service Your code Your code channel Metadata channel Transport Channel (HTTP, TCP, MSMQ, Pipes, Peer) channel channel channel channel Binding (ordered list of channel types & config) encoding decoding channel type 1 config channel type 2 config channel type N config
Instancing, Concurrency, Sessions • Service classes can be instantiated: - • Singleton, Per-Call, Per-Session, Shareable • Service code can be either: - • Single threaded, Re-entrant or Multi-threaded Service Message A Singleton Message B Message C Client
Instancing, Concurrency, Sessions • Service classes can be instantiated: - • Singleton, Per-Call, Per-Session, Shareable • Service code can be either: - • Single threaded, Re-entrant or Multi-threaded Service Message A Single Call Message B Single Call Message C Client Single Call
Instancing, Concurrency, Sessions • Service classes can be instantiated: - • Singleton, Per-Call, Per-Session, Shareable • Service code can be either: - • Single threaded, Re-entrant or Multi-threaded Service session Message A Per Session Message B Per Session Message C Client
More WCF Demo
Summary • Windows Communication Foundation • Unified, highly extensible messaging API • FX3.5 adds non-SOAP messaging