Grafana (Wikipedie), tj. open source nástroj pro vizualizaci různých metrik a s ní související dotazování, upozorňování a lepší porozumění, byla vydána ve verzi 12.0. Přehled novinek v aktualizované dokumentaci.
Raspberry Pi OS, oficiální operační systém pro Raspberry Pi, byl vydán v nové verzi 2025-05-06. Přehled novinek v příspěvku na blogu Raspberry Pi a poznámkách k vydání. Pravděpodobně se jedná o poslední verzi postavenou na Debianu 12 Bookworm. Následující verze by již měla být postavena na Debianu 13 Trixie.
Richard Stallman dnes v Liberci přednáší o svobodném softwaru a svobodě v digitální společnosti. Od 16:30 v aule budovy G na Technické univerzitě v Liberci. V anglickém jazyce s automaticky generovanými českými titulky. Vstup je zdarma i pro širokou veřejnost.
sudo-rs, tj. sudo a su přepsáné do programovacího jazyka Rust, nahradí v Ubuntu 25.10 klasické sudo. V plánu je také přechod od klasických coreutils k uutils coreutils napsaných v Rustu.
Fedora se stala oficiální distribucí WSL (Windows Subsystem for Linux).
Společnost IBM představila server IBM LinuxONE Emperor 5 poháněný procesorem IBM Telum II.
Byla vydána verze 4.0 multiplatformního integrovaného vývojového prostředí (IDE) pro rychlý vývoj aplikaci (RAD) ve Free Pascalu Lazarus (Wikipedie). Přehled novinek v poznámkách k vydání. Využíván je Free Pascal Compiler (FPC) 3.2.2.
Podpora Windows 10 končí 14. října 2025. Připravovaná kampaň Konec desítek (End of 10) může uživatelům pomoci s přechodem na Linux.
Již tuto středu proběhne 50. Virtuální Bastlírna, tedy dle římského číslování L. Bude L značit velikost, tedy více diskutujících než obvykle, či délku, neboť díky svátku lze diskutovat dlouho do noci? Bude i příští Virtuální Bastlírna virtuální nebo reálná? Nejen to se dozvíte, když dorazíte na diskuzní večer o elektronice, softwaru, ale technice obecně, který si můžete představit jako virtuální posezení u piva spojené s učenou
… více »Už delší čas se rozmýšlím a pátrám, jaký jazyk nebo ještě lépe menší framework použít pro vývoj webového GUI. Jelikož se nejedná o žádný masově navštěvovaný web, není zde kladen důraz na výkon, ale o to více na bezpečnost.
Moje představy:
Asi bych měl poznamenat že se vyhýbám Javě, protože si myslím, že se vyplatí jí nasazovat jen u rozsáhlých projektů, nejvíc mi na ní vadí zbytečná paměťová náročnost. Nicméně pokud mne někdo chcete přesvědčit o opaku, nebráním se.
Už dlouho píši takovéto jednoduché aplikace v PHP, ale popravdě si nemyslím, že bych se v něm naučil řešit problémy čistě a rád bych přesedlal na jiného koně.
Zaujal mne Python, líbí se mi jeho syntaxe a multiplatformnost. Co mě trošku zaráží, je absence kompatibility mezi 2.x a 3.x verzemi, ale v zásadě se nejedná o stěžejní problém. Vyzkoušel jsem si tedy Django, ale narazil jsem na zcela zásadní problémy. Lze v něm sice spousty řešení napsat velmi rychle, nicméně pokud chcete udělat něco, s čím autoři nepočítali, můžete se snadno dostat do slepé uličky.
Pak jsem našel CherryPy, ve kterém jsem si zatím nic moc nevyzkoušel, ale asi se blíží mým představám nejvíce. Nesmířil jsem se ale s tím, že jeho webový server sežere přes 100MB paměti i s tím nejjednodušším skriptem a pravděpodobně neumí SSL.
Víte ještě o něčem jiném, co by stálo za vyzkoušení nebo mi nějak napomohlo?
Řešení dotazu:
Máš pravdu. Podle CherryPy wiki umí HTTPS od verze 3.0+. To mě docela mile potěšilo.
Ale stejně vidím problém v té paměti. Jelikož si chci dát dohromady GUI pro správu virtuálních strojů, rád bych co nejvíce paměti ušetřil právě pro ty virtuály. Ale možná by se vyplatilo použít Lighttpd a CherryPy na něj napojit skrz WSGI.
ps
? Opravdu po spuštění webovky klesne volná paměť o 100 MB?
Pokud záleží na každém kilobajtu, nejlepší to asi bude udělat v C++ Opravdu to podle mne tolik paměti sežere. Tedy abych upřesnil - RSS je size pouze 9MB, ale VSZ 220MB. Pokud si zjistím stav paměti před spuštěním (třeba pomocí free), jsem na 22MB obsazené paměti, po spuštění na 160MB. Spouštím si jednoduchý skript "Hello world!" z jejich wiki, který běží na integrovaném webovém serveru.
Takto vypadá výpis z ps:
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 19774 0.3 1.7 220156 9352 pts/0 Sl+ 08:23 0:00 python hello.py
Tohle se dá vytáhnout z kernelu:
Name: python State: S (sleeping) SleepAVG: 98% Tgid: 19774 Pid: 19774 PPid: 19694 TracerPid: 0 FNid: 101 Uid: 0 0 0 0 Gid: 0 0 0 0 FDSize: 256 Groups: 0 1 2 3 4 6 10 envID: 101 VPid: 19774 PNState: 0 StopState: 0 VmPeak: 220156 kB VmSize: 220156 kB VmLck: 0 kB VmHWM: 9352 kB VmRSS: 9352 kB VmData: 139192 kB VmStk: 84 kB VmExe: 4 kB VmLib: 6380 kB VmPTE: 248 kB StaBrk: 0783a000 kB Brk: 07a6b000 kB StaStk: 7fff125a1600 kB Threads: 14 SigQ: 0/38912 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 0000000001001000 SigCgt: 0000000180004203 SigSvd: 0000000000000000 CapInh: 000000007dcceeff CapPrm: 000000007dcceeff CapEff: 000000007dcceeff Cpus_allowed: 7fffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff,ffffffff Mems_allowed: 00000000,00000001 TaskUB: 101 MMUB: 101
Teď mne napadlo hledat, jak snížit počet threadů, ve kterých ten server běží a zadařilo se, dostal jsem se těsně pod 50MB
Úplně o každý kilobajt ani megabajt mi nejde, hledám kompromis mezi časovou (z hlediska vývoje) a paměťovou náročností.
Přesně tak, webovým GUI mám na mysli webovou stránku prošpikovanou Ajaxem/Java scriptem, konkrétně mne v tomto ohledu velmi zaujalo použití jQuery a jQueryUI. Koukám že ExtJs je podobná záležitost. Server side poběží pouze v Pythonu a SQLite
Ruby vypadá zajímavě, ale nijak moc jsem jej nezkoumal. Možná proto, že nemám příliš důvěry v Ruby on Rails Ale to je jen můj osobní postoj.
Rozhodně díky za vyčerpávající odpověď. Vypadá to, že se asi začnu zabývat CherryPy, když už se zadařilo snížit paměťové nároky. V tuto chvíli je pro mne už asi nejdůležitější jen dokumentace.
htop
nebo prostřední řádek výpisu free
). Spustím jakýkoliv skript v adresáři /usr/share/doc/python-cherrypy3/tutorial (třeba 01 nebo 09) a zabraná paměť se vyšplhá na 40 MB:
$ ps aux | grep [p]ython messa 2716 1.0 2.1 173176 11224 pts/1 Sl+ 07:26 0:01 python tut01_helloworld.py $ cat /proc/2716/status Name: python State: S (sleeping) Tgid: 2716 Pid: 2716 PPid: 2499 TracerPid: 0 Uid: 1000 1000 1000 1000 Gid: 1000 1000 1000 1000 FDSize: 256 Groups: 20 24 25 29 44 46 1000 VmPeak: 173180 kB VmSize: 173176 kB VmLck: 0 kB VmHWM: 11224 kB VmRSS: 11224 kB VmData: 105992 kB VmStk: 148 kB VmExe: 1172 kB VmLib: 4672 kB VmPTE: 216 kB Threads: 13 SigQ: 0/4095 SigPnd: 0000000000000000 ShdPnd: 0000000000000000 SigBlk: 0000000000000000 SigIgn: 0000000001001000 SigCgt: 0000000180004003 CapInh: 0000000000000000 CapPrm: 0000000000000000 CapEff: 0000000000000000 CapBnd: ffffffffffffffff Cpus_allowed: 00000001 Cpus_allowed_list: 0 Mems_allowed: 00000000,00000001 Mems_allowed_list: 0 voluntary_ctxt_switches: 193 nonvoluntary_ctxt_switches: 77 $ free -m total used free shared buffers cached Mem: 499 182 317 0 16 124 -/+ buffers/cache: 40 459 Swap: 478 0 478
Příští týden budu mít více času, tak to schválně zkusím na různých verzích OpenVZ. Někde mi běží kromě stable verzí i různé vývojové. Snad je to jen nějaká maličkost. Možná je tam implementována alokace paměti nějakým jiným způsobem než v defaultním kernelu. Docela by bodlo přijít tomu na kobylku.
Moc díky za pomoc. Už jsem pomalu uvažoval o upuštění od CherryPy, ale tohle mě nakoplo a můžu postupovat dál
Tiskni
Sdílej: