{'fraction_non_alphanumeric': 0.02712160979877515, 'fraction_numerical': 0.0026246719160104987, 'mean_word_length': 4.927461139896373, 'pattern_counts': {'":': 0, '<': 0, '<?xml version=': 0, '>': 0, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
A P2P Model of Publish/Subscribe Systems

In distributed systems, a group of multiple processes are cooperating with each other by exchanging messages in networks. A process is considered to be a sequence of events in a finite state machine model. Here, it is significant to decide on which event causally precedes another event for a pair of events in a system. In the Lamport's happen-before relation among events, events are partially ordered on the basis of send-receive semantics of messages exchanged at a network layer. In this paper, we discuss a peer-to-peer (P2P) model of a publish/subscribe (P2PPS) system composed of peer processes (peers). Each peer can subscribe and publish application events. Peers subscribing an application event are notified if a peer publishes the application event. Thus, a peer detects application events and then publishes the application events. A peer is notified of application events published by peers. Each peer has to deliver notified application events in the causal order. We discuss the causal dependency of application events handled by subscription, publication, and notification semantics.