131 lines
3.2 KiB
JSON
131 lines
3.2 KiB
JSON
{
|
|
"version": "2.0",
|
|
"checksum": "bootstrap-config-v2.0",
|
|
"signature": "signed-by-my-network-core",
|
|
"last_updated": "2025-07-11T01:59:00Z",
|
|
|
|
"bootstrap_nodes": [
|
|
{
|
|
"id": "my-public-node-3",
|
|
"address": "my-public-node-3.projscale.dev:15100",
|
|
"region": "europe",
|
|
"priority": 1,
|
|
"public_key": "bootstrap-node-public-key-1",
|
|
"capabilities": ["replication", "monitoring", "consensus"]
|
|
},
|
|
{
|
|
"id": "local-dev-node",
|
|
"address": "localhost:15100",
|
|
"region": "local",
|
|
"priority": 2,
|
|
"public_key": "local-dev-node-public-key",
|
|
"capabilities": ["development", "testing"]
|
|
}
|
|
],
|
|
|
|
"network_settings": {
|
|
"protocol_version": "2.0",
|
|
"max_peers": 50,
|
|
"connection_timeout": 30,
|
|
"heartbeat_interval": 60,
|
|
"discovery_interval": 300,
|
|
"replication_factor": 3,
|
|
"consensus_threshold": 0.66
|
|
},
|
|
|
|
"sync_settings": {
|
|
"sync_interval": 300,
|
|
"batch_size": 100,
|
|
"max_concurrent_syncs": 5,
|
|
"retry_attempts": 3,
|
|
"retry_delay": 10,
|
|
"workers_count": 4,
|
|
"chunk_size": 1048576
|
|
},
|
|
|
|
"content_settings": {
|
|
"max_file_size": 104857600,
|
|
"allowed_types": ["*"],
|
|
"compression": true,
|
|
"encryption": false,
|
|
"deduplication": true,
|
|
"retention_days": 365
|
|
},
|
|
|
|
"security_settings": {
|
|
"require_authentication": false,
|
|
"rate_limiting": true,
|
|
"max_requests_per_minute": 1000,
|
|
"allowed_origins": ["*"],
|
|
"encryption_enabled": false,
|
|
"signature_verification": false
|
|
},
|
|
|
|
"api_settings": {
|
|
"port": 15100,
|
|
"host": "0.0.0.0",
|
|
"cors_enabled": true,
|
|
"documentation_enabled": true,
|
|
"monitoring_endpoint": "/api/my/monitor",
|
|
"health_endpoint": "/health",
|
|
"metrics_endpoint": "/metrics"
|
|
},
|
|
|
|
"monitoring_settings": {
|
|
"enabled": true,
|
|
"real_time_updates": true,
|
|
"websocket_enabled": true,
|
|
"metrics_collection": true,
|
|
"log_level": "INFO",
|
|
"dashboard_theme": "matrix",
|
|
"update_interval": 30
|
|
},
|
|
|
|
"storage_settings": {
|
|
"base_path": "./storage/my-network",
|
|
"database_url": "sqlite+aiosqlite:///app/data/my_network.db",
|
|
"backup_enabled": false,
|
|
"cleanup_enabled": true,
|
|
"max_storage_gb": 100
|
|
},
|
|
|
|
"consensus": {
|
|
"algorithm": "raft",
|
|
"leader_election_timeout": 150,
|
|
"heartbeat_timeout": 50,
|
|
"log_compaction": true,
|
|
"snapshot_interval": 1000
|
|
},
|
|
|
|
"feature_flags": {
|
|
"experimental_features": false,
|
|
"advanced_monitoring": true,
|
|
"websocket_support": true,
|
|
"real_time_sync": true,
|
|
"load_balancing": true,
|
|
"auto_scaling": false,
|
|
"content_caching": true
|
|
},
|
|
|
|
"regional_settings": {
|
|
"europe": {
|
|
"primary_nodes": ["my-public-node-3.projscale.dev:15100"],
|
|
"fallback_nodes": ["backup-eu.projscale.dev:15100"],
|
|
"latency_threshold": 100
|
|
},
|
|
"local": {
|
|
"primary_nodes": ["localhost:15100"],
|
|
"fallback_nodes": [],
|
|
"latency_threshold": 10
|
|
}
|
|
},
|
|
|
|
"emergency_settings": {
|
|
"emergency_mode": false,
|
|
"failover_enabled": true,
|
|
"backup_bootstrap_urls": [
|
|
"https://raw.githubusercontent.com/mynetwork/bootstrap/main/bootstrap.json"
|
|
],
|
|
"emergency_contacts": []
|
|
}
|
|
} |