##// END OF EJS Templates
pull-requests: add merge check that detects WIP marker in title. This will prevent merges in such case....
pull-requests: add merge check that detects WIP marker in title. This will prevent merges in such case. Usually WIP in title means unfinished task that needs still some work. This pattern is present in Gitlab/Github and is already quite common.

File last commit:

r3693:f470fd2e new-ui
r4099:c12e69d0 default
Show More
tuning-user-sessions-performance.rst
66 lines | 2.2 KiB | text/x-rst | RstLexer
/ docs / admin / system_admin / tuning / tuning-user-sessions-performance.rst
docs: updated documentation structure
r3693 .. _user-session-ref:
User Session Performance
------------------------
The default file-based sessions are only suitable for smaller setups, or
instances that doesn't have a lot of users or traffic.
They are set as default option because it's setup-free solution.
The most common issue of file based sessions are file limit errors which occur
if there are lots of session files.
Therefore, in a large scale deployment, to give better performance,
scalability, and maintainability we recommend switching from file-based
sessions to database-based user sessions or Redis based sessions.
To switch to database-based user sessions uncomment the following section in
your :file:`/home/{user}/.rccontrol/{instance-id}/rhodecode.ini` file.
.. code-block:: ini
## db based session, fast, and allows easy management over logged in users
beaker.session.type = ext:database
beaker.session.table_name = db_session
# use just one of the following according to the type of database
beaker.session.sa.url = postgresql://postgres:secret@localhost/rhodecode
# or
beaker.session.sa.url = mysql://root:secret@127.0.0.1/rhodecode
beaker.session.sa.pool_recycle = 3600
beaker.session.sa.echo = false
and make sure you comment out the file based sessions.
.. code-block:: ini
## types are file, ext:memcached, ext:database, and memory (default).
#beaker.session.type = file
#beaker.session.data_dir = %(here)s/data/sessions/data
The `table_name` will be automatically created on specified database if it isn't yet existing.
Database specified in the `beaker.session.sa.url` can be the same that RhodeCode
uses, or if required it can be a different one. We recommend to use the same database.
To switch to reds-based user sessions uncomment the following section in
your :file:`/home/{user}/.rccontrol/{instance-id}/rhodecode.ini` file.
.. code-block:: ini
## redis sessions
beaker.session.type = ext:redis
beaker.session.url = localhost:6379
and make sure you comment out the file based sessions.
.. code-block:: ini
## types are file, ext:memcached, ext:database, and memory (default).
#beaker.session.type = file
#beaker.session.data_dir = %(here)s/data/sessions/data