Download presentation
Presentation is loading. Please wait.
Published byGabriella Gloria Pearson Modified over 9 years ago
1
C10: Getting Rejected on the Bus How OpenEdge ® Developers Deal with Failure Chris James Senior Consultant
2
© 2008 Progress Software Corporation 2 “It is possible to fail in many ways… while to succeed is possible in only one way” Aristotle – Greek philosopher
3
© 2008 Progress Software Corporation 3 OpenEdge and Sonic ™ ESB You can align business and IT goals using Sonic and OpenEdge in your SOA You can create robust and flexible business applications You can handle failures in your infrastructure, applications, or data
4
© 2008 Progress Software Corporation 4 Agenda Sonic ESB Endpoints Faults and rejected messages Quality of Service (QOS) and Message Time To Live (TTL) Application architecture and AppServer ™ operating modes Fault processing options AppServer Down!!!! Dealing with rejection on the bus
5
© 2008 Progress Software Corporation 5 Terminology Service Your OpenEdge based application exposed to Sonic ESB through the Sonic Adapter Process A Sonic ESB process that uses an itineary to execute 1 or more operations on 1 or more services Container A Sonic managed executable process that hosts processes and services
6
© 2008 Progress Software Corporation 6 Sonic ESB Endpoints Destination where ESB services and processes send and receive messages Can be associated with a Queue or Topic 4 defined Endpoint types for Services Entry (required for services) Exit (usually ReplyTo) Fault RME
7
© 2008 Progress Software Corporation 7 OpenEdge ESB Adapter Architecture Database AppServer Adapter Entry Endpoint Exit Endpoint Fault Endpoint Rejected Endpoint
8
© 2008 Progress Software Corporation 8 Faults and Rejected Messages Rejected Messages Invalid message types Invalid data Adapter exceptions Failure to send result Fault Messages Infrastructure issues Applications errors (RETURN ERROR) Service has Fault and Rejected Message endpoints
9
© 2008 Progress Software Corporation 9 Anatomy of a Rejected Message OPENEDGE_INVOCATION_ERROR <rejectedLocation container="dev_OpenEdgeTest" host="pcdcleary" process="CheckCustomer" serviceApplication="dev.OpenEdge" step="Find Customer" topLevelProcess="CheckCustomer"/> {Error message and stack trace}
10
© 2008 Progress Software Corporation 10 Anatomy of a Fault Message Fault String: SessionPool : NoAvailableSessions[Could not connect to the AppServer: General Error: Connection refused: connect. (7203)] com.progress.open4gl.dynamicapi.SessionPool.NoAv ailableSessionsException Fault String: SessionPool : NoAvailableSessions[Could not connect to the AppServer: General Error: Connection refused: connect. (7203)] com.progress.open4gl.dynamicapi.Sessio nPool.NoAvailableSessionsException
11
© 2008 Progress Software Corporation 11 Quality of Service Best Effort Default Messages may be lost or redelivered At Least Once No lost messages May be redelivered Exactly Once Most reliable No lost or redelivered messages
12
© 2008 Progress Software Corporation 12 Message Time To Live Specifies a timeout on a process Messages that timeout sent to RME Default is 0 (no timeout)
13
© 2008 Progress Software Corporation 13 Configuring Properties Service Fault and Rejected Message endpoints Can be overridden by process Endpoint Entry endpoint specifies QOS Process sets minimum QOS Process Time to Live
14
© 2008 Progress Software Corporation 14 Application Architecture and Operating Modes Sonic container and OpenEdge AppServer treated as single unit Sonic provides networking Fewer faults due to AppServer availability ESB Service and OpenEdge AppService same Session-free operating mode recommended Each operation does complete unit of work No state saved on AppServer Persistent procedures defeat this architecture
15
© 2008 Progress Software Corporation 15 Session-managed and Persistent Procedure Issues Requires three calls for a single operation Saves state on AppServer even with Session- free AppServer still bound due to fault or rejected message Limits scalability Enable Intra-Container messaging to mitigate issues
16
© 2008 Progress Software Corporation 16 Fault Processing Options Settable per operation Fault Only (Default) Original message lost Fault and Original message Original message can be remediated and resubmitted Rejected and Original message Same as above, but rejected format Continue process with Fault
17
© 2008 Progress Software Corporation 17 Fault Processing Options
18
© 2008 Progress Software Corporation 18 Booking a Vacation Client Flight Booking Coordinator Service Hotel BookingCar Booking
19
© 2008 Progress Software Corporation 19 Book Hotel Room Process
20
© 2008 Progress Software Corporation 20 Checking Availability Yes, there are rooms available Process/transaction continues No, there are not rooms available Entire transaction fails I don’t know if rooms are available AppServer down No available agents
21
© 2008 Progress Software Corporation 21 Fix problem and resubmit
22
© 2008 Progress Software Corporation 22 AppServer Down Demo!!!
23
© 2008 Progress Software Corporation 23 Agenda Sonic ESB Endpoints Faults and rejected messages Quality of Service (QOS) and Message Time To Live (TTL) Application architecture and AppServer operating modes Fault processing options AppServer Down!!!! Dealing with rejection on the bus
24
© 2008 Progress Software Corporation 24 In Summary You can align business and IT goals using Sonic and OpenEdge You can create robust and flexible business applications You can handle failures in your infrastructure, applications, or data
25
© 2008 Progress Software Corporation 25 For More Information, go to… PSDN Introducing Native Invocation with the OpenEdge Adapter for Sonic ESBIntroducing Native Invocation with the OpenEdge Adapter for Sonic ESB Progress Sonic ESB Developers Guide - Resubmit SampleProgress Sonic ESB Developers Guide - Resubmit Sample Progress eLearning Community: OpenEdge Development with Sonic ESB Designing ESB Processes Orchestrating Services with Sonic BPEL ServerOrchestrating Services with Sonic BPEL Server
26
© 2008 Progress Software Corporation 26 Relevant PTW Sessions C4: Common Applications for Sonic ESB C8: Getting the Most Out of Sonic Workbench
27
© 2008 Progress Software Corporation 27 Questions ?
28
© 2008 Progress Software Corporation 28 Thank You
29
© 2008 Progress Software Corporation 29
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.