Мне поручили написать веб-службу, которую можно вызывать из одного из двух наших заводов, что позволит нашему отделу доставки получить наиболее эффективный маршрут для набора поставок. Также мы обсудили возможность настройки территорий и закрепления доставки на территории и территории за водителями.
Мой вопрос в самой простой форме таков: MapPoint 2011 позволяет вам использовать свою объектную модель через COM. Я не очень хорошо знаком с этим типом программирования, но кажется, что он создает новый экземпляр приложения каждый раз, когда вызывается логика. Является ли этот тип использования масштабируемым? Что произойдет, если десять вызовов будут получены одновременно?
Я включил пример кода из MSDN ниже в качестве точки отсчета.
//set up application
MapPoint.Application objApp = new Application();
objApp.Visible = false;
objApp.UserControl = false;
MapPoint.Route objRoute;
MapPoint.Map objMap;
objMap = objApp.ActiveMap;
objRoute = objMap.ActiveRoute;
objMap.Parent.PaneState = MapPoint.GeoPaneState.geoPaneRoutePlanner;
//Get locations for route
object item = 1;
objRoute.Waypoints.Add(objMap.FindResults("Redmond, WA").get_Item(ref item),
"Redmond, WA");
objRoute.Waypoints.Add(objMap.FindResults("Seattle, WA").get_Item(ref item),
"Seattle, WA");
objRoute.Waypoints.Add(objMap.FindResults("Portland, OR").get_Item(ref item),
"Portland, OR");
// Calculate the route
objRoute.Calculate();
//Asks if you want to save the map? How would you say no programmatically?
objApp.Quit();