merlimat commented on a change in pull request #574: Documentation changes
URL: https://github.com/apache/incubator-pulsar/pull/574#discussion_r129221412
 
 

 ##########
 File path: site/_includes/explanations/partitioned-topics.md
 ##########
 @@ -1,19 +1,31 @@
-Normal topics can be served only by a single {% popover broker %}, which 
limits the topic's maximum throughput. *Partitioned topics* are a special type 
of topic that can span multiple brokers and thus allow for much higher 
throughput.
+Normal topics can be served only by a single {% popover broker %}, which 
limits the topic's maximum throughput. *Partitioned topics* are a special type 
of topic that be handled by multiple brokers, which allows for much higher 
throughput.
 
-Behind the scenes, a partitioned topic is actually implemented as N internal 
topics, where N is the number of partitions. There is no difference between 
partitioned topics and other normal topics in terms of how subscription modes 
work.
+Behind the scenes, a partitioned topic is actually implemented as N internal 
topics, where N is the number of partitions. When publishing messages to a 
partitioned topic, each message is routed to one of several brokers. The 
distribution of partitions across brokers is handled automatically by Pulsar.
+
+The diagram below illustrates this:
+
+![Partitioned Topic](/img/pulsar_partitioned_topic.jpg)
+
+Here, the topic **T1** has five partitions (**P0** through **P4**) split 
across three brokers. Because there are more partitions than brokers, two 
brokers handle two partitions a piece, while the third handles only one (again, 
Pulsar handles this distribution of partitions automatically).
+
+Messages for this topic are broadcast to two {% popover consumers %}. The 
[routing mode](#routing-modes) determines both which broker handles each 
partition, while the [subscription 
mode](../../getting-started/ConceptsAndArchitecture#subscription-modes) 
determines which messages go to which consumers.
+
+Decisions about routing and subscription modes can be made separately in most 
cases. Throughput concerns should guide partitioning/routing decisions while 
subscription decisions should be guided by application semantics.
+
+There is no difference between partitioned topics and normal topics in terms 
of how subscription modes work, as partitioning only determines what happens 
between when a message is published by a {% popover producer %} and processed 
and {% popover acknowledged %} by a {% popover consumer %}.
 
 Partitioned topics need to be explicitly created via the [admin 
API](../../admin/AdminInterface). The number of partitions can be specified 
when creating the topic.
 
-The diagram below illustrates this:
+#### Routing modes
 
-![Partitioned Topic]({{ site.baseurl }}img/pulsar_partitioned_topic.jpg)
+When publishing to partitioned topics, you must specify a *routing mode*. The 
routing mode determines which partition---that is, which internal topic---each 
message should be published to.
 
 Review comment:
   > ... you must specify... 
   
   Actually, you don't have to explicitly chose one, because the default would 
be to use the "Single default partition"
 
----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
 
For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


With regards,
Apache Git Services

Reply via email to