1. How do you build scalable application using AEM?

caching, modulaity, layers, data vs content., rendering, (cluster pending, common store)

Scalability Handle in AEM/ Web Application


1)Good Capacity Planning –

2)Chossing correct architecture patterns

Service pattern

static vs dynamic

2)Chosing correct deploymnet strategy

For AEM 6/6.1,

Single Tar MK

Tar MK with Cold Standby

Tar MK Farms

Oak Cluster with MongoMK Failover for High Availability in a Single Datacenter

Oak Cluster with MongoMK Failover Across Multiple Datacenters

AEM Community store

Data store separation

3)Integration Types / Design Appraches

Read Scalability

Multi level caching

Type of FEED Integration

  1. a) High Processiong Feed .. Ex- DAM assets renditions processing Solun. Offloading , data store sharing including publish
  2. b) High Volume – Ex .. PIM data sync, soln offloading processing instance, import throttling, batch saves, separate replication queues, Use nt:unstructured, no NAS

High Frequency Input Field – ex.. news feed

  1. c) High Volume and Processing –
  2. cc) High Volume and High Performance Delivery
  3. d) Geographically Distributed Editors – apache mod deflate, dispatcher
  4. e) Many DAM assets – datastore common set up , ex..Amazon S3 for data store

choosing Mk

Tar MK – Performance – Segment Store

Mongo MK – Scalability – Documenet Store

Separate Data store – TAR, FileSys, S3, Mongo,RDB

  1. Various way of achieving Application Deployment For AEM 6/6.1,
    1. Single Tar MK
    2. Tar MK with Cold Standby
    3. Tar MK Farms
    4. Oak Cluster with MongoMK Failover for High Availability in a Single Datacenter
    5. Oak Cluster with MongoMK Failover Across Multiple Datacenters
    6. AEM Community store
    7. Data store separation
  2. Integration with REST, SOAP API
  3. Sling Flow
  4. How OSGI works?
  5. How Sling works?
  6. Servlets in CQ

SlingSafeMethodsServlet, SlingAllMethodsServlet

SlingAllMethodsServlet Helper base class for data modifying Servlets used in Sling.

SlingSafeMethodsServlet Helper base class for read-only Servlets used in Sling.

  1. AEM stalk
  2. OSGI – activate method what it does?

activation, deactivation methods uses component needs to be notified, when it is activated and deactivated. For this, the component may implement an activate method and a deactivate method.

  1. servlet global variable
  2. strutured vs unstruterd content

CRX allows you to store both structured and unstructured data. If you use a strict, pre-defined repository structure, CRX acts like a database. If you use an unstructured repository, you can use it like a file system, and put information of any type at any place in the repository.

The JCR node type nt:unstructured is designed to accept any properties, so you can dump at will strings, dates or even binaries into such a node. This node type is very useful to get started with coding an application when you do not know what the end result should look like. It allows for a development approach coined “data first, structure later” where structure emerges from data, rather than be defined a priori.

On the other end of the spectrum you can have rigidly defined node types. JCR can enforce constraints on data structures according to schema.JCR allows you to specify e.g. mandatory properties, default values or the allowed child node types in a node hierarchy. The Apache Jackrabbit site has a good overview of the Compact Namespace and Node Type Definition which is a notation used to define such structure.

  1. jcr single property node vs multiple property node

In some cases, a property may have more than one value. A property that may have more than one value is referred to as a multi-valued property (regardless of whether it currently has one or more than one value).

Whether a particular property is a multi-valued property is governed by the property definition applicable to it, which is determined by the node type of the property’s parent node.

The values within a multi-valued property are ordered.

Accessing the values of such a property is done with the method Property.getValues, which returns an array of Value objects that contains the values in their prescribed order.

Accessing a multi-valued property with Property.getValue, or a single-value property with Property.getValues will throw a ValueFormatException.

The values stored within a multi-valued property are all of the same type.

  • SEO Techniques
  • Create unique accurate Page Title
  • Metatag
  • 3.Headings
  • 4.Domain Nmae
  • 5.Site Structure
  • 6.Site Map
  • URL Structure
  • Indexable content – Img should have alt, applet, flash with text desc in html
  • Keyword usage and target
  • 10.404 page
  • 11.Effectoieve use robots.txt
  • 12.Image optimization – alt, separate directory, JPEG or supported type in extn, noscript for resposnive image,
  • video optimization – crawlable
  1. Integrate Component with Webservices
  2. Tag api handling – how it is used pages
  3. faceted search in CQ
  4. servlets mapping in cq, same servlet for many other work
  5. UGC
  6. localization using cq
  7. Dynamic data integration with CQ component
  8. Heading Label globalization
  9. MSM – how it works
  10. AEM with Spring Services Integration
  11. complete tech flow ecomm with CQ
  12. dynamic web service integration with AEM component various options
  13. workflow set up – customized set up
  14. dynamic web service data integration with component
  15. salesforce integration
  16. SAML, SSO, Oauth in CQ
  17. AEM 6 vs 6.1 Features

31.AEM Project challenges and risks

1) Monolithic
2) Licesne cost
3) Integration with Non Java tech
4) ecommerce full fledged appl
5) Maintaining cost – migration
32. Why AEM
1) Full Fledged Products for entire marketing business
2) Marketing Cloud Tech
3) Built on top of open source tech
4) Business Agility –
5, OOB, Marketing cloud
33. Learning
1) Careful evaluation & Suitable Architecture
2) Monolithic architecture – This one need careful scalable and perform, householding activity
3) Continuos version chnage need proper plan
4) Stability issue – some fea, session management
5) Need Product knowledge – Sync up


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s