This is my first post so apologies if it’s in the wrong place or asking the wrong question, i am also relatively new to webMethods.
I have been given a requirement to build a service that can be run on multiple servers from a central server. The service works perfectly on my local server and any other server it is deployed on. However, we have lots of servers and so are trying to avoid deploying the package on every server as it will take too much time/effort.
Is there any way to run the service that is contained on my local machine on any server that i have permission to access?
The route i have so far tried to follow is by altering the dsp files found within wmDeployer(into a new package), but can’t see how to get this working fully.
As further information about the service, it is a dsp itself that runs services inside the wmRoot package
this depends on the business case of the service.
Can you describe this please?
Which version of wM are you on?
Can you give an approximate number of servers affected?
You can create a Target Group in Deployer containing the servers and then just deploy to this target group instead of to the separate instanced individually.
Deployer is not intended to invoke services on other instances except for deploying the artifacts by using the services in WmDeployerResource package.
I could think of two ways…
Are these servers in cluster? If so, schedule execution of this service thru IS scheduler and you can choose the option run in all nodes of cluster.
If they are not in cluster, then you can make use of ‘remote server alias’ and there are few public services that can invoke service in remote servers.
Hope this helps…
Thanks for your replies
Holger: The services essentially get information from the server about it’s packages/services and do background tasks usually done through the IS gui such as reset cache etc. They are all utilities services
Using WM 9.6. I don’t know the number of servers exactly, roughly 30-50 across many target groups
I don’t want to deploy to the servers because the services i am creating will be constantly edited/added to and so i don’t want to have to re-release within a live package too often
Senthil: There are both clusters of servers and standalone servers, so a solution that works across both formats would be ideal. With the public services within ‘remote server alias’, can these invoke a service that exists on my local server on a different server? e.g. i want to be logged into severA containing the service, but run this service on serverB which does not contain the service. I have tried using ‘wm.server.remote:invoke’ but this doesn’t work for this
Most of these services are also web based and so would need to open the web page built using dsp for each service
the options Senthil has outlined still require the services to be present in each server (even when clustered).
Even when invoking via invoke URL, the service needs to be present in the namespace of the server referenced in the URL.