Anda di halaman 1dari 36

© 2009 Optaros, Inc. All rights reserved.

1
Why a Magento Deployments eBook?

We continually hear misconceptions about Magento from


organizations considering it as an ecommerce platform option.

Through our many Magento deployments we have first-hand


knowledge of what is and is not possible with Magento, and will
address a number of the misconceptions here.
Common misperceptions of Magento

Many of the misperceptions We will address each of


fall into the following them in the following
categories: sections:

• Magento websites are not • Design & User Experience


very compelling

• Magento cannot scale • Improving Magento


Performance
• Magento does not integrate • Integration with Existing
well with other systems Systems

© 2009 Optaros, Inc. All rights reserved. 3


Design & User Experience

IT generally loves open source software, but the marketing folks


want to make sure the design of the site is compelling, brand
relevant and incorporates ecommerce best practices.

Following are some best practices in ecommerce and design,


and how to achieve them with Magento.
Design & User Experience

Home Page

Often the home page will be the first place consumers have a true
interaction with your brand online. Carefully consider the emotions it
conveys to site visitors. Think about the big picture — how do
design, features and functionality, and content interact to
differentiate your brand?

Help your visitors answer the question, “Does this brand reflect who I
am?” (This is particularly important for luxury and premium brands.)

© 2009 Optaros, Inc. All rights reserved. 5


Design & User Experience

Home Page (Con’t.)

For example, for one client,


36Boutiques, we customized
the standard Magento
homepage layout with a large
background graphic, which
was written into the
administrative controls.

This way, depending upon the season, upcoming events or designers to


be featured, the company can easily change the graphic — keeping the
site fresh, and giving visitors an appropriate welcome.

© 2009 Optaros, Inc. All rights reserved. 6


Design & User Experience

Category Pages & Navigation

Making minor tweaks to the existing Magento framework for category


pages — those listing different options for a particular kind of item —
can make your site stand out from the crowd due to its unique
layout.

This kind of development doesn’t require heavy coding; rather you


need a creative design team, and the ability to restructure and stylize
elements of the page.

© 2009 Optaros, Inc. All rights reserved. 7


Design & User Experience

Category Pages & Navigation (Con’t.)

For example, again looking at 36Boutiques, we can see the difference


between a standard page layout in Magento, and that which we
created for this private-event retailer to make current sale events more
prominent, while still outlining upcoming events as well.

© 2009 Optaros, Inc. All rights reserved. 8


Design & User Experience

Category Pages & Navigation (Con’t.)

The same concept applies to site navigation — Magento’s out-of-the-


box navigation may not match the focus of the site.

Consider if standard navigation is what makes the most sense for your
site. In many cases, a custom navigation is more appropriate and
can have a significant impact in leading customers through the buying
process.

© 2009 Optaros, Inc. All rights reserved. 9


Design & User Experience

Product Detail Pages

Though your home page may be the main doorway for many visitors,
it’s important to also understand that — due to search engines and
social networking sites — websites can no longer be seen as
hierarchical. Instead, visitors can enter your site from any page, even
one very low on your standard navigation.

For this reason, every page in your website has to be able to stand
alone. Product pages are no longer the end of a navigation process
throughout your site — they are self-sufficient, optimized units
that must portray your brand ideal immediately.

© 2009 Optaros, Inc. All rights reserved. 10


Design & User Experience

Product Detail Pages (Con’t.)

Some current best practices for


giving visitors a more meaningful
experience within product pages
include: featuring video, consumer
reviews and blog posts, and
offering multiple pictures, zoom
and 360-degree rotation.

The screenshot here shows a product detail page from 36Boutiques,


showcasing multiple product photos that can be scrolled across. This is
an update to standard Magento processes, which load a new page to
view additional product photos.

© 2009 Optaros, Inc. All rights reserved. 11


Design & User Experience

Personalized
Navigation

A site’s organizational
structure won’t always
align with people's
immediate needs.
Personalized
navigation offers a
consistent “home,”
as a footer
customized for that
particular visitor,
that features
information such as
their site profile, wish
list, cart, visual order
history, and groups.

(Image source: www.charlotterusse.com)

© 2009 Optaros, Inc. All rights reserved. 12


Design & User Experience

One-Page Checkout

Out of the box, Magento offers a standard two-page checkout process:


• Page one - cart information
• Page two - checkout information

By reengineering this process to create a one-page, two-column


checkout — with cart information on one side and billing/shipping
information on the other — retailers can decrease cart
abandonment significantly.

© 2009 Optaros, Inc. All rights reserved. 13


Design & User Experience

One-Page Checkout (Con’t.)

For example, one-page checkouts like the one below see a cart
abandonment rate of only 40-45% (20% less than the industry
average of 60-65%).

© 2009 Optaros, Inc. All rights reserved. 14


Design & User Experience

Quick-View Modals

Using quick-view modals


rather than loading new
pages when customers
are looking to perform a
simple task — such as
inviting a friend to the site,
sharing an item on Facebook
or viewing product details — helps keep site visitors in their
shopping experience, rather than navigating them across the site.

Magento does not support quick-view modals out of the box. We


generate quick-view modals for our clients via AJAX requests.

(Image source: www.gap.com)

© 2009 Optaros, Inc. All rights reserved. 15


Improving Magento Speed & Performance

Many companies assume that Magento will not scale to meet their
needs. This is based either on FUD (Fear, Uncertainty & Doubt) on
the part of threatened closed-source vendors, or from falsely
assuming that Magento out of the box is the only option.
We’ve deployed Magento at significant scale for many clients,
and will share a few of our secrets here.
Improving Magento Speed & Performance

Magento Scalability by the Numbers

Sample statistics of live Magento sites we have deployed:


• 5 million monthly unique visitors
• 2,000 page views/second
• 15 add-to-carts/second
• 3 orders/second
• $200 million in annual revenue

In this section we will discuss some of the ways in which we have


achieved these results.

© 2009 Optaros, Inc. All rights reserved. 17


Improving Magento Speed & Performance

Strip Out Unnecessary Functions

Split the “browse” part of the application off to cache


separately.

We used our own proprietary caching system wrapper that sits outside
of Magento and intercepts requests, and keeps them from going
through Magento unless it is necessary.

© 2009 Optaros, Inc. All rights reserved. 18


Improving Magento Speed & Performance

Strip Out Unnecessary Functions (Con’t.)

Trimmed down the add-to-cart and order pipeline


functionalities.

In order to process high-volume orders quickly, we removed bits of


code from Magento’s standard add-to-cart and order processes so that
shoppers only see options to fill in the attributes that pertain to their
order.

We also stripped out several modules that auto-fire on most Magento-


based ecommerce sites, thus delaying order calculations until
necessary.

© 2009 Optaros, Inc. All rights reserved. 19


Improving Magento Speed & Performance

Strip Out Unnecessary Functions (Con’t.)

Rewrote the checkout process.

To increase checkout speed and decrease cart abandonment, we


rewrote Magento’s checkout process to offer a one-page checkout.
With this simplified design, users can enter their personal shipping and
billing information in fewer steps, thus increasing sales.

© 2009 Optaros, Inc. All rights reserved. 20


Improving Magento Speed & Performance

Use a CDN (Content Delivery Network)

80% of the page load time is spent downloading all the components of
the page, such as: images, stylesheets, scripts and more. Think about
the impact that speeding this process could have on your overall site
speed!

One way to speed this process is to deliver content from servers


that are geographically closer to the site visitor, and a content
delivery network (CDN) can help you do just that.

© 2009 Optaros, Inc. All rights reserved. 21


Improving Magento Speed & Performance

Use a CDN (Con’t.)

Essentially, CDNs enable you to offload your static content — assets


that do not require the rendering of code, for example: images, CSS
files and java script files — to a series of geographically dispersed
servers.

For example, in one client engagement, we built a content-driven


ecommerce site using Magento, and integrated CDN along with full-
page caching. This drastically improved page load time, even for
those with large amounts of content and rich media assets
(particularly, in this case, videos).

© 2009 Optaros, Inc. All rights reserved. 22


Improving Magento Speed & Performance

Use a CDN (Con’t.)

While there are some Magento modules available that facilitate


integration with a CDN, these require software modifications,
additional configuration and testing.

In some cases, such as for the client mentioned above, total site
caching in a preferred option. This directs all non-secure traffic to
the CDN so it acts as a site proxy — serving cached content and
passing through requests for dynamic content to our Magento front-
end servers.

© 2009 Optaros, Inc. All rights reserved. 23


Improving Magento Speed & Performance

Cloud Computing

Many companies are looking for Magento-as-a-Service, and are


interested in leveraging cloud computing to auto-scale, in
order to meet spiky ecommerce demand.

We’ve deployed several Magento sites for clients on the Amazon


Elastic Compute Cloud (EC2). Following are some of the best
practices we’ve learned in using EC2 for Magento.

© 2009 Optaros, Inc. All rights reserved. 24


Improving Magento Speed & Performance

Cloud Computing

Use c1.medium for CPU. After testing several instances for


homepages and carts, it seems that a standard option that gets good
value for your money is c1.medium, which can handle approximately
1,500 customers per hour.

Use a reverse proxy or light http server for serving static


content — such as images, CSS and other media — or a CDN if your
customers are spread out geographically.

Cache product catalog views, at least for anonymous users


(typically 90% of site visitors). Magento Full Page Cache or reverse
proxies (i.e. Varnish) can help with this. However, if most of your
customers are logged in, you likely need to develop some custom
caching (i.e. AJAX, server side includes, etc.). This will improve site
performance for end users dramatically.

© 2009 Optaros, Inc. All rights reserved. 25


Improving Magento Speed & Performance

Cloud Computing

Scale horizontally by adding servers. This will allow your site to


cope with peaks of traffic — an expected occurrence in ecommerce due
to busy times such as evenings, holidays and large-sale events. To
forecast traffic ebbs and flows as accurately as possible, a fully
automated provisioning process of servers that records visitor behavior
by the minute is ideal.

Plan for disaster. Servers can fail at any time on the cloud, and do so
at a higher frequency than on traditional hardware. Reduce the number
of SPOFs (single points of failure), and automate recovery procedures.
Actively monitor server performance to avoid server failures. If a
customer can’t access the site when they want to make a purchase,
they may go to a competitor instead.

© 2009 Optaros, Inc. All rights reserved. 26


Improving Magento Speed & Performance

Cloud Computing

Share Magento back-end cache between all servers to avoid


inconsistencies. A mix of memcached (fast cache) and MySQL (slow
cache) is the optimal setup, particularly if visitor sessions need to be
shared between servers.

Tune the database to best practices. However, this is surprisingly


not a major bottleneck in regard to performance and scaling. If
databases become an issue, you can split read-write traffic, or even
scale vertically, with only a short interruption of service.

Centralize or proxy-out your communications from a single


server. This often involves integration with back-office systems like
static IP for firewalling.

Rely on infrastructure value-added services — such as S3, ELB,


EBS, SQS, Monitoring and Rightscale — to reduce your operational
cost.

© 2009 Optaros, Inc. All rights reserved. 27


Integration with Existing Systems

Magento is an open platform that follows standards-based


approaches to integration. The community of third-party integration
software has also written adapters to Magento that can ease
integration requirements.
Following, we share the most common integration requests, as
well as our approach.
Integration with Existing Systems

Common Integration Requests

• Sending Orders to Order Management System or Drop Shipper,


for robust order management processing.
• Inventory updates from Inventory Master/ERP, providing
customers with accurate stock information online (an ideal way to
increase customer satisfaction and revenue).
• Receiving order and ship status from Order Management
System, allowing customers want to sign in and track their order
status.
• Customer account creation or and updates to CRM, offering a
360-degree view of customers for better multi-channel experiences.
• Export to Business Intelligence (catalog, order, customer),
providing real user data that can be tied to campaigns, used by R&D
and more.

© 2009 Optaros, Inc. All rights reserved. 29


Integration with Existing Systems

Tip #1: Have a master platform for business processes


supported by distributed systems.

Each of your business entities (quote, order, customer, product, stock,


etc.) should be “owned” by a single system at any given time. Other
systems should go through the master, and accept that their local copy
might be overruled.

Maintaining this clear model and chain of command simplifies a


huge amount of standard integration pains. Multi-master models
are for more difficult to handle in distributed environments.

© 2009 Optaros, Inc. All rights reserved. 30


Integration with Existing Systems

Tip #2: Use systems that can support the real-time


nature of the web.

You can’t typically rely on ERP or WMS to reach ecommerce SLAs in


real time.

For this reason, you shouldn’t build any synchronous connectivity to


ERP or WMS systems, unless you also have a very efficient fallback
mode that can provide acceptable functionality when the traffic on your
website is high, or your inventory system is unreachable.

© 2009 Optaros, Inc. All rights reserved. 31


Integration with Existing Systems

Tip #3: Multi-channel adds to the complexity; consider


the complete customer experience.

Think about all the different ways in which your customers interact
with and order from your company, and how they will integrate with
the ecommerce experience.

For example: How will orders placed by phone be managed? Will they
integrate back with online order tracking? What is the management
process for orders placed online to be picked up in store?

© 2009 Optaros, Inc. All rights reserved. 32


Integration with Existing Systems

Tip #4: There are few widely adopted standards;


determine your integration approach carefully.

EDI (electronic data interchange), OAGI (Open Applications Group) and


UBL (universal business language) all offer good bases to standardize
processes and messages, but all are somewhat complex to put in
place, while none are yet widely adopted. They are also limited to only
a subset of what modern ecommerce platforms need.

Finding the best way to make your multiple systems “talk” with one
another may be a lengthy process in itself.

© 2009 Optaros, Inc. All rights reserved. 33


Integration with Existing Systems

Tip #5: Understand compliance requirements.

Some integrations may be required to meet specific compliance


standards. For example, payments made with credit cards need to
follow PCI DSS (Payment Card Industry Data Security Standards)
regulations.

Other things to consider include: the transfer of customer data


between countries, and even industry-specific regulations (such as
HIPAA for those in healthcare).

© 2009 Optaros, Inc. All rights reserved. 34


Integration with Existing Systems

Tip #6: Focus on Effective Data Migration.

How can you effectively transfer customer data from one system to
another? Manual transfer is a tedious and time-intensive task,
especially when data differs across systems.

One way around this is to use cloud-based integration software, such


as that offered by our partner Boomi, to help ease data transfer. For
example, this can export customer data inputted in an online order
form directly to your CRM system.

© 2009 Optaros, Inc. All rights reserved. 35


Conclusion

Hopefully this eBook helped address some of your questions. If there


are other questions you would like to discuss, please reach out to us at
www.optaros.com or contact me at mosofsky@optaros.com

Marc Osofsky, VP Marketing

You can also follow us on Twitter, Facebook, LinkedIn or our Blog to let
us know your thoughts.

Anda mungkin juga menyukai