Question

J'ai un service WCF et utiliser Spring.ServiceModel.Activation.ServiceHostFactory comme une usine dans mon * .svc. Ce que je dois est de charger des données dans le cache lorsque le service est appelé première fois ou redémarré. Pourriez-vous s'il vous plaît suggérer une meilleure façon de le faire? En ce moment je hérité de la Spring.ServiceModel.Activation.ServiceHostFactory et mettre là-bas mon code, mais devrait probablement être une meilleure façon? Tnx à l'avance.

Était-ce utile?

La solution

Nous avons ce genre de code de démarrage dans le constructeur statique de notre ServiceHostFactory personnalisé. En fonction de vos paramètres en ce qui concerne pool d'applications « IIS de votre service (s) cela devrait être bien.

Vous devez avoir un regard sur les paramètres de recyclage du pool d'applications. Une fois qu'il est recyclé, le constructeur statique sera appelé à nouveau.

Autres conseils

Vous pouvez utiliser AOP pour intercepter l'appel (puisque vous utilisez déjà le printemps) pour obtenir le « premier appel », mais la chose la plus simple à faire serait d'appeler votre fournisseur de cache dans le constructeur de votre service ou une initialisation méthode.

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