Architectural Layers
The underlying framework and structural design that powers the Pictor.
Last updated
The underlying framework and structural design that powers the Pictor.
Last updated
The Architecture of Pictor is a multi-layered, cohesive design that delivers a seamless, secure, and efficient user experience. Each layer within the architecture serves a specific purpose, collaborating to maintain optimal system performance.
User Interface
The User Interface layer is the visual gateway through which users interact with Pictor. It includes the Pictor Cloud, Pictor Render, Pictor Worker, and Pictor Checker applications, all designed to be intuitive and user-friendly. This layer ensures that users can easily navigate and interact with the system, making it accessible for both technical and non-technical users.
Tech Stack: ReactJS, Tailwind, web3.js, WPF C#.
Security Layer
The Security Layer is crucial for maintaining the integrity and safety of Pictor. It incorporates a Firewall to protect the network, an Authentication Service to validate users, and a Logging & Event Service to track and record activities. This multi-faceted approach ensures that all operations are secure and monitored, safeguarding the network from potential threats.
Tech Stack: Firewall (pfSense, iptables), Authentication (OAuth, JWT), Logging Service (ELK Stack, Graylog).
API Layer
The API Layer serves as the communication bridge between various components of the Pictor Network. It includes Public APIs for Pictor Cloud and Pictor Explorer, Private APIs for Pictor Render, Pictor Worker, and Pictor Checker, as well as Internal APIs for Management, Analytics, and Monitoring/Reporting. This layer facilitates smooth communication and data exchange across the network.
Tech Stack: RESTful API, FastAPI, GraphQL, Socket IO.
Backend Layer
The Backend Layer is the powerhouse of the Pictor. It manages critical operations such as Worker management, Job management, User management, Transaction management, Resource Monitoring, Analytics, On-chain Monitoring, and Fault Monitoring. This layer ensures that all backend processes are handled efficiently and reliably.
Tech Stack: FastAPI, Python, Node.js, Flask, Pandas.
Database Layer
The Database Layer acts as the data repository for Pictor. It is divided into Main Storage for structured data and Caching for temporary, frequently accessed data. This dual approach allows for quick access to essential data while maintaining the integrity of stored information.
Tech Stack: Main storage (Microsoft SQL Server, PostgreSQL), Caching (Redis).
Message Queue
The Message Queue Layer orchestrates asynchronous communication within the network. It ensures that data flows smoothly, preventing bottlenecks.
Tech Stack: Kafka, RabbitMQ.
Infrastructure Layer
The Infrastructure Layer is the foundation of Pictor. It includes the Worker Pool, Orchestration, and Render Task. Worker Pool consists of GPUs from Global Workers and our Trusted Partners, Orchestration tools manage deployments, whereas Render Task handles rendering and computing operations.
Also, Infrastructure Layer provides Data Storage solutions with IPFS support and monitors GPU performance using Nvidia-smi or NVIDIA DCGM. The Infrastructure Layer ensures that the Pictor remains robust, scalable, and capable of handling complex rendering tasks.
Tech Stack:
GPU/CPU Pool.
Orchestration: Kubernetes, Prefect, Apache Airflow.
Render Tasks: Blender, Cinema 4D, Redshift, OctaneRender, etc.
Data Storage: IPFS, Pictor cloud storage.
Containerization: Docker.
Monitoring: Grafana, Datadog, Prometheus, NVIDIA DCGM.