Comments (4)
hii.... just would like to know is such an adapter have been made... i find the perfomance of GRPC and Hive too good to keep them seperate. Thanks
from hive.
My Use case is for CDC Architecture.
It works like this.
On Server you have a DB, It can be any DB.
When the data for a "View" changes you stream a CUD Event ( Create, Update, Delete) from the server to the Client ( Flutter ). Of course its only streamed to clients that have subscribed.
The CUD Event has:
a. a Change tpye ( Create, Update or Delete)
b. The data row.
These CUD events are modelled in your Server application tier as protobuf and so can be generated using hive generator. The use of protobufs ensures that everything is strongly typed but also that clients that have an old version do not break.
On the Client, the main Subscription handler receives all changes and then pushes them to the appropriate box ( one for each view) . The Hive watch then updates the graphical view.
Hope this helps.
For the transport i use Server Side events, rather than websockets, because of its better usage of battery and because subscriptions are one way. You dont need websockets bidirectional properties.
Also SSE is much easier to use in Flutter Web because its backed into Browsers.
from hive.
You are correct, Hive type adapters are inspired by protobuf and work almost exactly the same.
Your approach sounds very interesting and I'd love to see if it actually works.
This is not something I want to implement for Hive itself but you could create a package. If you need any help / support just contact me.
from hive.
yes its not something i expected to be put into this project.
I was wanting feedback about my presumptions, and it seems i was on the right track.
I will close this and get back to you if i get stuck.
from hive.
Related Issues (20)
- Question: Read .hive files without using HiveDB functions
- Wrong Pub dev documentation
- Future of Hive/Isar HOT 2
- Github link missing in package listing on pub.dev
- Support for record types
- [Web] The "values" returned in "Box" are empty
- Fail to initialize Hive 4.0.0 for Flutter Web? HOT 1
- [Hive v4] Type mistmatch when get List<T> items.
- Unable to install on new flutter project HOT 1
- Support for enhanced enums
- Updating nested map keys
- Is the hive dead?
- Is there a way to use the map type adapter on a nested class using toJson?
- [Web] Issue with "Invalid argument(s): Invalid or corrupted pad block" in Flutter HOT 4
- Unhandled Exception: Out of Memory
- Flutter hive unit test HOT 1
- TypeId is not consistent and how to safely remove adapter
- iOS only: hive with encryption clearing database, app includes db usage in background HOT 2
- Wrong naming of hive constant global variable
- New data written to the disk is not immediately available. HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hive.