Satisfying quality requirements in the design of a partition-based, distributed stock trading system

Xiaohu Yang, Liping Zhao, Xinyu Wang, Ye Wang, Jie Sun, Albert Jerry Cristoforo

    Research output: Contribution to journalArticlepeer-review

    154 Downloads (Pure)

    Abstract

    Although quality requirements (QRs) have become a major drive in today's software development, there have been very few real-world examples in the literature that demonstrate how to meet these requirements. This paper presents such an example. Specifically, the paper describes the design of a partition-based distributed stock trading service system that satisfies a set of QRs related to resource utilization, performance, scalability and availability. The paper evaluates this design through detailed experiments and discusses some design alternatives and the lessons learned. Central to this design are a static load distribution strategy and a dynamic load balancing strategy. The first strategy is to achieve an initial balanced workload on the system's server cluster during the system initialization time, whereas the second strategy is to maintain this balanced workload throughout the system execution time. Together, these two strategies work in unison to ensure that the server resources are efficiently utilized; the user requests are processed with the required speed; the application is partitioned with sufficient room to scale; and the system is highly available. Copyright © 2011 John Wiley & Sons, Ltd.
    Original languageEnglish
    Pages (from-to)131-157
    Number of pages26
    JournalSoftware - Practice and Experience
    Volume42
    Issue number2
    DOIs
    Publication statusPublished - Feb 2012

    Keywords

    • distributed systems
    • partition-based server clusters
    • quality requirements
    • quality-of-service
    • software design
    • static load distribution and dynamic load balancing strategies
    • stock trading systems

    Fingerprint

    Dive into the research topics of 'Satisfying quality requirements in the design of a partition-based, distributed stock trading system'. Together they form a unique fingerprint.

    Cite this