If I were asking this question I would mean this:
If I have some number of empirical CDF's, but not the raw data that generated them, and I want to make what would the CDF have been from the entire aggregate of the data, how would I go about doing it.
My approach would be:
Regenerate the data from the CDF's, and knowledge of how many elements were in each subset of my intended set. If I knew that I had 100 elements in an individual set, then I would determine a set of 100 elements such that they would generate that element CDF. I would iterate this over all sub-CDF to compose an equivalent total data, then compute the CDF on it.
If you don't know the relative memberships of the sub-CDF's then this doesn't work.
- What are the unknowns?
- What are the knowns?
- What application do you want to apply this answer to?
If you record the total number of requests at the server then the following might work:
for each server
for each value in the eCDF starting at lowest frequency and moving up
compute the number of times that value happened
multiply minimum frequency by totalrequests(server)
pass that as output number and the domain value as that number as outputs
subtract that number from all future estimates
append that number of duplicates to variable "biglist"
compute eCDF of biglist
find value at desired percentile value
This will work. It is not necessarily compute-time optimal, but in general computers are insanely fast so being clear and easy to program/debug could be measure of goodness.
For example, if you have CDF frequencies of [0.2 0.4 0.6 0.8, 1.0] for domain values of [0, 2, 3, 4, 6] and know that there were only 5 samples, you would determine the "outputs" to append to "biglist" as follows:
first pass through loop:
pop the lowest number off the list: 0.2
multiply by the count: 0.2 * 5 = 1
you pass "1" and "0" as outputs so that one occurrence of 0 is appended to biglist
you subtract 1 from all future passed values
second pass through loop:
pop the lowest number off the list: 0.4
multiply by the count: 0.4* 5 = 2
subtract the offset from it: 2 - 1 = 1
pass that count and the domain to be appended to biglist
you now subtract 2 from all future passed values
At this point your biglist contains [0, 2].
third pass through loop:
pop the lowest number off: 0.6
mult by count: 0.6*5 = 3
subtract the offset from it: 3 - 2 = 1
pass outputs for biglist: 
add this count to the offset: 2 + 1 = 3
By inspection you can see that in the center this looks like a top-hat and at the edges there are more triangular distributions.
At the end you have a list of [0 2 3 4 6] from which to make an empirical CDF. You now go to your next sub-eCDF and process similarly to append to this list. After having processed all lists, you then make your overall eCDF.