Mercurial > kallithea
comparison docs/usage/performance.rst @ 2517:fa88997aa421 beta
Added simple docs for optimizing RhodeCode performance
author | Marcin Kuzminski <marcin@python-works.com> |
---|---|
date | Sat, 30 Jun 2012 22:48:14 +0200 |
parents | |
children | 3b179f1ac3a2 |
comparison
equal
deleted
inserted
replaced
2516:8ee72933405f | 2517:fa88997aa421 |
---|---|
1 .. _performance: | |
2 | |
3 ================================ | |
4 Optimizing RhodeCode Performance | |
5 ================================ | |
6 | |
7 | |
8 Follow these few steps to improve performance of RhodeCode system. | |
9 | |
10 | |
11 1. Increase cache:: | |
12 | |
13 in the .ini file | |
14 beaker.cache.sql_cache_long.expire=3600 <-- set this to higher number | |
15 | |
16 This option affects the cache expiration time for main page. Having | |
17 few hundreds of repositories on main page can sometimes make the system | |
18 to behave slow when cache expires for all of them. Increasing `expire` | |
19 option to day (86400) or a week (604800) will improve general response | |
20 times for the main page | |
21 | |
22 2. Switch from sqlite to postgres or mysql | |
23 | |
24 sqlite is a good option when having small load on the system. But due to | |
25 locking issues with sqlite, it's not recommended to use it for larger | |
26 setup. Switching to mysql or postgres will result in a immediate | |
27 performance increase. | |
28 | |
29 3. Scale RhodeCode horizontally | |
30 | |
31 | |
32 - running two or more instances on the same server can speed up things a lot | |
33 - load balance using round robin or ip hash | |
34 - you need to handle consistent user session storage by switching to | |
35 db sessions, client side sessions or sharing session data folder across | |
36 instances. See http://beaker.readthedocs.org/ docs for details. | |
37 - remember that each instance needs it's own .ini file and unique | |
38 `instance_id` set in them |