Self-Hosted Blockchain Infrastructure
Self-hosted means you download, deploy, and run EasyLayer applications on your own servers or cloud infrastructure. You're not dependent on external services, third-party APIs, or vendor availability. Your blockchain data processing happens within your network perimeter, ensuring maximum security, privacy, and control.
Key Benefits of Self-Hosting
Complete Data Ownership: Your blockchain data never leaves your infrastructure. No third-party services have access to your data.
Zero Vendor Lock-in: Switch providers, modify configurations, or scale independently without being constrained by external service limitations or pricing models.
Customizable Performance: Optimize hardware, database configurations, and network settings specifically for your use case and traffic patterns.
Compliance & Security: Meet enterprise security requirements and regulatory compliance standards by keeping all data processing within your controlled environment.
Cost Predictability: No per-request fees or usage-based pricing surprises. Your infrastructure costs are predictable and scalable according to your needs.
Installation Requirements
Prerequisites
To run EasyLayer applications, you need:
- Node.js (version 17 or higher)
- npm or yarn package manager
- Database: SQLite or PostgreSQL
- Blockchain Node Access: Either your own blockchain node or provider access (like [QuickNode]
https://www.quicknode.com
))
Each application comes as a complete, ready-to-run package with all necessary dependencies included.
Application Architecture
Bootstrap Function
Every EasyLayer application exports an asynchronous bootstrap
function that serves as the main entry point:
import { bootstrap } from '@easylayer/bitcoin-crawler';
bootstrap().catch(error => console.error(error));
The bootstrap function:
- Initializes the application with your configuration
- Establishes database connections
- Connects to blockchain nodes
- Starts event processing and data synchronization
- Launches the transport layer (HTTP, WebSocket, etc.)
Configuration Management
All application settings are managed through environment variables, typically stored in a .env
file in your application root:
# Blockchain Node Configuration
BITCOIN_CRAWLER_NETWORK_PROVIDER_SELF_NODE_URL=`https://your-node-endpoint.com`
Need help with deployment? Join our community discussions or check out our deployment examples for detailed configurations.