Mattermost, Inc.

Scaling Mattermost for SaaS

I am interested in using Mattermost in a SaaS scenario. I have been evaluating two solutions Mattermost and Zulip.
We looked at other solutions as well. The reasons for boiling down the list to Mattermost and Zulip were the technologies behind them.

Mattermost uses Go. Perfect! One of the reasons, I would like to use Mattermost. But rest of the techstack is pretty weak for scale (we are talking a million users). Mattermost uses MySQL or Postgres as datastore. There is no usage of cache. In fact usage of Redis was removed Is Redis still used? and the reason given for it’s removal Is Redis still used? doesn’t make sense to me. Other than Go, all of the above would constraint me in order to scale operations and make it quite expensive to keep adding mysql servers.

I believe Mattermost has made a fundamental choice to become a ‘on-prem’ solution for small teams over scalable solution. Is this strategy to change anytime soon?

If that’s the case, I would like to know if there’s a possiblity to allow users like me to integrate scalable solutions like redis, use a datastore like Cassandra to store messages at scale (instead of MySQL or Postgres) and allow integration with Elasticsearch to enhance the search capabilities at scale. Just to name a few.

If not, I would choose to use zulip which has a much stronger technical stack for scale (rabbit-mq, redis, memcached) which would allow me to scale a little better. But at the same time it also uses python (I prefer Go over pyhton) and postgres.

Please let me know what are my options here.

Hi @atig, thanks for your questions and your multiple posts. While it’s difficult to summarize the discussions from Mattermost v0.5 to present day, there’s now an FAQ that shares where things are now.

Hi @it33

Thanks for replying. Much appreciated. I did read the FAQ before posting on the forum. I thought I should post a new topic here instead of contacting the enterprise team as the answer might be useful for the whole community.

So, whatever you can shed some light on (however limited or repetitive) would be very useful.
Thank you.

PS: I really want to use mattermost.

Would love to have you part of the Mattermost community.

Could you share more about your use case?

Need help understanding what the FAQ doesn’t cover so users can more easily find answers in product documentation.

@it33

Thanks Ian. Unfortunately, not at liberty to discuss the usecase in detail but I will give you the scale of numbers to being with . Think 1 million users, each having 100 conversations each month and each conversation containing 100 messages.

I know you linked to a page which mentions mattermost can easily support 10s of thousands of users. What the FAQ doesn’t do is appease me based on the numbers I have mentioned.

So, what say you? : )

The open source Mattermost project offers self-hosted workplace messaging for teams, where teams own and control their own data.

If the intention is to create a proprietary SaaS service, that is not in scope for the project. Please go to mattermost.org and click on “Why we made Mattermost” for context.

If the intention is to use a SaaS configuration to support one extraordinarily large self-hosted deployment (e.g. public sector), you can contact the enterprise team to discuss a horizontal scaling solution using the Enterprise Edition.