Almost fine with me. But it seems that the alternatives don't represent alternatives. @mehlis correct me if my understanding is wrong.

If the command "populate" fills only the cache, then this is not content publishing.
Better: "publishing content: To distribute content within the network, the publisher needs to (1) .... (2) ..."

Replace "start a server application" by "start the application 'appserver', which creates a thread to answer ..."