I think the problem is with the implementation of Routes
. As we can see here - RouteTable.Routes
is static. So the issue here is not why the routes are not propogating to all processes, but more of a static variable in a web garden issue.
Trying to think of a workaround, what I can come up with is a solution similar to the sharing cache between web garden processes / web servers in a cluster. You need to take the list of dynamic routes OutProc
and in to a DB or static file. Your code then needs to track these files for changes and add new routes when they are added to the external resource.