{'fraction_non_alphanumeric': 0.028712871287128714, 'fraction_numerical': 0.0009900990099009901, 'mean_word_length': 5.164634146341464, '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}}
Improving scalability of processor utilization on heavily-loaded servers with real-time scheduling

It is a well-known issue that the polling I/O, such as select() and poll(), has a poor scalability. As a solution of the problem, we previously proposed the interval control technique of the polling I/O, which eases excessively frequent invocations of the polling I/O [1]. Although the benchmark tests proved that the technique effectively reduced the service latency, it still has a problem of high processor usage when the number of concurrent sockets grows large. This problem is caused by unexpected context switches, which degrade the efficacy of the interval control. In this paper, we propose the interval control technique with POSIX real-time scheduling that prevents such unexpected interruptions. Because programs under real-time scheduling are difficult to develop and they often cause a systemwide freeze, simple application of real-time scheduling to the interval control mechanism is considered.