We have created a virtual service for MQ and deployed to VSE. When we try to remove/stop this MQ Virtual Service from Server Console, its Status changed to "Stopping" but remained as that for more than half an hour.
In VSM file, MQ subscribe step has timeout value set to 2000ms and deployed the service with concurrent capacity as 200. By doing this, each thread in background will wait for 2000ms to close the back end connection with MQ server and not able to close connection properly.
In vsm file, Set the timeout value in Subscribe step to lesser value as 30 sec and deploy the service with concurrent capacity value less than 10. So that service will establish 10 connections with MQ server and when stopping the service, it will wait for maximum of 30 sec in subscribe step before closing connection with MQ server.
If we do not want to modify VSM file/concurrent capacity details for deployed service, an alternate approach is, stop the VSE server and remove corresponding service MAR file from <Devtest_home>/vseDeploy folder and restart VSE.