https://github.com/logicblocks/spike-crux
https://github.com/logicblocks/spike-crux
Last synced: over 1 year ago
JSON representation
- Host: GitHub
- URL: https://github.com/logicblocks/spike-crux
- Owner: logicblocks
- Created: 2021-03-30T13:44:28.000Z (over 5 years ago)
- Default Branch: main
- Last Pushed: 2021-04-06T12:58:25.000Z (about 5 years ago)
- Last Synced: 2025-01-22T18:35:51.472Z (over 1 year ago)
- Language: Clojure
- Size: 9.77 KB
- Stars: 0
- Watchers: 4
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# Spike-crux
A small spike into [Crux](https://github.com/juxt/crux "Crux")
## Learnings
1. Calling "entity" immediately after submitting a txn does not guarantee that the entity is available, i.e. eventual consistency (see usage of `=eventually=>` in tests). There is however an `await tx` capability to force it.
2. Can update entities without loading them using the `transaction functions` (see `set-email`)
3. Can store the `Transaction Log` and `Document Store` independently in Kafka and/or JDBC, but the `Index Store`
only supports `In-Memory` (which presumably is not production grade), `LMDB`, `RocksDB` and `Xodus`. See [configuration](https://www.opencrux.com/reference/21.04-1.16.0/configuration.html).
4. Provides a capability for triggering an event/callback function on events.
5. AWS Cloudwatch and Prometheus metric exporters available.
6. Does not really think in terms of `events` but rather `snapshots` of entities
## License
The repo is available as open source under the terms of the [MIT License](http://opensource.org/licenses/MIT).