{'fraction_non_alphanumeric': 0.027463651050080775, 'fraction_numerical': 0.006462035541195477, 'mean_word_length': 5.138613861386139, '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 Scalable Event Dispatching Library for Linux Network Servers

Network servers often want to process network events asynchronously. They use select() or poll() to get events on file descriptors. However, previous research has shown that these two system calls scale poorly when the number of open connections are increased. In this paper, we compare several event dispatching mechanisms available under Linux, and present our user-mode solution that takes advantage of temporal locality among events while polling. We show that a memory-based web server with this change can have about 20%-30% performance improvement.