https://redmine.pirati.cz/https://redmine.pirati.cz/themes/PurpleMine2/favicon/favicon.ico?16932481682022-04-04T14:49:29ZÚkolovník - Pirátský redmineÚdržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560292022-04-04T14:49:29ZJan Hamal Dvořákjan.hamal.dvorak@pirati.cz
<ul><li><strong>% Hotovo</strong> změněn z <i>0</i> na <i>10</i></li><li><strong>Přiřazeno</strong> nastaven na <i>Andrej Ramašeuski</i></li><li><strong>Stav</strong> změněn z <i>Nový</i> na <i>V řešení (diskutuje se)</i></li></ul><p>Ano, bylo. Prosím o zajištění odpovídajícího rozpočtu na rozvoj OSS evropského významu poměrný částkám vynakládaným státem na rozvoj MS Office 365 a Google Docs. Pevně věřím, že peníze na to ve státním rozpočtu a fondech soudržnosti EU najdeme poměrně snadno. Jsem si jistý, že pro dosažení významného pokroku bude stačit setina ročních nákladů na alternativy. /s</p>
<p>Andreji, pozoruji to už déle; klient stahuje hrozně moc malých skriptů a CSS souborů. Asi s tím nic neuděláme, protože velká část jsou individuální české překlady různých rozšíření. Při typickém načtení stránky musí prohlížeč stáhnout desítky malých souborů. Mají v URL cache-busting <code>v=XXXX</code> tag a <code>Cache-Control: max-age=TTTT</code>, což ale nezabrání RCWN a revalidaci. Náš server z nějakého důvodu odpovídá po HTTP/1.1, takže ty požadavky nejsou ani moc paralelní.</p>
<p>Co kdybychom nějak po cestě, pro všechny assety, které mají v <code>max-age</code> a <code>.js?v=</code> nebo <code>.css?v=</code> v adrese přidali k <code>Cache-Control: max-age=TTTT, immutable</code>, aby to šlo vždycky z disku? Mělo by to prohlížečům vysvětlit, že se fakt nemusí po každé ptát na tytéž soubory a čekat s jejich spuštěním, než dorazí přes síť.</p>
<p>(Immutable znamená, že po dobu <code>max-age</code> se nemá ptát, opravdu se nezmění.)</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560302022-04-04T14:52:01ZJan Hamal Dvořákjan.hamal.dvorak@pirati.cz
<ul></ul><p>Co se týče práce z telefonu, je k dispozici i mobilní aplikace, která bude určitě lepší než webové rozhraní.<br>
Určitě ale také nebude dokonalá.</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560412022-04-04T16:50:30ZAndrej Ramašeuski
<ul></ul><p>nahodou, v telefonu, v aplikaci, krasne pracuje i onlyoffice</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560482022-04-04T17:37:03ZAndrej Ramašeuski
<ul><li><strong>% Hotovo</strong> změněn z <i>10</i> na <i>30</i></li></ul><p>Jan Hamal Dvořák napsal (<a href="#note-1">#note-1</a>):</p>
<blockquote>
<p>Co kdybychom nějak po cestě, pro všechny assety, které mají v <code>max-age</code> a <code>.js?v=</code> nebo <code>.css?v=</code> v adrese přidali k <code>Cache-Control: max-age=TTTT, immutable</code>, aby to šlo vždycky z disku? Mělo by to prohlížečům vysvětlit, že se fakt nemusí po každé ptát na tytéž soubory a čekat s jejich spuštěním, než dorazí přes síť.</p>
</blockquote>
<p>http/2 uz je zapnuty. to by mohlo pomoct. a ty assety o kterych pises, JDOU z disku, na ne se nepta</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560532022-04-04T22:26:06ZAndrej Ramašeuski
<ul></ul><p>Po upgradu v novem .htaccess immutable uz je:</p>
<pre> <FilesMatch "\.(css|js|svg|gif|png|jpg|ico|wasm|tflite)(\?v=.*)?$">
Header set Cache-Control "max-age=15778463, immutable"
</FilesMatch>
</pre> Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560632022-04-05T10:33:04ZJan Hamal Dvořákjan.hamal.dvorak@pirati.cz
<ul></ul><p>Díky, u mě to je rozdíl cca 1s načtení <code>/files/</code>.</p>
<p>Další postřehy:</p>
<ol>
<li><p><code>cron.php</code> nestíhá doběhnout ve vymezeném čase. Běží klidně 45 minut. Dohromady ~2x 33% CPU. Asi bychom měli zjistit co dělá tak dlouho a pokud je to nevyhnutelné, tak nestartovat tolik paralelně, ale dát větší rozestupy.</p></li>
<li><p>Těch jader je tam opravdu hodně málo. Rozhodně bych tady nešetřil, na hypervizorech máme zrovna jader dost. Viděl bych to na 8 jader a 16 procesů apache.</p></li>
</ol>
<p>Každopádně aktuální latence odpovědi na <code>/files/</code> je >500ms, což je prostě příliš. Potřebujeme se dostat na desetinu. :-\</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1560652022-04-05T11:50:12ZJan Hamal Dvořákjan.hamal.dvorak@pirati.cz
<ul></ul><p>Hmm, našel jsem další problém:</p>
<p>Máme ukrutně malý DB pool. Na <code>pg</code> vidím 5 spojení, ale když rozkliknu <code>/files/</code>, tak se naváže dalších 5 nových. Po načtení se hned zavřou. Je potřeba tam dát aspoň 20 trvalých spojení. Nicméně PHP mi přijde správně nastavené, tak nevím kde se to bere.</p>
<p>Asi bych nasadil <a href="http://www.pgbouncer.org/" class="external">pgBouncer</a> na serveru <code>nextcloud</code>:</p>
<pre>pool_mode = session
server_reset_query = DISCARD ALL
max_client_conn = 100
max_db_connections = 30
default_pool_size = 20
min_pool_size = 5
</pre>
<p>Přibližně.</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1562982022-04-10T20:33:08ZAndrej Ramašeuski
<ul><li><strong>% Hotovo</strong> změněn z <i>30</i> na <i>40</i></li></ul><pre>max_connections = 200
shared_buffers = 1536MB
effective_cache_size = 4608MB
maintenance_work_mem = 384MB
checkpoint_completion_target = 0.9
wal_buffers = 16MB
default_statistics_target = 100
random_page_cost = 1.1
effective_io_concurrency = 200
work_mem = 2621kB
min_wal_size = 1GB
max_wal_size = 4GB
max_worker_processes = 6
max_parallel_workers_per_gather = 3
max_parallel_workers = 6
max_parallel_maintenance_workers = 3
</pre> Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1563302022-04-11T19:52:35ZAndrej Ramašeuski
<ul><li><strong>% Hotovo</strong> změněn z <i>40</i> na <i>50</i></li></ul><p>OIDC je teoreticky funkcni. Nicmene, pravdepodobne zpusobuje odhlaseni desktopovych klientu, nekdy se vubec neprihlasuje a jine problemy.</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1563312022-04-11T20:38:04ZAndrej Ramašeuski
<ul></ul><p>spravny oidc plugin - <a href="https://apps.nextcloud.com/apps/user_oidc">https://apps.nextcloud.com/apps/user_oidc</a></p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1683412023-02-22T21:44:02ZAndrej Ramašeuski
<ul><li><strong>% Hotovo</strong> změněn z <i>50</i> na <i>100</i></li><li><strong>Stav</strong> změněn z <i>V řešení (diskutuje se)</i> na <i>Dokončen</i></li></ul><p>Optimalizace dokoncena</p>
Údržba a provoz - Podání #38974: Slabiny Mrakuhttps://redmine.pirati.cz/issues/38974?journal_id=1683422023-02-22T21:44:14ZAndrej Ramašeuski
<ul><li><strong>Projekt</strong> změněn z <i>Technický odbor</i> na <i>Údržba a provoz</i></li></ul>