IBM E02HMLL-I Implementation Guide - Page 31

Recovery, features

Page 31 highlights

However, collaborations are different from traditional transactions in some important ways: v Collaboration actions are distributed, and there is no centralized control over the participating databases. v Collaborations that respond to events (as in the publish-and-subscribe model) are long-lived; they execute asynchronously, because to isolate application data while they execute would adversely affect application users. v Applications save data changes caused by collaborations, thereby providing a distributed, cross-application form of durability. However, if a collaboration needs to roll back, it might need to undo previously saved operations. The techniques that the InterChange Server Express uses to support transactional collaborations, therefore, differ from those that support traditional transactions. The transaction levels associated with collaborations define the rigor with which the InterChange Server Express enforces transactional semantics. Recovery features An InterChange Server Express implementation provides features for improving the time it takes ICS to reboot after a failure, for making ICS available for other work before all flows have been recovered, and for controlling the resubmission of failed events: v Asynchronous recovery InterChange Server Express does not wait for collaborations and connectors to recover before it completes boot-up; collaborations and connectors are allowed to recover asynchronously after InterChange Server Express has booted. This makes it possible to use System Manager troubleshooting tools, such as System Monitor, while the connectors and collaborations are still recovering. v Deferred recovery Use of this feature is optional and is configured through the use of collaboration object properties. If you enable this feature for a collaboration, when an ICS failure occurs, the recovery of the collaboration's WIP flows is deferred until after the server has rebooted, thereby saving the memory usage associated with those flows. After the server has rebooted, you can resubmit the events. v Persist service call in-transit state You may want to prevent a recovery from automatically resubmitting all service calls that were in transit when a failure occurred, to avoid the possibility of a nontransactional collaboration sending duplicate events to a destination application. This is accomplished by configuring the collaboration (prior to the server failure) so that it will persist any service call event in the In-Transit state when a failure and recovery occurs. When InterChange Server Express recovers, the flows that were processing service calls remain in the In-Transit state, and you can examine individual unresolved flows and control when (or if) they are resubmitted. v Guaranteed event delivery features For JMS-enabled connectors (connectors that use JMS as their transport mechanism), the following features can be useful for guaranteed event delivery in recovery situations: - Container managed events The container managed events feature is valid for JMS-enabled connectors that use a JMS event store. It ensures that if a system crash and recovery occurs, an event that was in process between the event store and the connector framework will be received exactly once by the connector Chapter 1. Overview of IBM WebSphere Business Integration Server Express 19

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58
  • 59
  • 60
  • 61
  • 62
  • 63
  • 64
  • 65
  • 66
  • 67
  • 68
  • 69
  • 70
  • 71
  • 72
  • 73
  • 74
  • 75
  • 76
  • 77
  • 78
  • 79
  • 80
  • 81
  • 82
  • 83
  • 84
  • 85
  • 86
  • 87
  • 88
  • 89
  • 90
  • 91
  • 92
  • 93
  • 94
  • 95
  • 96
  • 97
  • 98
  • 99
  • 100
  • 101
  • 102
  • 103
  • 104
  • 105
  • 106
  • 107
  • 108
  • 109
  • 110
  • 111
  • 112
  • 113
  • 114
  • 115
  • 116
  • 117
  • 118
  • 119
  • 120
  • 121
  • 122
  • 123
  • 124
  • 125
  • 126
  • 127
  • 128
  • 129
  • 130
  • 131
  • 132
  • 133
  • 134
  • 135
  • 136
  • 137
  • 138
  • 139
  • 140
  • 141
  • 142
  • 143
  • 144
  • 145
  • 146
  • 147
  • 148
  • 149
  • 150
  • 151
  • 152
  • 153
  • 154
  • 155
  • 156
  • 157
  • 158
  • 159
  • 160
  • 161
  • 162
  • 163
  • 164
  • 165
  • 166
  • 167
  • 168
  • 169
  • 170
  • 171
  • 172
  • 173
  • 174
  • 175
  • 176
  • 177
  • 178
  • 179
  • 180
  • 181
  • 182
  • 183
  • 184
  • 185
  • 186
  • 187
  • 188
  • 189
  • 190
  • 191
  • 192
  • 193
  • 194
  • 195
  • 196
  • 197
  • 198
  • 199
  • 200
  • 201
  • 202
  • 203
  • 204
  • 205
  • 206
  • 207
  • 208
  • 209
  • 210
  • 211
  • 212
  • 213
  • 214
  • 215
  • 216
  • 217
  • 218
  • 219
  • 220
  • 221
  • 222
  • 223
  • 224
  • 225
  • 226
  • 227
  • 228
  • 229
  • 230
  • 231
  • 232
  • 233
  • 234
  • 235
  • 236
  • 237
  • 238
  • 239
  • 240
  • 241
  • 242
  • 243
  • 244
  • 245
  • 246
  • 247
  • 248
  • 249
  • 250
  • 251
  • 252
  • 253
  • 254
  • 255
  • 256
  • 257
  • 258
  • 259
  • 260
  • 261
  • 262
  • 263
  • 264
  • 265
  • 266
  • 267
  • 268
  • 269
  • 270
  • 271
  • 272
  • 273
  • 274
  • 275
  • 276
  • 277
  • 278
  • 279
  • 280
  • 281
  • 282
  • 283
  • 284
  • 285
  • 286
  • 287
  • 288
  • 289
  • 290
  • 291
  • 292
  • 293
  • 294
  • 295
  • 296
  • 297
  • 298
  • 299
  • 300
  • 301
  • 302

However,
collaborations
are
different
from
traditional
transactions
in
some
important
ways:
v
Collaboration
actions
are
distributed,
and
there
is
no
centralized
control
over
the
participating
databases.
v
Collaborations
that
respond
to
events
(as
in
the
publish-and-subscribe
model)
are
long-lived;
they
execute
asynchronously,
because
to
isolate
application
data
while
they
execute
would
adversely
affect
application
users.
v
Applications
save
data
changes
caused
by
collaborations,
thereby
providing
a
distributed,
cross-application
form
of
durability.
However,
if
a
collaboration
needs
to
roll
back,
it
might
need
to
undo
previously
saved
operations.
The
techniques
that
the
InterChange
Server
Express
uses
to
support
transactional
collaborations,
therefore,
differ
from
those
that
support
traditional
transactions.
The
transaction
levels
associated
with
collaborations
define
the
rigor
with
which
the
InterChange
Server
Express
enforces
transactional
semantics.
Recovery
features
An
InterChange
Server
Express
implementation
provides
features
for
improving
the
time
it
takes
ICS
to
reboot
after
a
failure,
for
making
ICS
available
for
other
work
before
all
flows
have
been
recovered,
and
for
controlling
the
resubmission
of
failed
events:
v
Asynchronous
recovery
InterChange
Server
Express
does
not
wait
for
collaborations
and
connectors
to
recover
before
it
completes
boot-up;
collaborations
and
connectors
are
allowed
to
recover
asynchronously
after
InterChange
Server
Express
has
booted.
This
makes
it
possible
to
use
System
Manager
troubleshooting
tools,
such
as
System
Monitor,
while
the
connectors
and
collaborations
are
still
recovering.
v
Deferred
recovery
Use
of
this
feature
is
optional
and
is
configured
through
the
use
of
collaboration
object
properties.
If
you
enable
this
feature
for
a
collaboration,
when
an
ICS
failure
occurs,
the
recovery
of
the
collaboration’s
WIP
flows
is
deferred
until
after
the
server
has
rebooted,
thereby
saving
the
memory
usage
associated
with
those
flows.
After
the
server
has
rebooted,
you
can
resubmit
the
events.
v
Persist
service
call
in-transit
state
You
may
want
to
prevent
a
recovery
from
automatically
resubmitting
all
service
calls
that
were
in
transit
when
a
failure
occurred,
to
avoid
the
possibility
of
a
nontransactional
collaboration
sending
duplicate
events
to
a
destination
application.
This
is
accomplished
by
configuring
the
collaboration
(prior
to
the
server
failure)
so
that
it
will
persist
any
service
call
event
in
the
In-Transit
state
when
a
failure
and
recovery
occurs.
When
InterChange
Server
Express
recovers,
the
flows
that
were
processing
service
calls
remain
in
the
In-Transit
state,
and
you
can
examine
individual
unresolved
flows
and
control
when
(or
if)
they
are
resubmitted.
v
Guaranteed
event
delivery
features
For
JMS-enabled
connectors
(connectors
that
use
JMS
as
their
transport
mechanism),
the
following
features
can
be
useful
for
guaranteed
event
delivery
in
recovery
situations:
–
Container
managed
events
The
container
managed
events
feature
is
valid
for
JMS-enabled
connectors
that
use
a
JMS
event
store.
It
ensures
that
if
a
system
crash
and
recovery
occurs,
an
event
that
was
in
process
between
the
event
store
and
the
connector
framework
will
be
received
exactly
once
by
the
connector
Chapter
1.
Overview
of
IBM
WebSphere
Business
Integration
Server
Express
19