6

I am just done with my first Alchemy Plugin. Which uses Core Service in it. As we use web api controllers in alchemy to instantiate and call the core service and it's one instance per plugin.

I was wondering as the number of plugins grow, could it have a effect on performance?
Is there a way, we don't have to create on core service instance per plugin and we can share one with all the plugins on a cms?

I understand the plugins are separate entities from each other but just curious.

  • Are you using SessionAwareCoreService or CoreService? – Chakresh Singh Aug 10 '15 at 14:15
  • SessionAwareCoreService – Saurabh Gangwar Aug 10 '15 at 14:17
  • It all depends how ISessionAwareCoreServiceClient has been implemented. if the InstanceContextMode value is set to Single the result is that the service can only process one message. – Chakresh Singh Aug 10 '15 at 14:28
4

Great thought Saurabh. I think because there are so many different times that an Alchemy plugin might be using the core service (on loading the CME, onclick of a ribbon button, etc) we'd basically have to have a client open at all times, which wouldn't be the most efficient either. The solution in place with the latest version of Alchemy is to create a "Client" property in the Alchemy Api Controller. This property handles the disposal of the client automatically to ensure we don't end up with old clients open for each plugin.

Details are here: https://github.com/Alchemy4Tridion/Alchemy4Tridion/issues/85

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.