Server/Jiné pohledy

Z JKwiki

Přejít na: navigace, hledání

Obsah

Jiné pohledy

Dovolím si představit vlastní návrh i s určitým nástinem konkrétního řešení.

Dnes už běžnou součástí linuxových distribucí je IPC prostředek D-Bus, který mi přijde jako vhodný pro tyto účely.

  • Nepotřebuje ni Gnome, ni KDE
  • GLib (+- Gnome), Qt, Python... API

Na druhou stranu ještě nemá verzi 1.0.

Klienti

Klienti budou samozřejmě původní aplikace, které budou k datům přistupovat a to prostřednictvím D-Busu a daných rozhraní. Ukázka jednoho takového je třeba tady: Desktop Notifications. Popisuje desktopovou službu, která slouží k zobrazování ošklivých hlášek (už používáno třeba ve Fedoře a myslím i Ubuntu, spusťte si Gnome a přijměte novou zprávu v Gajimu, mohl bych vyhrabat kód, který tu zprávu posílá).

Server

D-Bus se spouští jako démon, který pak zprostředkovává komunikaci mezi dvěma napojenými procesy. Náš problém je jak zajistit, že naše daná rozhraní jsou někým obsloužena a že se klienti nebudou jenom marně snažit někam připojit. D-Bus dokáže spustit službu na požádání (DBus Activation), ale nevím, jestli to nelze jenom pro systémovou sběrnici. Každopádně by šlo vytvořit vlastního démona, který by mohl dané služby na požádání spouštět. V obou případech je otázka jak zajistit uživateli možnost vybrat si konkrétní aplikaci, která bude to které rozhraní obsluhovat.

Služba na kterou se klient připojí pak může být přímo nějaká existující aplikace (bude-li to umět) nebo třeba naše vlatní, která ty data někde získá (přímo z datových souborů, prostřednictvím jiné aplikace, webové služby... co já vím). Netrápil bych se tím, abychom sami vytvářeli nějaké centrální úložiště dat pro všechno.


Shrnutí

Upravit klientské aplikace aby používaly zdroj dat přes D-Bus; určit rozhraní pro každý typ dat, upravit či vytvořit aplikace která ta rozhraní budou poskytovat; zajistit jejich dostupnost; vykašlat se na vlastní ukládání dat (pouze pro jednotlivé případy, bude-li se psát vlastní aplikace); vykašlat se přímo na vlastní protokol.


Navíc D-Bus má být výhledově standardem LSB (zdroj)

Osobní nástroje
kategorie