In Distributed Systems by Tanenbaum, p67 says
CHAPTER 2. ARCHITECTURES
2.1. ARCHITECTURAL STYLES
Cabri et al. [2000] provide a taxonomy of coordination models that can be applied equally to many types of distributed systems. Slightly adapting their terminology, we make a distinction between models along two different dimensions, temporal and referential, as shown in Figure 2.9.
When processes are temporally and referentially coupled, coordination takes place in a direct way, referred to as direct coordination. The referential coupling generally appears in the form of explicit referencing in communi- cation. For example, a process can communicate only if it knows the name or identifier of the other processes it wants to exchange information with. Temporal coupling means that processes that are communicating will both have to be up and running. In real life, talking over cell phones (and assuming that a cell phone has only one owner), is an example of direct communication.
A different type of coordination occurs when processes are temporally decoupled, but referentially coupled, which we refer to as mailbox coordina- tion. In this case, there is no need for two communicating processes to be executing at the same time in order to let communication take place. Instead, communication takes place by putting messages in a (possibly shared) mail- box. Because it is necessary to explicitly address the mailbox that will hold the messages that are to be exchanged, there is a referential coupling.
p172 says
CHAPTER 4. COMMUNICATION
4.1. FOUNDATIONS
Types of Communication
An electronic mail system is a typical example in which communication is persistent. With persistent communication, a message that has been sub- mitted for transmission is stored by the communication middleware as long as it takes to deliver it to the receiver. In this case, the middleware will store the message at one or several of the storage facilities shown in Figure 4.4. As a consequence, it is not necessary for the sending application to continue execution after submitting the message. Likewise, the receiving application need not be executing when the message is submitted.
In contrast, with transient communication, a message is stored by the communication system only as long as the sending and receiving application are executing. More precisely, in terms of Figure 4.4, if the middleware cannot
Do persistent communication and temporal decoupling mean the same? What are their relations and differences?
Do transient communication and temporal coupling mean the same? What are their relations and differences?
Thanks.