등록정보 파일에서 경로 서비스에 대한 고급 등록정보를 지정합니다.
추가 서비스 등록정보
네트워크 데이터셋에서 경로 서비스를 구성할 때 서비스 인스턴스의 최소 및 최대 수 또는 서비스의 REST API에서 지원하는 하나 이상의 매개변수에 대한 기본값과 같은 경로 서비스에 대한 추가 설정이 포함된 등록정보 파일을 지정할 수 있습니다. 예를 들어, 경로 찾기 서비스를 사용하는 응용프로그램에서 결과 경로의 이동 시간 및 이동 거리 값만 사용하고 운전 방향 또는 경로 지오메트리는 필요하지 않은 경우 등록정보 파일을 사용하여 기본 설정에 따라 원하는 결과만 반환하도록 경로 및 길찾기 서비스를 구성할 수 있습니다. 이는 클라이언트 응용프로그램에서 사용하지 않는 추가 결과를 생성하지 않기 때문에 경로 찾기 서비스의 성능을 최적화합니다.
등록정보 파일은 JSON(JavaScript Object Notation) 형식으로 설정을 저장합니다. 해당 도움말 항목에서는 JSON 형식에 대한 기본 지식이 있다고 가정합니다.
등록정보 파일을 지정하여 경로 서비스에 대한 고급 등록정보를 구성할 수 있습니다. 기본 등록정보 파일은 publishroutingservices.json입니다.
해당 파일은 <install folder>/framework/runtime/ArcGIS/Resources/ArcToolBox/Services/routingservices의 ArcGIS Server 설치 디렉터리 내에서 찾을 수 있습니다.
해당 섹션에서는 기본 파일을 예시로 사용하여 등록정보 파일 구조를 설명합니다. 기본 파일의 복사본을 만들고 텍스트 편집기를 사용해 복사본을 편집하여 등록정보를 변경할 수 있습니다. 경로 구성 프로세스를 호출할 때는 수정된 파일을 입력으로 지정합니다.
등록정보 파일 구조
등록정보 파일에는 routingServices 및 mapServices 객체가 있는 최상위 객체 gpServices가 포함되어 있습니다. 이러한 각 객체에는 특정 경로 서비스를 나타내는 하나 이상의 객체가 포함될 수 있습니다. 등록정보 파일의 최상위 JSON 객체 mapServices 객체는 networkAnalysis 맵 서비스의 등록정보를 정의하고 gpServices 객체는 asyncNetworkAnalysis, syncNetworkAnalysis, routingUtilities 지오프로세싱 서비스의 등록정보를 정의합니다.{
"routingServices": {
"mapServices": {
"networkAnalysis": {
}
},
"gpServices": {
"asyncNetworkAnalysis": {
},
"syncNetworkAnalysis": {
},
"routingUtilities": {
}
}
}
}
networkAnalysis와 같은 맵 서비스 객체에는 맵 서비스에 대한 서비스 수준 등록정보를 정의하는 serviceProperties 객체 및 맵 서비스에서 사용하는 하나 이상의 레이어에 대한 등록정보를 정의하는 layerProperties 객체가 포함됩니다.
asyncNetworkAnalysis와 같은 지오프로세싱 서비스 객체에는 지오프로세싱 서비스에 대한 서비스 수준 등록정보를 정의하는 serviceProperties 객체 및 지오프로세싱 서비스에서 사용하는 하나 이상의 지오프로세싱 도구에 대한 등록정보를 정의하는 toolProperties 객체가 포함됩니다.
serviceProperties, layerProperties 또는 toolProperties를 포함하는 서비스 JSON 객체입니다.
{
"routingServices": {
"mapServices": {
"networkAnalysis": {
"serviceProperties": {
},
"layerProperties": {
}
}
},
"gpServices": {
"asyncNetworkAnalysis": {
"serviceProperties": {
},
"toolProperties": {
}
},
"syncNetworkAnalysis": {
"serviceProperties": {
},
"toolProperties": {
}
},
"routingUtilities": {
"serviceProperties": {
},
"toolProperties": {
}
}
}
}
}
서비스 객체 내의 serviceProperties 객체는 머신당 최대 서비스 인스턴스 수(MaxInstances) 또는 클라이언트가 서비스를 사용할 수 있는 최대 시간(초)(UsageTimeout)과 같은 하나 이상의 서비스 수준 등록정보를 정의합니다.
맵 서비스의 layerProperties 객체는 route, closestFacility, serviceArea, odCostMatrix 레이어의 등록정보를 정의합니다. 레이어의 등록정보는 defaultValues 객체의 일부로 정의됩니다.
지오프로세싱 서비스의 toolProperties 객체는 FindRoutes, FindClosestFacilities, GenerateServiceAreas, GenerateOriginDestinationCostMatrix, SolveLocationAllocation, SolveVehicleRoutingProblem, EditVehicleRoutingProblem과 같은 지오프로세싱 도구의 등록정보를 정의합니다. 도구의 등록정보는 defaultValues 객체의 일부로 정의됩니다. constantParameters 객체를 사용하면 지오프로세싱 서비스의 REST API에서 사용할 수 없는 도구에 대한 하나 이상의 매개변수를 나열할 수 있습니다.
맵 서비스 레이어의 layerProperties 객체 및 지오프로세싱 서비스 도구의 toolProperties 객체입니다.
{
"routingServices": {
"mapServices": {
"networkAnalysis": {
"serviceProperties": {
},
"layerProperties": {
"route": {
"defaultValues": {
}
},
"closestFacility": {
"defaultValues": {
}
},
"serviceArea": {
"defaultValues": {
}
},
"odCostMatrix": {
"defaultValues": {
}
}
}
}
},
"gpServices": {
"asyncNetworkAnalysis": {
"serviceProperties": {
},
"toolProperties": {
"FindRoutes": {
"defaultValues": {
},
"constantParameters": []
},
"FindClosestFacilities": {
"defaultValues": {
},
"constantParameters": []
},
"GenerateServiceAreas": {
"defaultValues": {
},
"constantParameters": []
},
"GenerateOriginDestinationCostMatrix": {
"defaultValues": {
},
"constantParameters": []
},
"SolveLocationAllocation": {
"defaultValues": {
},
"constantParameters": []
},
"SolveVehicleRoutingProblem": {
"defaultValues": {
},
"constantParameters": []
}
}
},
"syncNetworkAnalysis": {
"serviceProperties": {
},
"toolProperties": {
"EditVehicleRoutingProblem": {
"defaultValues": {
},
"constantParameters": []
}
}
},
"routingUtilities": {
"serviceProperties": {
}
}
}
}
}
등록정보 파일 편집 및 업로드
경로 서비스를 구성하는 경우 최소 또는 최대 인스턴스와 같이 지정한 등록정보가 포함된 등록정보 파일을 업로드할 수 있습니다. 등록정보 파일은 <install folder>/framework/runtime/ArcGIS/Resources/ArcToolBox/Services/routingservices/publishroutingservices.json의 ArcGIS Server 설치 디렉터리 내에서 찾을 수 있습니다. 등록정보를 변경하려면 해당 파일의 복사본을 만들고 텍스트 편집기를 사용하여 편집합니다.
팁:
파일을 편집하는 경우 등록정보 파일을 편집하는 동안 구문 오류가 발생하지 않도록 JSON 구문을 이해하는 Visual Studio Code와 같은 텍스트 편집기를 사용하여 등록정보 파일을 편집하는 것을 권장합니다. JSON 구문 오류가 있는 등록정보 파일을 사용하면 경로 서비스 구성 프로세스에 실패하게 됩니다.