Sean Corfield
Service-Oriented Architecture - Expose common business entities and operations to multiple clients across the enterprise.
Adobe Hosted Services "Stanza" project
These concepts might be quite useful for our "bird" project.
SOA
- Data Dictionary - Everyone needs to agree what a "customer" is.
- Service Directory - You need to be able to find your services.
- SaaS - Software as a Service - Any form of offering that is typically a desktop app, now on the web.
- 20% growth in SaaS as opposed to 6% for normal desktop software
- Often exposes an API for 3rd party apps
- SOA
- A way to structure and build systems that naturally exposes those APIs
- Building blocks for your software
- Building blocks for 3rd party software
- Like regular apps, but with a few layers
- Sounds like MVC apps
- Different because the System layer calls out to remote services perhaps on different servers
CF is a great choice for SOA - as producer and consumer of services
Web Services
- SOAP
- REST
- JSON (native in CF8)
Flex and Flash Remoting
How is SOA different?
- Client-Server by definition
- Clients are varied and can be dumb - don't need to know about your services
- Auth and sessions
- Remote clients have no sense of session
- Can't use session/client scope
- Turn off session scope to save memory
- app and server scopes are okay
- Solution is to pass tokens around
- Store tokens in DB
- Schedule task to clean old tokens
- Data Formats
- Simple XML is probably best
- JSON
- Published API definitions
- Error Handling
I will gladly admit that the rest of this presentation went rocketing over my head. I think it actually made it into orbit.
There are no comments for this entry.
[Add Comment]