Fórum Root.cz
Hlavní témata => Vývoj => Téma založeno: RHtronix 10. 02. 2016, 06:30:46
-
Zdravím,
potřeboval bych pomoct s následujícím:
Mám program v pythonu a obsah jedné proměnné chci zobrazovat na webové stránce, vždy když v pythonu aktualizuji obsah této proměnné. Nejsem v tomhle zběhlý a potřebuji nasměrovat, jakou technologii a jak použít. Ideálně co nejjednodušeji - něco jako "websockets for dummies".
Díky za případné rady
-
No, vzhledem k tomu, jak je otázka postavená, bych doporučil použití převratné technologie: Přes soubor. To znamená, vždy, když proměnnou aktualizuješ, si ji uložíš do souboru. Obsah toho souboru pak budeš dynamicky zobrazovat na webu pomocí libovolné jiné technologie, např. zmíněné websockets for dummies.
-
No, vzhledem k tomu, jak je otázka postavená, bych doporučil použití převratné technologie: Přes soubor. To znamená, vždy, když proměnnou aktualizuješ, si ji uložíš do souboru. Obsah toho souboru pak budeš dynamicky zobrazovat na webu pomocí libovolné jiné technologie, např. zmíněné websockets for dummies.
Zápisu do souboru bych se rád vyhnul - momentálně je to read only a rád bych aby to tak zůstalo...
-
No, vzhledem k tomu, jak je otázka postavená, bych doporučil použití převratné technologie: Přes soubor. To znamená, vždy, když proměnnou aktualizuješ, si ji uložíš do souboru. Obsah toho souboru pak budeš dynamicky zobrazovat na webu pomocí libovolné jiné technologie, např. zmíněné websockets for dummies.
Zápisu do souboru bych se rád vyhnul - momentálně je to read only a rád bych aby to tak zůstalo...
co tmpfs v paměti?
-
Zni to jako zadani pro nejaky eventbus. Ale bez detailu tezko soudit.
-
Můžete použít jako message broker Mosquitto a v python použít paho-mqtt (https://pypi.python.org/pypi/paho-mqtt/1.1) clienta. Mosquitto (http://mosquitto.org/) má MQTT i WS, takže na straně webu pak třeba socket.io (http://socket.io/), to má fallbacky na jiné technologie u exotických browserů.
Je to velmi snadné, snadněji komunikovat real-time asi nejde :)
-
řešení se souborem není úplně vhodné - ani v tempfs - jde mi o to aby se neaktualizovala na stránce periodicky, ale jen když se reálně změní.
Hledám websocket knihovnu pro python bez nutnosti použít externí http server. ideálně nějaký tutoriál, nebo příklad...
-
Jen tak zkusmo googlim a nasel jsem tohle: https://github.com/dpallot/simple-websocket-server
-
@RHtronix: Ale vy http server nepotřebujete. Vám stačí nějaký message broker. Netuším co je ten local, ale lze využít třeba zmíněné mosquitto. To je přímo broker, pokud bude na tom zařízení a dá se k němu odněkud připojit, může být rovnou na něm.
Já ale u malých zařízení typu routeru atd volím cestu externího serveru dobrovolně, protože v případě větší zátěže by to mohlo omezovat. Na malých zařízeních pak mám MQTT clienty, na webu WebSockety a broker běží uprostřed toho všeho na klasickém VPS, kde mí těch messages utáhne desítky tisíc za sekundu :-)