Пример #1
0
        static async Task <Equinox.EventStore.EventStoreContext> Connect(EventStoreConfig config)
        {
            var c = new Connector(config.Username, config.Password, reqTimeout: TimeSpan.FromSeconds(5), reqRetries: 1);

            var conn = await FSharpAsync.StartAsTask(
                c.Establish("Twin", Discovery.NewGossipDns(config.Host), ConnectionStrategy.ClusterTwinPreferSlaveReads),
                null, null);

            return(new Equinox.EventStore.EventStoreContext(conn, new BatchingPolicy(maxBatchSize: 500)));
        }
Пример #2
0
        static async Task <GesGateway> Connect(EventStoreConfig config)
        {
            var log = Logger.NewSerilogNormal(Serilog.Log.ForContext <EventStoreContext>());
            var c   = new GesConnector(config.Username, config.Password, reqTimeout: TimeSpan.FromSeconds(5), reqRetries: 1);

            var conn = await FSharpAsync.StartAsTask(
                c.Establish("Twin", Discovery.NewGossipDns(config.Host), ConnectionStrategy.ClusterTwinPreferSlaveReads),
                null, null);

            return(new GesGateway(conn, new GesBatchingPolicy(maxBatchSize: 500)));
        }
Пример #3
0
 public EventStoreContext(EventStoreConfig config)
 {
     _cache   = new Cache("Es", config.CacheMb);
     _connect = async() => _connection = await Connect(config);
 }