Hussah Albinali, Maha Alharbi, Randah Alharbi, M. Aljabri
{"title":"Synchronization Techniques for Multi-threaded Web Server: A Comparative Study","authors":"Hussah Albinali, Maha Alharbi, Randah Alharbi, M. Aljabri","doi":"10.1109/CICN56167.2022.10008307","DOIUrl":null,"url":null,"abstract":"With the exponential growth and advancement of the internet and network technologies, the number of active internet users is expected to exceed 5 billion worldwide by 2025. As a result, designing high performance multi-threaded web server capable of concurrently handling thousands of incoming requests per second is in high demand. To achieve this goal, it is essential for the multi-threaded web server to utilize synchronization algorithm to coordinate the simultaneous use of resources by clients; avoid data inconsistency and still provide timely responses. The aim of this study is to compare and evaluate the performance of different traditional and modern synchronization algorithms adopted by multi-threaded web servers. An empirical experiment is conducted that simulates a file synchronization problem in distributed systems to evaluate how the performance of a multi-threaded web server is affected by those synchronization algorithms. Mutex locks, Spinlocks, Semaphore, and WebR2sync are evaluated, and the performance of each synchronization algorithm is measured using three performance metrics: Synchronization Time, Failure Rate, and Scalability. Results show that Semaphore has the fastest synchronization time, WebR2sync has the lowest failure rate, and Mutex excels at scalability. Such findings help with the decision of which synchronization algorithms to utilize for multi-threaded web servers based on the requirements.","PeriodicalId":287589,"journal":{"name":"2022 14th International Conference on Computational Intelligence and Communication Networks (CICN)","volume":"41 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2022-12-04","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"0","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2022 14th International Conference on Computational Intelligence and Communication Networks (CICN)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/CICN56167.2022.10008307","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 0
Abstract
With the exponential growth and advancement of the internet and network technologies, the number of active internet users is expected to exceed 5 billion worldwide by 2025. As a result, designing high performance multi-threaded web server capable of concurrently handling thousands of incoming requests per second is in high demand. To achieve this goal, it is essential for the multi-threaded web server to utilize synchronization algorithm to coordinate the simultaneous use of resources by clients; avoid data inconsistency and still provide timely responses. The aim of this study is to compare and evaluate the performance of different traditional and modern synchronization algorithms adopted by multi-threaded web servers. An empirical experiment is conducted that simulates a file synchronization problem in distributed systems to evaluate how the performance of a multi-threaded web server is affected by those synchronization algorithms. Mutex locks, Spinlocks, Semaphore, and WebR2sync are evaluated, and the performance of each synchronization algorithm is measured using three performance metrics: Synchronization Time, Failure Rate, and Scalability. Results show that Semaphore has the fastest synchronization time, WebR2sync has the lowest failure rate, and Mutex excels at scalability. Such findings help with the decision of which synchronization algorithms to utilize for multi-threaded web servers based on the requirements.