Topics are a way to organize your workflows in Zeebe. Each topic has independent processing of workflows and workflow instances (e.g. versioning). This concept may also become more important when we implement a solution for event handling, but that’s still far ahead. Using a single topic is perfectly fine. Up to this release, Zeebe always created a topic named
default-topic. This is now no longer the case but the command line client (or Java or Go client) must be used to create a topic before any workflows can be deployed.
With the command line client, you can inspect all currently known topics and partitions via
zbctl describe topology. In the Java client, you have
ZeebeClient#requestTopology. However, these methods are not guaranteed to provide a globally consistent response (in case of a Zeebe cluster with more than one node), so I think we should have another API method to inspect exactly that (see issue https://github.com/zeebe-io/zeebe/issues/530).