[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"detail-sidebar-cat-0-en-105":3,"doc-seo-289851-105":59,"doc-detail-289851-en":131},{"code":4,"msg":5,"data":6},0,"success",[7,13,18,23,28,33,38,43,48,51,55],{"id":8,"doc_module":4,"doc_module_name":9,"category_name":10,"show_sort_weight":11,"slug":12},1,"Document","Story & Novel",90,"story-novel",{"id":14,"doc_module":4,"doc_module_name":9,"category_name":15,"show_sort_weight":16,"slug":17},2,"Literature",80,"literature",{"id":19,"doc_module":4,"doc_module_name":9,"category_name":20,"show_sort_weight":21,"slug":22},4,"Exam",70,"exam",{"id":24,"doc_module":4,"doc_module_name":9,"category_name":25,"show_sort_weight":26,"slug":27},5,"Comic",60,"comic",{"id":29,"doc_module":4,"doc_module_name":9,"category_name":30,"show_sort_weight":31,"slug":32},6,"Technology",50,"technology",{"id":34,"doc_module":4,"doc_module_name":9,"category_name":35,"show_sort_weight":36,"slug":37},7,"Healthcare",40,"healthcare",{"id":39,"doc_module":4,"doc_module_name":9,"category_name":40,"show_sort_weight":41,"slug":42},8,"Research & Report",30,"research-report",{"id":44,"doc_module":4,"doc_module_name":9,"category_name":45,"show_sort_weight":46,"slug":47},9,"Religion & Spirituality",20,"religion-spirituality",{"id":46,"doc_module":4,"doc_module_name":9,"category_name":49,"show_sort_weight":46,"slug":50},"World Cup","world-cup",{"id":52,"doc_module":4,"doc_module_name":9,"category_name":53,"show_sort_weight":52,"slug":54},10,"Lifestyle","lifestyle",{"id":56,"doc_module":4,"doc_module_name":9,"category_name":57,"show_sort_weight":24,"slug":58},19,"General","general",{"code":4,"msg":60,"data":61},"ok",{"site_id":62,"language":63,"slug":64,"title":65,"keywords":66,"description":67,"schema_data":68,"social_meta":124,"head_meta":126,"extra_data":128,"updated_unix":130},105,"en","formalization-and-verification-of-go-based-new-simple-queue-system","Formalization and Verification of Go-based New Simple Queue System","","NSQ (New Simple Queue) is a Go-based real-time distributed messaging platform built to process billions of messages daily with stable, efficient operation at scale. Its decentralized topology supports fault tolerance, high availability, and reliable delivery, while elastic configuration and deployment improve operational flexibility. To address security and stability concerns, the paper formalizes NSQ’s core modules using CSP process algebra and applies the PAT model checker to verify five properties, confirming divergence freedom, reachability, scalability, availability, and flow controllability.",{"@graph":69,"@context":123},[70,84,106],{"@type":71,"itemListElement":72},"BreadcrumbList",[73,77,79,82],{"item":74,"name":75,"@type":76,"position":8},"https://docshare.wps.com","Home","ListItem",{"item":78,"name":9,"@type":76,"position":14},"https://docshare.wps.com/document/",{"item":80,"name":40,"@type":76,"position":81},"https://docshare.wps.com/document/research-report/",3,{"item":83,"name":65,"@type":76,"position":19},"https://docshare.wps.com/document/formalization-and-verification-of-go-based-new-simple-queue-system/289851/",{"url":83,"name":65,"@type":85,"image":86,"author":91,"headline":65,"publisher":94,"fileFormat":97,"inLanguage":63,"description":67,"dateModified":98,"datePublished":99,"encodingFormat":97,"isAccessibleForFree":100,"interactionStatistic":101},"DigitalDocument",{"url":87,"@type":88,"width":89,"height":90},"https://docshare.wps.com/thumbnails/formalization-and-verification-of-go-based-new-simple-queue-system/289851.png","ImageObject",300,407,{"name":92,"@type":93},"Olivia Brown","Person",{"url":74,"name":95,"@type":96},"DocShare","Organization","application/pdf","2026-11-09","2026-09-17",true,{"@type":102,"interactionType":103,"userInteractionCount":105},"InteractionCounter",{"@type":104},"ViewAction",15,{"@type":107,"mainEntity":108},"FAQPage",[109,115,119],{"name":110,"@type":111,"acceptedAnswer":112},"What is the main goal of the paper?","Question",{"text":113,"@type":114},"The paper aims to formally analyze and verify key properties of the Go-based NSQ system to ensure correctness, reliability, and stability.","Answer",{"name":116,"@type":111,"acceptedAnswer":117},"How are NSQ’s core modules modeled?",{"text":118,"@type":114},"It uses process algebra CSP to model the core functional modules and basic workflow of NSQ.",{"name":120,"@type":111,"acceptedAnswer":121},"Which properties are verified for the NSQ model?",{"text":122,"@type":114},"The model checker PAT verifies divergence freedom, reachability, scalability, availability, and flow controllability.","https://schema.org",{"og:url":83,"og:type":125,"og:title":65,"og:site_name":95,"og:description":67},"article",{"robots":127,"canonical":83},"index,follow",{"doc_id":129,"site_id":62},289851,1789637884,{"code":4,"msg":5,"data":132},{"doc_id":129,"user_id":133,"nickname":92,"user_avatar":134,"doc_module":4,"category_id":39,"category_name":40,"doc_title":65,"doc_description":67,"doc_content":135,"file_id":136,"file_url":137,"file_type":138,"file_size":139,"view_count":105,"is_deleted":4,"is_public":8,"is_downloadable":8,"audit_status":8,"page_count":39,"language":140,"language_code":63,"site_id":62,"html_lang":63,"table_of_contents":141,"faqs":142,"seo_title":143,"seo_description":67,"update_tm":130,"read_time":46,"preview_page_count":4},16904993612988,"https://ap-avatar.wpscdn.com/davatar_a8503ba1806abce46bf441b54a3ca4cd","Formalization and Verification of Go-based New Simple Queue System  \nDanyang Wang1 , Jiaqi Yin2, Sini Chen1 and Huibiao Zhu 1  \n1 Shanghai Key Laboratory of Trustworthy Computing. East China Normal University, Shanghai, China  \n2 Northwestern Polytechnical University, Xi’an, China  \nAbstract  \nNSQ (New Simple Queue) is a real-time distributed messaging platform implemented by Go language. It’s designed to operate at scale stably and efficiently handle billions of messages per day. Its decentralized topology guarantees fault tolerance, high availability, and reliable message delivery. Operationally, NSQ is elastic to configure and deploy. With the broad application of the NSQ message system, its security and stability have attracted extensive concentration. Therefore, it is crucial to conduct a rigorous analysis and verification of NSQ’s properties. In this paper, we employ process algebra CSP (Communicating Sequential Processes) to model the core functional modules of the NSQ. In addition, we utilize the model checker PAT (Process Analysis Toolkit) to verify five properties of the model, including divergence freedom, reachability, scalability, availability, and flow controllability. The verification results demonstrate that the NSQ system satisfies all the above properties, proving that the system has high flexibility and robustness while providing credible and efficient message delivery.  \nKeywords  \nNSQ, Messaging System, Communicating Sequential Processes(CSP), Modeling, Verification  \n1. Introduction  \nIn the rapidly evolving era of the Internet, the explosion of users and services creates severe challenges for network applications. Conventional monolithic and vertical service architectures can no longer deal with such a volume of data. Distributed services are gradually becoming the mainstream architecture. As a foundational segment in distributed message systems, middleware [1] is important in decoupling, asynchronous communication, traffic clipping, and other issues. It can improve the performance and stability of applications. Therefore, message queue as a critical middleware acquires more attention in the Internet field.  \nWith the evolution of technology, message queues are gradually maturing, resulting in a series of outstanding middleware, including ActiveMQ [2], RabbitMQ [3], Kafka [4], and RocketMQ [5] . These services decouple complex systems and enable asynchronous operations to reduce response times, providing a better user experience. Although the introduction of middleware can significantly improve the performance of a system, we must consider its potential problems and challenges, such as reduced availability due to unstable message queues and data inconsistencies due to concurrent communication. The system needs to introduce additional mechanisms  \nQuASoQ 2023: 11th International Workshop on Quantitative Approaches to Software Quality, December 04, 2023, Seoul, South Korea  \n$ [51215902076@stu.ecnu.edu.cn](51215902076@stu.ecnu.edu.cn) (D. Wang); [jqyin@nwpu.edu.cn](jqyin@nwpu.edu.cn)[ ](jqyin@nwpu.edu.cn)(J. Yin); [52265902002@stu.ecnu.edu.cn](52265902002@stu.ecnu.edu.cn) (S. Chen);  \n[hbzhu@sei.ecnu.edu.cn](hbzhu@sei.ecnu.edu.cn) (H. Zhu)  \n© 2023 Copyright for this paper by its authors. Use permitted under Creative  \n\n|  | CEUR Workshop Proceedings |\n| --- | --- |\n\nCommons License Attribution 4 .0 International (CC BY 4 .0) .  \nCEUR Workshop Proceedings ([CEUR-WS.org](CEUR-WS.org))  \n[http://ceur-ws.org](http://ceur-ws.org)  \n[ISSN 1613-0073](ISSN 1613-0073)  \nCEUR ~~  ~~[Workshop](Workshop ceur-ws.org)[ ceur-ws.org](Workshop ceur-ws.org)[ ](Workshop ceur-ws.org)[Proceedings](Proceedings ISSN 1613-0073)[ ISSN 1613-0073](Proceedings ISSN 1613-0073)   \nto ensure high availability and reachability of messages, which increases system complexity. Therefore, excellent message middleware should have high message processing efficiency, robustness, stability, and scalability.  \nNSQ [6] has emerged from these exce","cbCaiiZfL4vDEpJV","https://ap.wps.com/l/cbCaiiZfL4vDEpJV","pdf",2514953,"English","# Introduction\n# Method and Modeling (CSP)\n# Property Verification (PAT)\n# Results and Discussion","[{\"question\":\"What is the main goal of the paper?\",\"answer\":\"The paper aims to formally analyze and verify key properties of the Go-based NSQ system to ensure correctness, reliability, and stability.\"},{\"question\":\"How are NSQ’s core modules modeled?\",\"answer\":\"It uses process algebra CSP to model the core functional modules and basic workflow of NSQ.\"},{\"question\":\"Which properties are verified for the NSQ model?\",\"answer\":\"The model checker PAT verifies divergence freedom, reachability, scalability, availability, and flow controllability.\"}]","Formalization and Verification of Go-based New Simple Queue System | PDF"]