Can two Convex projects under the same team talk to each other via backend(convex)?
Hi, I'm interested to learn if it's possible that tables from project A be mutated via project B from convex.
Here's the scenario I have and would appreciate to get some insights on how this is done generally.
I have the project A which is the main app with all the tables and stuff, and project B (which will be translated into smaller webapp) is for collecting requests that will mutate tables from project A via cornjobs/scheduling.
I'm thinking of doing it this way because of security, I don't want to expose my main app's creds to the smaller webapp.
Thanks, and apologizes for the weird question. 😄
4 Replies
hi! unfortunately, there is no special status between backends/deployments even within the same team or project. if they want to call each other, they'll need to use
ConvexHTTPClient
or ConvexClient
and you'll have to manage some sort of shared secret or other authentication mechanismI'm curious if you would consider or are considering something like this, or even free/lower cost communication between projects. We plan to have a bunch of large instances at first then break them up as we grow the API. As our platform becomes more distributed, the reliance on the network to every other node within the system increases until we get around to writing our own unique system as nothing we are aware of is anywhere near what we will need ultimately. But we are definitely wanting any short cuts we can get. 😅
@ampp we'll flip the question: Why do you plan to have multiple instances instead of a single Convex backend?
A Convex backend is not a single box (machine), it is a scaled "serverless" (if you like that term) service, running across many machines.
I'm thinking a very long game with this question. We are starting with hosted where we manage the custom versions like enterprise to personal use, so all the small ones get grouped together for now. Then we will offer different self hosted versions and open source eventually, there will be lots of modifications, customizations and versions to our platform with a standardized communication layer. We benefit from the network effect of letting it go wild, and not being in control of every instance, but the design allows for potentially very busy interaction with other instances. Planning to be radically different in multiple ways vs SaaS. I like to think of it like a neural network. With incentives to connect things without us being a mega platform. So our user base would benefit from staying on convex if they could save on bandwidth etc. All assuming someone was willing to migrate the BaaS.