rollthecloudinc / quell

Climate aware CMS breaking web apps free from carbon emissions.
https://demo.carbonfreed.app/pages/create-panel-page
GNU General Public License v3.0
14 stars 1 forks source link

Clustering Object Stores #327

Open ng-druid opened 2 years ago

ng-druid commented 2 years ago

Sites would have multiple object stores instead of being restricted to one. The ownership of the stores would be maintained in keyspaces. Ownership would include site that owns the object store, location and objects maintained in that store. Verti-go would act as a middle man to determine ownership, resolve requests to the proper store and serve data. Object stores could be distributed across multiple accounts and/or organizations on github belonging to a single site or shared between multiple sites with ownership rights.


The servelress api currently resolves sites to repos in a very static manor.

dev: {siteName}-objects prod: {siteName}-objects-prod

Repos are currently expected to follow this model. However, this will become more flexible. Sites will be able to store data across any number of repos. For example, storing panel pages at the root of one repo and media at the oot of another instead of having them in the same shared repo.

This will require some type of lookup that maps site name to asset to repo/resource using ti store asset.