@rongcuid I could "+1" most of what @phenomlab uttered up post, sans the plugin dev experience but as a community rep did not want to be seen as "bashing the competition" so I let this aspect "percolate" fer' a bit.
Now that the cat is out of the bag, I will point you to a pretty well developed thread comparing NodeBB to Discourse that may provide a few additional insights of interest:
I saw another discussion "DISCOURSE IS BETTER" but that's not very productive. Instead let's look at what each does better than the other. I'm posting this u...
NodeBB Community (community.nodebb.org)
Were I not using NodeBB, I would likely look next at Xenforo. But then you are once again embracing all the PHP downsides. PHP based stuff can run pretty fast. If you do it "right" and "know" what you are doing. But it is going to take more work to get there, comparatively, and, imho, still never going to be as performant as NodeBB.
I see this often: Folks are exploring and/or transitioning to a new platform for a reason - likely several reasons. They discover NodeBB. Looks good. Damn good. But.... then they start wishing for "features" in efforts to morph the new into that which they left. Intriguing phenomenon for the social anthropologists.
I encourage such folks to take a step back. Install a default install. Stay away from any non bundled plugins. Then just USE NodeBB for a while and experience what it offers. You may find that much of what you wished for is based on old baggage that you no longer need to lug around. Only then, begin tweaking and tuning. Leverage the hidden gems first.
As for DB's. Yes, PostgreSQL is a first class supported DB. And yes, NodeBB was also developed under NoSQL "page" rather than relational paradigm. Hence, you are storing json blobs.
I have done testing w/all the supported DB's at one time or another. My conclusions:
- Stay away from Redis for anything but smaller sites where convenience is favored over all else. Unless you are using for session management at scale as documented here:
The mongo/redis combo is VERY good. And, truth be told, likely far less of a management pita than any RDBMS, presuming your are not deploying more complex fault tolerant and sharded MongoDB configurations. Those can be a bit hairy. But then same is also true of RDBMS in such cases.
- PostgreSQL works pretty well as well. But in my testing not as fast as the Mongo/Redis combo. My initial tests were a few years ago and the difference fairly dramatic (ootb experience - no tuning of either db). A few months back I experimented again w/a post 2.x version of NodeBB and the difference was markedly less, but I still recall the Mongo/Redis config won that race. That said, however, another forum user vehemently disagreed with me. Alas, I have been unable to unearth that thread. But...
Here are a few PostgreSQL threads:
A forum "search" for Postgresql will return a few more.