The general thumb rule is MongoMK provides better
scalability and TarMK provides better performance. But most applications requires both scalability and performance.
The detailed analysis for Author & Publish instances as
per the Adobe recommended metrics is
Author Environment
Metrics comparison against the criteria to validate if
MongoMK would be the suitable option for an application is in the below table
Metric
|
Criteria
|
Dotcom Requirement
|
In favor of MongoMK
|
Number of named users connected in a day
|
In the thousands or more
|
Less than 1000
|
No
|
Number of concurrent users
|
In the hundreds or more
|
100 concurrent users
|
Maybe
|
Volume of asset ingestions per day
|
In hundreds of thousands or more
|
About 1000’s of assets ingested per day during the peak
|
No
|
Volume of page edits per day
|
In hundreds of thousands or more (including automated updates via
Multi Site Manager or news feed ingestions for example)
|
No automated updates, will have about 1000’s of page edits during the
pack
|
No
|
Volume of searches per day
|
In tens of thousands or more
|
May have tens of thousands of searches during the peak
|
May be
|
Other
points on MongoMK for Authoring Environment
·
Scalability – MongoMK provides the ability to have
multiple AEM instances share the same MongoDB instance. This shared all
clustering approach enables horizontal scalability of AEM instances, adding
additional AEM nodes as the load increases
·
Replication – MongoMK reduces the overhead of
replication; it effectively delegates replication functionality to the MongoDB,
which has mature model to maintain replica sets. Also the no. of MongoDB
replicas and AEM instances can be scaled independently
·
Distributed Authoring teams – MongoMK helps when
we have distributed authoring teams spread across geographies. Content changes
done by all authors gets persisted to the same primary MongoDB instance and
gets replicated to the secondary replica sets
·
Automated Recovery – MongoDB replica sets and
automated failover helps with automated system recovery when the primary
MongoDB instance goes down or in case of the whole data center failure; never
the less TarMK also provides the option for setting up automated recovery
Recommended
Option for Authoring Environment
The choice of MongoMK or TarMK for authoring
instance can be based on no. of AEM instances required in authoring
environment, in line with Adobe recomendation.
·
If more than 1 active AEM instance is needed for
Authoring environment – MongoMK
·
If the volume can be handled with 1 active AEM
instance - TarMK
Publish
Instance
The thumb rule for considering if MongoMK is a choice for
publish instance is if publish instance is required to support user generated
content.
Other
points on MongoMK for Publish Environment
Code releases – When releasing code changes to production
for an application, we will have to release it to one data center, validate the release
and then release it to the other data center. This sometimes is a mandatory requirement
to ensure 24/7 availability. Such rolling release is well supported by TarMK.
With MongoMK, code release gets replicated to all MongoDB replica’s making the
isolated release to one data center difficult.
AEM Upgrades – Applying patches and release upgrades to AEM
also requires rolling releases which is well supported by TarMK because of
their shared nothing clustering approach
Horizontal scalability – Both TarMK and MongoMK supports
horizontal scalability for publish instance. With TarMK, we can have a form of
independent shared nothing AEM instances, which are kept in sync by
replication.