6. fejezet - Teljesítmény hangolás

Tartalom

OTRS
TicketIndexModule
SearchIndexModule
TicketStorageModule
Jegyek archiválása
Gyorsítótár
Adatbázis
MySQL
PostgreSQL
Webkiszolgáló
Előre kiépített adatbázis-kapcsolatok
Előre betöltött modulok - startup.pl
Perl-modulok újratöltése, amikor frissülnek a lemezen
A megfelelő stratégia választása
mod_gzip/mod_deflate

Kivonat

Az alábbiakban kerül bemutatásra a teljesítményfokozó technikák listája az OTRS telepítéshez, beleértve a beállítást, kódolást, memóriahasználatot és a továbbiakat.

OTRS

Számos lehetőség van az OTRS teljesítményének javítására.

TicketIndexModule

Két háttérprogram modul létezik az indexhez a jegy várólista nézeténél:

Kernel::System::Ticket::IndexAccelerator::RuntimeDB

This is the default option, and will generate each queue view on the fly from the ticket table. You will not have performance trouble until you have about 60,000 open tickets in your system.

Kernel::System::Ticket::IndexAccelerator::StaticDB

The most powerful module, should be used when you have above 80,000 open tickets. It uses an extra ticket_index table, which will be populated with keywords based on ticket data. Use bin/otrs.Console.pl Maint::Ticket::QueueIndexRebuild for generating an initial index after switching backends.

You can change the used IndexAccelerator module via SysConfig.

SearchIndexModule

This module helps to extend your articles full-text search (From, To, Cc, Subject and Body search). There are two backend modules for the search index:

Kernel::System::Ticket::ArticleSearchIndex::RuntimeDB

This is the default option, and will will do full-text searches on live data (it works fine for up to 50,000 tickets).

Kernel::System::Ticket::ArticleSearchIndex::StaticDB

This module will strip all articles and build an index after article creation, increasing performance of full-text searches up to 50%.

You can change the used SearchIndexModule via SysConfig.

To create an initial index, use bin/otrs.Console.pl Maint::Ticket::FulltextIndexRebuild.

For StaticDB module, there are some options available for fine tuning:

Ticket::SearchIndex::Attribute

The attribute "WordCountMax" defines the maximum of words which will be processed to build up the index. For example only the first 1000 words of an article body are stored in the article search index. The attributes "WordLengthMin" and "WordLengthMax" are used as word length boundaries. Only words with a length between these two values are stored in the article search index.

Ticket::SearchIndex::Filters

There are three default filters defined:

  • The first filter strips out special chars like: , & < > ? " ! * | ; [ ] ( ) + $ ^=

  • The second filter strips out words which begin or ends with one of following chars: ' : .

  • The third filter strips out words which do not contain a word-character: a-z, A-Z, 0-9, _

Ticket::SearchIndex::StopWords

There are so-called stop-words defined for some languages. These stop-words will be skipped while creating the search index.

TicketStorageModule

Két különböző háttérprogram modul létezik a jegy vagy bejegyzés tárolásához:

Kernel::System::Ticket::ArticleStorageDB

This default module will store attachments in the database.

Megjegyzés

Don't use it with large setups.

Pro: If your web server isn't running under 'otrs' user, use this module to avoid file permission problems.

Con: It is not advisable to store attachments in your database. Take care that your database is able to store large objects. I.e.: configure MySQL with set-variable = max_allowed_packet=8M to store 8 MB objects (the default is 2M).

Kernel::System::Ticket::ArticleStorageFS

Use this module to store attachments on the local file system.

Megjegyzés

Recommended for large setups.

Előnye: Gyors!

Con: Your web server should run under the 'otrs' user. Also, if you have multiple front-end servers, you must make sure the filesystem is shared between the servers. Place it on an NFS share or preferably a SAN or similar solution.

Megjegyzés

You can switch from one back-end to the other on the fly. You can switch the backend in the SysConfig, and then run the command line utility bin/otrs.Console.pl Admin::Article::StorageSwitch to put the articles from the database onto the filesystem or the other way around. You can use the --target option to specify the target backend. Please note that the entire process can take considerable time to run, depending on the number of articles you have and the available CPU power and/or network capacity.

shell> bin/otrs.Console.pl Admin::Article::StorageSwitch --target ArticleStorageFS
                

Parancsfájl: Tároló háttérprogramok átkapcsolása adatbázisról fájlrendszerre.

Ha a régi mellékleteket az adatbázisban szeretné tárolni, akkor bekapcsolhatja a Ticket::StorageModule::CheckAllBackends rendszerbeállítási lehetőséget annak biztosításához, hogy az OTRS továbbra is megtalálja azokat.

Jegyek archiválása

Mivel az OTRS használható vizsgálatigazoló rendszerként, emiatt a lezárt jegyek törlése nem lenne jó ötlet. Ezért megvalósítottunk egy olyan szolgáltatást, amely lehetővé teszi a jegyek archiválását.

Azok a jegyek, amelyek bizonyos feltételekre illeszkednek, megjelölhetők „archiváltként”. Ezek a jegyek nem lesznek hozzáférhetők, ha egy szabályos jegykeresést hajt végre, vagy egy általános ügyintéző feladatot futtat. Magának a rendszernek többé nem kell foglalkoznia a jegyek hatalmas mennyiségével, mivel csak a „legújabb” jegyeket kell figyelembe venni az OTRS használatakor. Ez egy hatalmas teljesítménynövekedést eredményezhet nagy rendszereknél.

Az archiválás funkció használatához egyszerűen kövesse ezeket a lépéseket:

  1. Kapcsolja be az archiváló rendszert a rendszerbeállításokban

    Az adminisztrációs oldalon menjen a rendszerbeállításokhoz, és válassza ki a Ticket csoportot. A Core::Ticket alcsoportban keresse meg a Ticket::ArchiveSystem beállítást, amely alapértelmezetten „Nem” értékre van állítva. Változtassa meg ezt a beállítást „Igen” értékre, és mentse el a változtatást.

  2. Határozzon meg egy általános ügyintéző feladatot

    Az adminisztrációs oldalon válassza ki az Általános ügyintézőt, és ott adja hozzá az új feladatot.

    1. Feladat-beállítások

      Adjon egy nevet az archiválási feladatnak, és válassza ki a megfelelő beállításokat a feladat ütemezéséhez.

    2. Jegyszűrő

      A jegyszűrő olyan jegyeket keres, amelyek illeszkednek a kiválasztott feltételekre. Lehet, hogy jó ötlet lenne csak azokat a lezárt állapotú jegyeket archiválni, amelyeket néhány hónappal ezelőtt zártak le.

    3. Jegyművelet

      Ebben a szakaszban állítsa be a „Kijelölt jegyek archiválása” címkéjű mezőt „jegyek archiválása” értékre.

    4. Mentse el a feladatot

      Az oldal végén találni fog egy lehetőséget a feladat elmentéséhez.

    5. Érintett jegyek

      A rendszer minden olyan jegyet meg fog jeleníteni, amelyek archiválásra kerülnek az általános ügyintéző feladat végrehajtásakor.

  3. Jegykeresés

    Amikor jegyeket keres, akkor a rendszer alapértelmezetten olyan jegyekre keres, amelyek nincsenek archiválva. Ha az archivált jegyekben is szeretne keresni, akkor egyszerűen adja hozzá az „archívum keresést”, mialatt keresési feltételeket határoz meg.

Gyorsítótár

OTRS caches a lot of temporary data in /opt/otrs/var/tmp. Please make sure that this uses a high performance file system/storage. If you have enough RAM, you can also try to put this directory on a ramdisk like this:

shell> /opt/otrs/bin/otrs.Console.pl Maint::Session::DeleteAll
shell> /opt/otrs/bin/otrs.Console.pl Maint::Cache::Delete
shell> sudo mount -o size=16G -t tmpfs none /opt/otrs/var/tmp

# állandó csatolási pont hozzáadása a /etc/fstab fájlban
                

Megjegyzés

Please note that this will be a non-permanent storage that will be lost on server reboot. All your sessions (if you store them in the filesystem) and your cache data will be lost.

There is also a centralized memcached based cache backend available for purchase from OTRS Group.