List the three main software components that may fail when a client process invokes a method in a server object, giving an example of a failure in each case. To what extent are these failures independent of one another? Suggest how the components can be made to tolerate one another’s failures.

What will be an ideal response?


The three main software components that may fail are:

• the client process e.g. it may crash

• the server process e.g. the process may crash

• the communication software e.g. a message may fail to arrive

The failures are generally caused independently of one another. Examples of dependent failures:

• if the loss of a message causes the client or server process to crash. (The crashing of a server would cause a client to perceive that a reply message is missing and might indirectly cause it to fail).
• if clients crashing cause servers problems.

• if the crash of a process causes a failures in the communication software.

Both processes should be able to tolerate missing messages. The client must tolerate a missing reply message after it has sent an invocation request message. Instead of making the user wait forever for the reply, a client process could use a timeout and then tell the user it has not been able to contact the server.
A simple server just waits for request messages, executes invocations and sends replies. It should be absolutely immune to lost messages. But if a server stores information about its clients it might eventually fail if clients crash without informing the server (so that it can remove redundant information.
The communication software should be designed to tolerate crashes in the communicating processes. For example, the failure of one process should not cause problems in the communication between the surviving processes.

Computer Science & Information Technology

You might also like to view...

In the posttest syntax, the condition is evaluated before the loop instructions are processed.

Answer the following statement true (T) or false (F)

Computer Science & Information Technology

Which of the following is NOT included as part of the status bar?

A) Total number of pages in the document B) The total number of characters in the document C) The page number where the insertion point is located D) Total number of words in the document

Computer Science & Information Technology

How can you move Project field names in the dialog box in the accompanying figure so that they are associated with correct Excel column names?

A. Drag them to the correct position. B. Use the arrow keys on your keyboard. C. Click the Move arrows in the dialog box. D. You cannot move them.

Computer Science & Information Technology

Why is an Active Directory database backup that is older than the tombstone lifetime considered to be invalid?

What will be an ideal response?

Computer Science & Information Technology