2010-02-12 5 views
0

J'écris un système d'impression qui met une interface simplifiée au-dessus de CUPS. Les utilisateurs placent les tâches dans une file d'attente, le système les traite de différentes manières (statistiques, quotas de pages, etc.), puis offre à l'utilisateur une interface Web pour répartir le travail sur l'une des imprimantes multiples.Options de stockage des métadonnées sur les travaux d'impression CUPS?

Puisqu'il peut y avoir plusieurs kiosques d'utilisateur, une station d'administration, etc., j'ai besoin de stocker des métadonnées de travail dans quelque chose qui peut gérer l'accès simultané. (Pouvez-vous appeler des structures de données « rentrante ») Quelques options que je peux imaginer sont

  • une base de données MySQL: massivement surpuissant, mais certainement stable et soutenu
  • fichiers de métadonnées, avec un accès simultané traitées manuellement: parfaitement adapté à mes besoins, mais je dois re-mettre en œuvre un sous-ensemble de l'atomicité de MySQL, et faire probablement mal
  • écriture dans les fichiers de contrôle CUPS, en utilisant le cupsipp.h thread-safe fourni API

La dernière option semble la plus attrayante, mais il y a un piège: I ' J'écris ceci en Python, et ni pycups ni pkipplib ne semblent avoir aucun moyen de modifier un fichier de contrôle.

Editer: Je dois préciser que pkipplib peut générer de nouvelles requêtes IPP, mais ne donne aucun moyen de modifier le fichier de contrôle existant. Autrement dit, je devrais faire mes mises à jour en les soumettant comme de nouveaux emplois.

Quelqu'un a-t-il une meilleure idée? Des conseils seraient très appréciés.

Répondre

0

Avez-vous considéré sqlite ou redis? Les deux sont à faible frais généraux et facile à tourner, surtout lorsque vous n'avez pas vraiment affaire à des ensembles de données complexes.

Questions connexes