The Rynus Architecture is designed to provide a robust, scalable, and secure platform for decentralized GPU cloud computing. This architecture includes a comprehensive system architecture and its integral components, highlighting the seamless interaction between various components to deliver efficient and reliable services.
The key components include the System Architecture, Worker Pool Architecture, Worker Architecture, Transfer Architecture, and Cloud Architecture.
System Architecture
User Interface
Rynus user interface is designed with end-users in mind, offering an intuitive and user-friendly experience. This includes the Rynus Cloud, Rynus Transfer, and Rynus Worker applications, all engineered for ease of use and seamless interaction.
Tech Stack:
- Rynus Cloud: Vue.js, Tailwind, web3.js.
- Rynus Transfer and Worker: WPF C#.
Security
Security is a crucial component of Rynus system to improve system safety and security. It is responsible for safeguarding against external threats as well as managing and balancing the system load.
Tech Stack:
- Cloudflare Webapp Firewall (WAF), Cloudflare Load Balancer (LB).
Worker Pool
Worker Pool is the foundational component of Rynus system, encompassing all GPU/CPU resources. It monitors, manages all Workers and GPU/CPU, and distributes computing tasks to the appropriate Workers.
Tech Stack:
- GPU/CPU Pool.
- Orchestration: Apache Airflow, Kubernetes.
- Monitoring: Zabbix, Grafana.
- Data Storage: FILECOIN p2p storage, Rynus cloud storage.
- Containerization: Docker.
Message Queue/Message Router
This component is responsible for coordinating information messages smoothly. It ensures the accuration and flexibility of system operation and maintains the integrity and timeliness of messages.
Tech Stack:
- Message Queue: Kafka.
- Message Router: RabbitMQ.
Database
Our primary database stores all critical system information, including user data, jobs, and worker details. It uses primary storage for structured data and cache for temporary data, employing a mix of both for optimal performance.
Tech Stack:
- RDBMS: Microsoft SQL Server, PostgreSQL.
- Caching: Redis.
Dedicated Servers
Rynus has servers strategically located across various continents to minimize latency and enhance system reliability and speed. Key locations include Northern California, Northern Virginia, São Paulo, Cape Town, Frankfurt, Mumbai, Seoul, Sydney, and Vietnam.
Tech Stack:
- Data Center Tier III.
API/WebSocket
This acts as a bridge connecting applications with the backend system. Using RESTful API and WebSocket, Rynus ensures seamless and complete data transmission from the server side to the applications of end user.
Tech Stack:
- RESTful API, FastAPI, GraphQL, Socket IO.
Elastic Search
Elastic Search facilitates the efficient search and selection of Workers best suited for each computing job. It also optimizes resource utilization and cost efficiency in selecting and using Workers to process computing job.
Tech Stack:
- Java Lucene, Apache Spark.
AI Core
The AI core is the heart of Rynus system, comprising numerous AI/ML models that provide recommendations to optimize processes in terms of time and cost. It offers suggestions for job creation, Worker selection, and job parameter optimization.
Tech Stack:
- Apache Spark, TensorFlow.
Job Manager
This component manages and monitors all computing jobs, including AI/ML model training and 3D rendering tasks.
Tech Stack:
- Microsoft SQL Server, PostgreSQL.
Transaction/Reward Manager
Transaction/Reward Manager handles all transactions related to Rynus tokens and fiat currency, and manages rewards for Workers upon job completion.
Tech Stack:
- Blockchain: Smart contract, On-chain blockchain.
File Manager
File Manager is responsible for managing data of computing jobs uploaded by Requesters to the system. It manages and transfers this data to Workers to process computing jobs.
Tech Stack:
- Filecoin, SFTP.
Backend
The backend consists of various components responsible for many separate functions that ensure the system operates smoothly and reliably. This includes monitoring, logging, analytics, and autoscaling functionalities.
Tech Stack:
- Zabbix, Grafana, ELK stack, Flask, Node.js, Python.
Worker Pool Architecture
Worker Application
The Rynus Worker client application enables users to connect their personal computers to the Rynus network, transforming them into Global Workers. Once connected, the Worker client autonomously receives and processes computing jobs, earning Rynus tokens in return.
Tech Stack:
- WPF, C#.
Worker Pool
Worker Pool is the foundational component of the system, encompassing all GPU/CPU resources. It monitors, manages, and allocates Workers for appropriate computing jobs. The Worker Pool comprises two main types:
- Trusted Partners Worker: GPU Render Farms that are trusted strategic partners of Rynus, with verified servers and GPUs ensuring high performance.
- Global Worker: Personal computers of users participating in the network to earn Rynus tokens.
Tech Stack:
- GPU/CPU Pool.
- Orchestration: Apache Airflow, Kubernetes.
- Resource Monitoring: Zabbix, Grafana.
- Data Storage: FILECOIN p2p storage, Rynus cloud storage.
- Containerization: Docker.
Message Queue
Message Queue is responsible for coordinating information messages smoothly, maintaining the system’s accuracy and flexibility while preserving the integrity and timeliness of data.
Tech Stack:
- Kafka (Message queue).
Dedicated Server
Strategically distributed across the globe, these servers reduce the distance between users and Rynus servers, enhancing response times, speed, and reliability.
Key locations include North California, North Virginia, São Paulo, Cape Town, Frankfurt, Mumbai, Seoul, Sydney, and Vietnam.
Tech Stack:
- Datacenter Tier III.
Elastic Search
Elastic Search handles the search and selection of the most suitable Workers for each computing job. It ensures optimization of hardware resources, as well as optimization of costs in selecting and using Workers to process computing jobs.
Tech Stack:
- Java Lucene, Apache Spark.
AI Core
AI Core is the core element of the system, comprising various AI/ML models to provide recommendations, optimizing processes in terms of time and cost across the entire system. It offers suggestions for:
- Job creation.
- Worker selection.
- Parameter settings during job processing.
Tech Stack:
- Apache Spark, Tensorflow.
Job Manager
Job Manager manages and monitors the state, checkpoints, and scheduling of computing jobs, including AI/ML training jobs and 3D rendering jobs.
Tech Stack:
- Microsoft SQL Server, PostgreSQL, Quartz.
Cloud Architecture
Tech Stack:
Vue.js, Tailwind, web3.js.
Rynus Cloud Architecture Diagram
UI/UX
The user interface layer of the web application, designed for an intuitive and streamlined user experience.
EXPLORER
Provides detailed statistics and information on Rynus activities, including Dashboard, Workers, AI Computing Jobs, Render Computing Jobs, and Transactions.
GPU FOR AI
Manages and creates computing jobs for AI model training projects.
GPU FOR RENDER
Manages and creates computing jobs for 3D rendering projects.
Assets Management
Manages the input and output data of computing jobs.
Documentation
Provides comprehensive guides and documentation for using Rynus.
Support Center
A centralized hub for support and troubleshooting common issues.
Crypto Wallet Controller
Manages and connects to cryptocurrency wallets.
Transaction Management
Manages financial transactions, including fiat currency and Rynus tokens.
Smart Contract
Smart Contract stores rules on the blockchain network to automatically execute when there are events related to Job, Worker, Reward, Transaction, and more.
Blockchain
Utilizes the blockchain network to record and store on-chain data regarding Job, Worker, Reward, and Transaction.
Transfer Architecture
Tech Stack:
- WPF, C#, SocketIO, Kafka, SFTP, Filecoin, REST API.
Rynus Transfer Architecture Diagram
UI/UX
The user interface layer of the desktop application, designed for ease of use and intuitive interaction.
Process Manager
Manages and executes data transfer tasks, including uploading, downloading, deleting, renaming, and creating new folders.
File Manager
Includes 4 main components:
- Chunker: Splits files into smaller parts to accelerate file transfer speeds.
- Indexer: Assigns indexes to each file part, managing changes, locations, and statuses.
- Watcher: Monitors changes to files in the folder, transferring only updated files.
- Compressor: Compresses files before transfer and decompresses them afterward to enhance transfer speed and reduce file count.
Centralized File Transfer
Transfers files to the centralized Rynus server using HTTPS and SFTP protocols.
Decentralized File Transfer
Transfers files to the decentralized, peer-to-peer (P2P) Filecoin network using the IPFS protocol.
Queue
Manages, sequences, and prioritizes data transfer processes, ensuring efficient workflow.
Cache
Improves performance of frequently or recently accessed data.
API
An API layer to connect and communicate between the application and the Rynus server.
CDN Dedicated Server Manager
Manages and automatically detects the nearest Dedicated Server to the user’s location, optimizing file transfer speeds.
Network Manager
Manages information and processes related to computer networks, network interface cards, network speed, and bandwidth.
Operating System
The operating system layer manages processes on the CPU, ensuring efficient process allocation.
Worker Architecture
Tech Stack:
WPF, C#, SocketIO, Kafka, SFTP, Filecoin, REST API.
Rynus Worker Architecture Diagram
UI/UX
The user interface layer of the desktop application, providing a user-friendly experience.
Mining Controller
Manages the process of mining coins, automatically switching between mining mode and computing job processing mode.
Computing Job Manager
Receives computing jobs and manages their status and information.
GPU Monitor
Monitors hardware information related to the GPU.
File Manager
Includes 4 main components:
- Chunker: Splits files into smaller parts to increase file transfer speeds.
- Indexer: Marks indexes for each file part, managing changes, locations, and statuses.
- Watcher: Monitors folder changes, transferring only updated files.
- Compressor: Compresses files before transfer and decompresses them afterward to enhance transfer speed and reduce file count.
Centralized File Transfer
Transfers files to the centralized Rynus server using HTTPS and SFTP protocols.
Decentralized File Transfer
Transfers files to the decentralized peer-to-peer (P2P) Filecoin network using the IPFS protocol.
Job Processor
Executes computing jobs, including:
- AI job: Processes AI model training jobs.
- Render job: Processes 3D rendering jobs.
- Job analyzer: Analyzes job parameters.
- AI core: AI models that find and optimize job parameters to achieve accurate output results, save time, and maximize computer performance.
Queue
Manages, sequences, and prioritizes data transfer processes, ensuring efficient workflow.
Cache
Improves performance of frequently or recently accessed data.
API
An API layer to connect and communicate between the application and the Rynus server.
GPU Manager
Manages processes handled by the GPU on the Worker’s computer.
Reward Manager
Manages rewards for Workers upon successful completion of computing jobs.
Smart Contract
Smart Contract stores rules on the blockchain to automatically execute when there are events related to Job, Worker, Reward, and Transactions.
Blockchain
Utilizes the blockchain network to record and store on-chain data regarding Job, Worker, Reward, and Transaction.
Network Manager
Manages information and processes related to computer networks, network interface cards, network speed, and bandwidth.
Operating System
The operating system layer manages processes on the CPU, ensuring efficient process allocation.