mattermost-load-test

Tools for profiling Mattermost under heavy load

  • Owner: mattermost/mattermost-load-test
  • Platform:
  • License:: Apache License 2.0
  • Category::
  • Topic:
  • Like:
    0
      Compare:

Github stars Tracking Chart

Mattermost Load Test

Mattermost Load Test provides a set of tools written in Go for profiling Mattermost under heavy load simulating real-world usage of the Mattermost Enterprise Edition E20 at scale.

In setting up this system you will:

  • Deploy Mattermost in a production configuration, potentially in high availability mode
  • Optimize the performance of your Mattermost deployment
  • Deploy a Mattermost Load Test server to apply simulated load to your production deployment
  • Log in to your Mattermost deployment to observe it under load

If you have questions about configuration, please contact your Customer Success Manager. An overview of support available to E20 customers is available at https://about.mattermost.com/support/

Installation

Install the binaries:

go get github.com/mattermost/mattermost-load-test/cmd/ltops
go get github.com/mattermost/mattermost-load-test/cmd/loadtest
go get github.com/mattermost/mattermost-load-test/cmd/ltparse

Run ltops help to verify the installation and get started with the available commands.

Profiling Strategies

Various profiling strategies are currently supported:

The best way to profile the mattermost-server is to set up an AWS cluster using Terraform using the ltops tool. Use this setup to qualify the performance of a given Mattermost release, or measure the effect of an experimental change to the mattermost-server. Note that while other cloud providers are on the roadmap, only AWS is supported at present.

Feel free to experiment with profiling a Mattermost Kubernetes cluster using the ltops tool, but recognize that this is still in beta. There may also be some tooling differences between Kubernetes and the more stable Terraform setup.

The loadtest tool may be run manually against an existing cluster, regardless of how that cluster is deployed. Note that care is required to tune an arbitrary cluster to perform well under load. This method of profiling is also suitable for basic localhost profiling, especially when developing against mattermost-load-test itself.

Development

Follow the Mattermost developer setup instructions, then clone the repository and build for yourself:

go get github.com/mattermost/mattermost-load-test
cd $(go env GOPATH)/src/mattermost/mattermost-load-test
make install

Main metrics

Overview
Name With Ownermattermost/mattermost-load-test
Primary LanguageGo
Program languageGo (Language Count: 4)
Platform
License:Apache License 2.0
所有者活动
Created At2016-09-28 20:35:52
Pushed At2022-05-25 12:48:00
Last Commit At2020-10-13 10:00:51
Release Count122
Last Release Namemattermost-v5.29.1 (Posted on 2020-12-03 18:16:36)
First Release Name3.10 (Posted on 2017-07-06 09:17:27)
用户参与
Stargazers Count57
Watchers Count40
Fork Count43
Commits Count525
Has Issues Enabled
Issues Count8
Issue Open Count2
Pull Requests Count154
Pull Requests Open Count0
Pull Requests Close Count18
项目设置
Has Wiki Enabled
Is Archived
Is Fork
Is Locked
Is Mirror
Is Private