I have an architecture question.
I buid a website where people can sell data.
Below is the overall logic that I used, however, I am afraid that I have picked the wrong tech stack
right now I am using mysql/node/angular.
Would this tech stack work? (pls explain why it wont work)
Do you recommend switching to apache?
What techstack do you recommend?
Here is the logic I used, feel free to comment on this aswell
channel : a table that stores the type of data that you want to sell.
example data:
first name, last name, state, zip code, cigar smoker?, diabetic, male, female …
channel subscription: a table that stores who is interested in buying the data
This is my business logic:
-
Client A creates the channel XYZ where he describes the data that will be sold through it.
-
Client B subscribes to channel XYZ.
2.1) Client C subscribes to channel XYZ.
2.2) Client D subscribes to channel XYZ.
-
Client A sends a ping to our system saying, ‘Hi, I have 30,000 data records I want to sell through channel XYZ. The lowest amount I am willing to sell the data for is $5. Does anyone want to buy this data?’
-
Our system pings the users subscribe to channel XYZ saying. ‘hi, there are 30,000 records that match the criteria to channel XYZ, do you want to submit a bid?’
-
The clients subscribed to channel XYZ submit their bid
-
Our system looks at the submitted bids for channel XYZ, if it meets the minimum, the system:
- sends a pingback to the seller ‘we have a buyer for your data’
- Our system listens for a request from the seller Once a valid API call is registered, the data is validated, saved, and send to the buyer
question:
- is apache kafka good for this?
- is node.js good with this? ( i dont really understand if there are different flavors of apache kafka… one of them being with node.js, the other one with python)