Question

Je concevons une application distribuée qui consistera en une variété de services de repos. Dernièrement, je vais aller de retour sur le point de mettre en œuvre mes services de repos à l'aide de l'API ASP.NET MVC 4 ou de l'ODATA. WEB API semble être un jour ce dont j'ai besoin, mais il n'est plus à moitié cuite. Plus précisément, il n'a qu'une implémentation partielle de l'interrogation d'URI de style ODATA et ne fait pas que HyperMedia imprègne la touche.

Cela me force à prendre un autre long regard dur à Odata. J'aime vraiment la capacité d'interrogation de l'URI et l'hypermédia structurelle pour le chargement paresseux; Je pense que je vais utiliser ces fonctionnalités beaucoup dans mon application. Cependant, la spécification de pub Atom semble être grossièrement inefficace.

J'ai récemment lu un Poste sur une efficacité Format pour Odata qui mentionne "Json dense" mais une telle chose ne semble pas exister. Est-ce vrai? Et même s'il n'y a pas de telle chose comme un Json dense, Json régulier est toujours beaucoup plus efficace que l'atome pub, correct?

Y a-t-il une situation où je voudrais utiliser Atom Pub sur JSON?

Était-ce utile?

La solution

Il devrait y avoir très peu de différence entre Atom et Json sur le niveau sémantique avec Odata.Aussi la plupart des serveurs OData (services de données WCF à coup sûr) prennent en charge les deux, c'est donc un choix du client utilisé.En tant que publication du blog de Pablo mentionne, pour obtenir la meilleure taille de charge utile, vous devez activer la compression HTTP.Cela fonctionne très bien sur Atom et Json.

lire JSON a tendance à être plus rapide (l'analyse XML est une sorte de coût coûteuse), mais c'est si vous êtes préoccupé par la consommation de la CPU sur le client.Si je me souviens bien, la dernière fois que j'ai vu les chiffres, la taille de charge utile comprimée pour Atom et JSON n'est pas si différente.

Atom Pub est généralement plus facile à consommer dans le client qui offre de bonnes bibliothèques XML ou Atom et non JSON.Et vice versa.Mais autre que cela, il ne devrait pas y avoir une grande différence.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top