-
Notifications
You must be signed in to change notification settings - Fork 0
RequestProxies
Only one RequestManagerHandler (central service) and several RequestProxyHandlers (i.e. at T1s). When RequestManagerHandler is unreachable, proxy will store xml-serialised request into its cache (local fs under runit/RequestManager/RequestProxy/cache directory, where files are named after md5 checksum computed from xml string). A separate thread running in the bkg (RequestProxyHandler.sweeper) retries every 2 minutes to put the oldest 10 requests to the central RequestManager service).
To see cache size, execute RPC RequestProxyHandler.getStatus
, should return S_OK( cacheSize )
, where cacheSize
== number of files in the cache.
Q: What if request has to be executed locally (i.e. transfer.putAndRegister needs to access local fs?). Those are not 'forwadable', RequestProxy service will refuse to set them at central RequestManager. Fortunately those are well separated (i.e. only at the pit for LHCb, don't know other VOs).
- DMS various agents and tasks - done
- RMS/Client/RequestClient - done
- RMS/Agent/DISETForwardingAgent - done
- RMS/Agent/ZuziaAgent obsolete
- TS/Client/TaskManager.py - done
Need to check LHCbDIRAC part.
Systems {
RequestManagement {
Services {
## add RequestProxyHandler
RequestProxy {
Port = 9161
Authorization {
Default = authenticated
}
}
}
URLs {
## the only one URL to RequestManagerHandler
RequestManager = dips://host:9143/RequestManagement/RequestManager
## comma separated list to all RequestProxyHandlers
RequestProxyURLs = dips://hostA:9161/RequestManagement/RequestProxy, dips://hostB:9161/RequestManagement/RequestProxy
}
Agents {
## comment out ZuziaAgent
}
}
}