Skip to main content

Laitteistovaatimukset

Kun hankit laitteistoa Overleafin ajamiseen, tärkein huomioitava tekijä on, kuinka monta käyttäjää ajaa käännöksiä samanaikaisesti. Jos sinulla on esimerkiksi lisenssi yhteensä 100 käyttäjälle, mutta odotat vain noin 5 käyttäjän työskentelevän samaan aikaan, minimiasennus riittää. Jos odotat suuremman osuuden työskentelevän (ja kääntävän) samanaikaisesti, kannattaa harkita tehokkaamman palvelimen hankkimista.

Minimiasennus

Perustoimintoihin noin 5 samanaikaisella käyttäjällä vaaditaan vähintään 2 ydintä ja 3 Gt muistia. Tämä vähimmäisvaatimus riittää myös suuremmille ryhmille, joissa samanaikainen käyttö on vähäisempää tai joissa pidemmät käännösajat ovat hyväksyttäviä raskaamman käytön aikana.
Jos harkitset NFS (Network File System) -pohjaisen tiedostojärjestelmän käyttöä pienessä instanssissasi, tutustu tähän kohtaan Vianmääritys-osiossa.

Skaalaus

Nyrkkisääntönä on, että korkean ja tasaisen palvelutason takaamiseksi minimiasennukseen tulisi lisätä 1 suoritinydin ja 1 Gt muistia jokaista 5–10 samanaikaista käyttäjää kohden. Tätä tulee pitää vain suuntaa antavana, sillä tarvittavaan resurssitasoon vaikuttavat esimerkiksi tyypillisten dokumenttien koko (suuremmat dokumentit kuluttavat enemmän käännösresursseja), se, kuinka usein käyttäjät kääntävät, sekä se, kuinka hyvin pidempiä käännösaikoja siedetään raskaan käytön aikana. Monet asiakkaistamme haluavat ottaa Server Pron käyttöön koko organisaatiossa tai suurissa tiimeissä. Tällaisissa tilanteissa meidän on vaikea antaa neuvoja tarkoista asennusvaatimuksista, koska käyttötapaukset ja käytettävissä oleva laitteisto voivat vaihdella paljon. Asiakkaat, joiden tarpeet ylittävät yhden suuren palvelimen rajat, voivat tutustua Server Pron vaakasuuntaiseen skaalaukseen.

Tallennustila

Emme suosittele Network File System (NFS)/Amazon EFS/Amazon EBS -ratkaisujen käyttöä projekti- ja historiatallennukseen suuremmissa asennuksissa, emmekä nimenomaisesti tue sitä vaakasuuntaisessa skaalauksessa. Nämä tiedostojärjestelmät eivät tarjoa sitä suorituskykyä ja luotettavuutta, jota Server Pro tarvitsee suuressa mittakaavassa. Kun tiedostojärjestelmä ei pysy kuorman perässä, sovellus pysähtyy liian monen estävän IO-operaation vuoksi. Nämä pysähdykset voivat johtaa Redis-pohjaisten lukkojen vanhenemiseen, mikä puolestaan voi aiheuttaa projektidatan korruptoitumisen. Suosittelemme sen sijaan S3-yhteensopivan objektitallennuksen käyttöä. Hidas S3-suorituskyky vaikuttaa ainoastaan tiedostojen lataamiseen ja tallentamiseen, mikä johtaa vain suurempaan määrään avoimia yhteyksiä S3-palveluntarjoajaasi eikä vaikuta muun sovelluksen toimintaan. Lisäksi Server Pro voi määrittää S3-pyynnöille kohtuulliset aikakatkaisut, mikä ei ole mahdollista tiedostojärjestelmä- tai IO-operaatioille sovellustasolla.
Vertailun vuoksi: myös GitLab noudattaa samankaltaista linjaa NFS:n/Amazon EFS:n tukemattomuudesta itse hallinnoitavassa tarjonnassaan.

Nginx-kohtaiset määritykset suurille käyttöönotoille

Oletusarvoisesti Overleaf Server -instanssi rajoittaa yhteyksien määrän 768:aan. Tähän sisältyvät pysyvät Websocket-yhteydet, ylimmän tason HTML-navigointi ja ajax-pyynnöt. Kun raja saavutetaan, editori ei välttämättä pysty muodostamaan yhteyttä, editorisivu ei välttämättä lataudu kokonaan ja käännöspyynnöt voivat epäonnistua. Nginx palauttaa tilakoodin 500 ja kirjaa viestin worker_connections are not enough while connecting to upstream tiedostoon var/log/nginx/error.log sharelatex-kontin sisällä. worker_connections-asetus rajoittaa samanaikaisten yhteyksien määrää, jonka nginx hyväksyy työprosessia kohden. Työprosessien määrää ohjataan worker_processes-asetuksella, joka on nginx-konfiguraatiossamme oletuksena 4. Nginx tekee vähän työtä verrattuna järjestelmän muihin osiin, joten nämä rajat toimivat turvamekanismina, joka estää liian suurta yhteysmäärää kuormittamasta järjestelmää liikaa. On parempi pudottaa osa ylimääräisistä yhteyksistä ajoissa kuin hidastaa jokaista yhteyttä. Overleaf Server -instanssit tarjoavat ympäristömuuttujat näiden nginx-asetusten säätämiseen:
  • NGINX_WORKER_PROCESSES asetukselle worker_processes (oletus 4)
  • NGINX_WORKER_CONNECTIONS asetukselle worker_connections (oletus 768)
  • NGINX_KEEPALIVE_TIMEOUT asetukselle keepalive_timeout (oletus 65)
    Kun sharelatex-kontin edessä ajetaan toista välityspalvelinta (esim. TLS-päätepisteenä), Overleaf Server -instanssin NGINX_KEEPALIVE_TIMEOUT-arvon on oltava suurempi kuin edeltävän välityspalvelimen. Esimerkiksi kun Docker-isännällä nginx-host ajetaan toista nginx-prosessia, tässä on kaksi esimerkkiä:
  • Oletusarvo NGINX_KEEPALIVE_TIMEOUT: käytä nginx-host-palvelimella asetusta keepalive_timeout 60s (upstreamin oletusarvo)
  • Mukautettu arvo NGINX_KEEPALIVE_TIMEOUT=100s: käytä nginx-host-palvelimella asetusta keepalive_timeout 90s (mukautettu arvo upstreamissa)

Suorittimen nopeus

LaTeX on yksisäikeinen ohjelma, eli se voi käyttää vain yhtä suoritinydintä kerrallaan. Suoritin on myös tärkein rajoittava tekijä dokumenttia käännettäessä. Siksi mitä nopeampi suorittimesi yhden ytimen suorituskyky on, sitä nopeammin pystyt kääntämään dokumentin. Useammista ytimistä on hyötyä vain, jos yrität kääntää enemmän dokumentteja kuin sinulla on vapaita suoritinytimiä.
Last modified on October 4, 2026