Technical Whitepaper
  • Welcome to Arcology Technical Whitepaper
  • 1. Introduction
    • 1.1. Attempted Solutions
    • 1.2. What is Arcology?
    • 1.3. Key Features
    • 1.4. Applications
  • 2. Existing Design Flaws
    • 2.1. Transaction Processing
    • 2.2. Communication
    • 2.3. Consensus
    • 2.4. Storage
    • 2.5. VM Incompatibility
  • 3. Solution Overview
    • 3.1. Distributed Computing
    • 3.2. Deterministic Concurrency
    • 3.3. Tiered Storage
    • 3.4. Consensus
    • 3.5. Intelligent Network Communication
  • 4. Arcology Architecture
    • 4.1. Microservice
    • 4.2. Intra-node Horizontal Scaling
  • 5. Network Communication
    • 5.1. Multi-channel
    • 5.2. Self-adaptive
  • 6. Consensus
    • 6.1. Existing Mechanisms
    • 6.2. Multifactoring
    • 6.3. Advantages
    • 6.4. The Process
    • 6.5. Engine
    • 6.6. Metadata
    • 6.7. Validator Quantification
  • 7. Smart Contract
    • 7.1. Integration
    • 7.2. EVM Compatibility
  • 8. Data Storage
    • 8.1. Issues
    • 8.2. Arcology Storage solution
  • 9. Parallel Merkle Tree
    • 9.1. Tree Structure
    • 9.2. Manipulation
    • 9.3. Tree Storage
    • 9.4. Proof Retrieval
  • 10. Concurrency Control
    • 10.1. Arcology's Concurrency Solution
    • 10.2. Benefits
    • 10.3. Determinism
    • 10.4. Design Considerations
    • 10.5. Arcology Concurrency Framework
  • 11. Microservice Architecture
  • 12. Network Partitioning
    • 12.1. Sharding
    • 12.2. Self-Organization
  • 13. Conclusion
  • 14. References
  • Legal Disclaimer
Powered by GitBook
On this page

11. Microservice Architecture

Previous10. Concurrency ControlNext12. Network Partitioning

Last updated 2 years ago

Arcology is a high-performance and general-purpose blockchain ecosystem that naturally demands a flexible, scalable and loosely coupled system architecture. In Arcology, functional modules can be horizontally scaled and integrated into the existing framework in order to fully harness the computational power that the design offers.

We chose a microservice architecture for the following benefits:

  • Distributed computing: A node on Arcology network can be a group of commodity computers with different service modules connected by a high-speed network.

  • Horizontal scalability: At times of higher throughput, resources are easily added by simply connecting more servers to the group.

  • Loose coupling: Microservice architecture allows different services to be developed individually using the technology stack. This means that internal changes to one service are transparent to the others, making development, testing and deployment much easier.

  • Asynchronous communication: Every functional module is wrapped in a service; they communicate through a messaging system that increases modularity and throughput.

  • Scaling on demand: Node owners can fine-tune their system setup to meet specific needs on the fly. A typical use case is the transaction execution. One node usually comprises several transaction execution units deployed on different servers, working in parallel for maximum power for heavy workloads. When network demands are lighter, it’s more economical to employ fewer execution units.

Validator Quantificationn