Successfully reported this slideshow.

Optaros best practices_magento_deployments_e_book


Published on

  • Be the first to comment

Optaros best practices_magento_deployments_e_book

  1. 1. © 2009 Optaros, Inc. All rights reserved. 1
  2. 2. 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.
  3. 3. 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
  4. 4. 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.
  5. 5. 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
  6. 6. 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
  7. 7. 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
  8. 8. 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
  9. 9. 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
  10. 10. 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
  11. 11. 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
  12. 12. 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: © 2009 Optaros, Inc. All rights reserved. 12
  13. 13. 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
  14. 14. 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
  15. 15. 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: © 2009 Optaros, Inc. All rights reserved. 15
  16. 16. 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.
  17. 17. 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
  18. 18. 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
  19. 19. 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
  20. 20. 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
  21. 21. 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
  22. 22. 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
  23. 23. 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
  24. 24. 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
  25. 25. 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
  26. 26. 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
  27. 27. 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
  28. 28. 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.
  29. 29. 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
  30. 30. 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
  31. 31. 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
  32. 32. 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
  33. 33. 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
  34. 34. 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
  35. 35. 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
  36. 36. 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 or contact me at Marc Osofsky, VP Marketing You can also follow us on Twitter, Facebook, LinkedIn or our Blog to let us know your thoughts.