Avatar of nicks78
CEO - FullStack Javascript at Apx Development Limited

I am planning on building a micro-service eCommerce back-end to be easy to reuse in any project as we need. I would like to use both Python and Node.js and MongoDB & PostgreSQL , in your opinion which one would best suited for the following services:

  • Users-service
  • Products-service
  • Auth-service
  • Inventory-service
  • Order-service
  • Payment-service
  • Sku-service
  • And more not yet defined....



14 upvotes2 comments33.4K views
Daniel Quinn
Daniel Quinn
October 2nd 2019 at 2:09pm

Nine times out of ten, you don't need Mongo, and for what you're doing, I really don't see a benefit here. You're going to have users, and you'll want to link those users to auth events, inventory, and payments. You'll also want to link your payments to inventory and skus, etc etc. That's relational data. Don't put that in a document store unless you have a penchant for frustrating hours debugging race conditions.

As for Python vs. NodeJS, I'm a Python person, and would most likely choose Django for this (yes it's big, but it comes with 99% of the stuff you'll have to write custom otherwise), but your profile says "Fullstack Javascript", so if you don't have a lot of background in Python, perhaps a Node-based web framework would be a better choice. Use the tools that work for you.

S Milliken
S Milliken
October 15th 2019 at 3:39am

For anything that needs 100% acuracy you should utilize Postgres for your database, (auth, payment, user, order, inventory) for catalog and SKU's mongo is a good choice. For business logic, choose what performs best. Order, payment and inventory type services can really get hammered from my experience, so I would even consider soemthing like rust for that.