2010-08-10 6 views
1

Je développe un système qui fournira de nombreux services, par exemple, S1, S2, S3. Chacun de ces services a un certain nombre d'exécutables qui communiquent en utilisant des événements, en utilisant protobuf.Question de conception sur les événements de protocole tampon

Ma question est: Lequel pensez-vous est une meilleure conception: (1) Combiner tous les événements pour tous les services (actuellement 10-15) dans une grande my_events.proto définition, ou (2) distinguez, c'est-à-dire s1_proto, s2_proto, etc.

Une chose intéressante à propos de (1) est qu'il y a un fichier proto à s'inquiéter; inconvénient est que je lie le même gros fichier d'en-tête pour tout le code.

Merci!

Répondre

2

J'irais avec des fichiers de définition séparés. Si quelque chose, parce que vous pouvez changer chaque service individuellement sans avoir à recompiler/construire l'ensemble entier; vous pouvez mieux gérer les historiques de modifications dans CVS ou n'importe quel outil de contrôle de code source que vous utilisez; et il serait peut-être plus facile de rechercher des fichiers plus petits lorsque vous travaillez sur les implémentations de service.