Jump to content
David Schwartz

need something like a Windows Registry that runs as a web service

Recommended Posts

Looking for ideas and suggestions, so I can't post this to SO.

 

I'm looking for something that can be called from inside of a web service (part of my app) that allows the persistence of ad hoc data (eg., JSON data) that can be accessed across multiple service calls.

 

It doesn't need structured data that a SQL database provides. Rather, it would function similar to how the Windows Registry works. However, it needs to have a REST API. 

 

There would be a "start" function where some data is saved that's tied to a key, followed by lots of reads by dozens of calls from multiple service instances, followed by a "stop" that deletes the data and key. The time-duration would span seconds to 10 minutes. Anything >30 mins old can be deleted.


It cannot be file-based (like INI files or Sqlite) or platform specific. 

 

Security is not a big issue as there's nothing sensitive about the data being stored; mostly this thing is just going to be used as a kind of "clipboard" for some transitory data shared briefly by a bunch of independent threads, kind of like shared memory in a multi-tasking OS.

 

Open source would be ideal. There are some commercial services that are mostly overkill for single-user situations and the costs seem ridiculous for this application. There might be 500-1000 hits one or two days a month, and that's all.

 

It doesn't have to be hosted on the same server as my app (ie., accessible via localhost), but it can be. (For scaling purposes, localhost would be limiting, but initially it's fine.)


 

Edited by David Schwartz

Share this post


Link to post

https://cloud.google.com/datastore/pricing
 

Quote

Free usage

Firestore in Datastore mode offers free usage that allows you to get started at no cost. To exceed the free usage, you must enable billing for your project.

Your usage is counted daily and resets around midnight Pacific time.


Entity reads    50,000 per day
Entity writes    20,000 per day
Entity deletes    20,000 per day
Stored data    1 GB
Small operations    50,000 per day
Network egress    10 GiB per month

 

Share this post


Link to post

As I said, it needs to have a REST API already in place.

 

Something comparable to, say, TMS myCloudData .net but open-source. 

Edited by David Schwartz

Share this post


Link to post

I'm not sure it can get any simpler than these:

 

https://jsonbase.com

 

found this related item:

 

https://www.indiehackers.com/product/jsonbase

 

 

this next is very similar, but the site was taken down. However, the source is on github:

 

https://www.producthunt.com/posts/jsonbox-io

https://github.com/vasanthv/jsonbox

 

 

Edited by David Schwartz

Share this post


Link to post
On 9/5/2021 at 10:12 AM, David Schwartz said:

I'm not sure it can get any simpler than these:

https://jsonbase.com

 

https://www.producthunt.com/posts/jsonbox-io

Not sure if you really propose to use that ?

 

The first seems to be a joke only, and will be probably offline very soon.

The latter could be self-hosted, but requires node.js environment.

 

When looking for the simplest possible solution, why not looking after PHP ?

The sites can be very cheap, and even if you install WordPress (ab)using its REST API, it could not be much simpler.

If you set up a REST API only, thats also quite simple with PHP too.

 

What is your main goal (Price, Self-Hosting, 0-Setup, Stability, Safety, Longterm availability, Support, Memory footprint, Performance, ... ) ?

Thats a little unclear to me, from your examples above.

 

 

Edited by Rollo62

Share this post


Link to post
2 hours ago, Rollo62 said:

What is your main goal (Price, Self-Hosting, 0-Setup, Stability, Safety, Longterm availability, Support, Memory footprint, Performance, ... ) ?

 

For now, quick-n-dirty is just fine. I've been fleshing out a proof-of-concept prototype. I just need a very simple persistent store that I don't have to host or write much code to make it work. Yes, the first one works fine for my current needs.

 

I've been farting around for 6 hours now with something throwing weird exceptions thinking it was my code ... I backed-out 3 layers of new code and found out the 3rd-party API I'm using moved some stuff around in their JSON layout without telling anybody. And they removed some of the labels, so you can't get to several fields without manually parsing them. 

 

Sometimes when you need something to set something else on, grabbing an upside-down bucket from a nearby trash dumpster can be way faster than building a table, especially when you find out something else changed and negated the need for either one.

Edited by David Schwartz

Share this post


Link to post

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×