Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/reubenbond/fabricjournalservice
Persistent, replicated journal built on Service Fabric.
https://github.com/reubenbond/fabricjournalservice
Last synced: 16 days ago
JSON representation
Persistent, replicated journal built on Service Fabric.
- Host: GitHub
- URL: https://github.com/reubenbond/fabricjournalservice
- Owner: ReubenBond
- Created: 2016-01-08T10:39:07.000Z (almost 9 years ago)
- Default Branch: master
- Last Pushed: 2016-01-19T11:10:04.000Z (almost 9 years ago)
- Last Synced: 2024-05-02T00:12:48.960Z (7 months ago)
- Language: C#
- Size: 64.5 KB
- Stars: 11
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
#Service Fabric Journal Service
A replicated journal on Service Fabric. Demonstrates how to write a persistent, stateful service which uses Service Fabric for replication.[Common Log File System](https://msdn.microsoft.com/en-us/library/windows/desktop/bb986747(v=vs.85).aspx) (Windows component) is used as the as the store.
## [Twitter: @ReubenBond](https://twitter.com/reubenbond) :)
I give zero guarantees about any of this. It's surprising that it appears to work at all, it is certainly not a correct implementation (see, for example, the `#warning`s in code where some correctness issues are highlighted).
1. Install Service Fabric SDK.
2. Open in VS 2015, and deploy the application to your local cluster.
3. Run TestApp.exe on your local cluster and watch your hard drive slowly fill with replicated operations.Also check out [Fabric Table Service](https://github.com/ReubenBond/FabricTableService), a distributed database on Service Fabric which uses ESENT as the storage engine and co-operates transactionally with Fabric's provided `IReliableDictionary` & `IReliableQueue`.
There is significant room for optimization, this project was just a learning excercise.
TODO:
* Don't persist consistent read operations, merely replicate them.
* Test everything...