Skip to content

riccardone/EventStore.Tools.LinkerConsoleApp

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
src
 
 
 
 
 
 
 
 

Linker introduction

Simple .Net Core console app, ready for use, to replicate data from between separate EventStore instances/clusters. More info on this article Cross Data Center Replication with Linker.
This is an example of Data Redundancy using Linker nuget package to replicate data from EventStore instances or clusters across different networks.

Get the latest release. Edit the appsettings.json to configure your linked EventStore's.

Open a command line, cd the folder and run the app: > dotnet LinkerConsoleApp.dll

Configuration Modes

This app make use of the appsettings.json file to configure Linked EventStore's. You can have as many Links as you need and as your running machine allow you to run. Even when you are replicating at full speed, the Linker logic make use of backpressure tecnique in order to not take the full amount of CPU and Memory available.

MultiMaster

Configure two links swapping the same Origin and Destination in order to configure a multi master replication.

Fan-Out

Configure the same Origin in separate Links replicating data to different destination for a Fan-Out solution.

Fan-In

You can have separate Links with different Origins linked with the same Destination for a Fan-In solution.

Sample configuration

Following is an example of configuration for Data Redundancy between one Origin and one Destination with an exclude filter.

{
  "links": [
    {
      "origin": {
        "connectionString": "tcp://localhost:1112",
        "user": "admin",
        "pass": "changeit",
        "connectionName": "origin-01"
      },
      "destination": {
        "connectionString": "tcp://localhost:2112",
        "user": "admin",
        "pass": "changeit",
        "connectionName": "destination-01"
      },
      "filters": [
        {
          "filterType": "stream",
          "value": "diary-input",
          "filterOperation": "exclude"
        },
        {
          "filterType": "stream",
          "value": "*",
          "filterOperation": "include"
        }
      ]
    }
  ]
}

About

Simple console app to replicate data from a production EventStore to a local instance

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages