A load balanching and caching service for production lightning nodes.
```rust
async fn main() { let node1 = Node { pubkey: dotenvy::var("NODE1PUBKEY").unwrap(), ip: dotenvy::var("NODE1IP").unwrap(), port: dotenvy::var("NODE1PORT").unwrap(), network: NodeNetwork::Testnet, lightningimpl: NodeLightningImpl::Lnd, client: NodeClient::Lnd(LndClient::new( dotenvy::var("NODE1HOST").unwrap(), dotenvy::var("NODE1CERTPATH").unwrap(), dotenvy::var("NODE1MACAROON_PATH").unwrap(), )), };
let nodes = vec![node1];
let cluster = cluster::Cluster::new(nodes);
let req = ClusterAddInvoice {
pubkey: None,
memo: String::from("test"),
value: 1000,
expiry: 1000,
};
let invoice = cluster.add_invoice(req, None).await.unwrap();
let get_invoice = cluster.lookup_invoice(&invoice.r_hash, None).await.unwrap();
println!("{:?}", get_invoice);
} ```