MageMojo Blog


  • Meet Magento Romania Recap

    Little did I know when I was invited to speak at MM19RO that it was the 6th Meet Magento event in Romania!  This was my first trip to the country and I was excited to visit the capital city, as well as meet with the Blugento team once again. With 5 years of experience and an extensive network in the region, I was sure this would be an event to remember.

    MMRO was previously held in Cluj-Napoca, Blugento's home base, and this was the first time the event took place in Bucharest. The Sheraton provided a lovely venue with great speaking rooms for both the tech and business tracks. 

    I have to admit, I spent more time at the technical track once I heard Anton Kril of Magento give the most entertaining, deeply technical talk I have ever heard. I am not sure anyone else can place such an amusing spin on the evolution of the Magento API.

    I’m glad I attended Jonathan Roeder’s talk as well, that demystified the role of a principal scientist at Magento. Now, my world is coded in terms of what are cats and what are not cats :) Guess you will have to find the video to understand... ;)

    Adrian Balcan's talk - “Taking VSF from Local Env to K8S Production & Operations” was certainly one not to be missed.

    Igor Miniailo, as usual, did not disappoint. His talks usually feel like opening a floodgate of great info! I heard him speak less than a week before MMRO, but he managed to give yet another amazing talk, “The long way from Monolith to Service Isolated Architecture.” I also managed to discover another of Igor’s skills and passions later that night at dinner: dancing! No, I am not joking, he is a great dancer!

    Lunch at the event was one of the best I have seen at a Meet Magento event and the Ziband (with members from the company Zitec!) concluded Day 1 with an amazing rock performance.  What’s more, we got to hear Ben Marks on drums which is a rare treat. I learned that a drummer needs to be invited to use another drummer’s sticks!

    Day 2 was well attended and the audience was extremely responsive. One of the things that stands out for me is that Blugento pulls off an amazing event, and is incredibly collaborative and helpful to other event organizers. I loved that Vlad Stanescu conducted interviews with speakers. I am looking forward to listening in once they are published!

    I hoped I’d have the chance to meet Thomas Fleck, one of the founders of the Meet Magento Association, but I guess I will just have to go back next year. 

    Bucharest was easy to navigate and accommodation and meals were fairly inexpensive. I was glad to have a day to explore the city. Even though lots of the amazing architecture had been destroyed through history, it was still exciting to find those which were not. We also found one of the most impressive bookstores around!

    The Blugento team was kind enough to host drinks with speakers which offered great one on one time with some locals whom I had not spent much time with previously...except on social media of course :) Marius Strajeru and Remus Lucut stand out in my mind and will certainly be lifelong friends. I had previously met Vlad Stanescu at Imagine and he has been really helpful to Meet Magento organizers. As a follow-up, I was touched that they all made time to come find me at the end of Magento Live Europe to say goodbye before heading home. This is why I love this community!

    -Marsha Naidoo

  • Load In The Loop: Episode 1 -

    Load In the Loop: Episode 1 is here! Join Eric Hileman and Ivan Chepurnyi as they identify and fix some performance issues for

    Follow us on Twitter! @loadintheloop

    Access the git commit here.

    Sponsorship provided by blackfire


    Continue reading

  • What Are GA Sessions?

    And how are they used to calculate billing?

    As a Stratus client, you know that your monthly billing is a calculation of Plan Rate plus any overage on Sessions. For example, if you're on the Stratus Pro plan for $298/month, you have 25,000 "Included Sessions." Additional sessions are billed at 0.475¢ per session.

    But what constitutes a "session?" This question comes up often, especially with new clients receiving their first bill with any session overages.

    What is a Session?

    According to Google, a Session "is a group of user interactions with your website that take place within a given time frame." For Google's purposes, a session is a map of a user's interaction with your website during that user's visit to your online store. A user may make several online "trips" to your store, though Google counts all page visits that occur within a set time frame as one session.

    Let's take an example. By default, a Google Session is 30 minutes. All pages visited by a user that occur within 30 minutes of one another constitutes a single session. If User A visits your home page, then, within 30 minutes, visits your About Us page, those two "hits" are part of the same session.

    Google will also create a new session for the same user under two additional situations: at midnight and if the user comes to your site via some other marketing campaign. For example, if User B find your site linked on a blog, then — even 5 minutes later — clicks on an ad you're running in Google, these two interactions would be counted as two sessions.

    You can set the length of a session at whatever period of time you wish. Session length can affect a lot of data points, including Bounce Rate, Return Visits and many, many more. However, the greatest impact can be on your hosting costs, which we'll cover in just a moment.

    Despite any cost implications, your session length should reflect how users interact with your site. If you notice that your "Returning Users" percentage is high, this could indicate that user may be visiting your site, then taking some time to deliberate before making a purchase. Having a longer session time might be in order. On the other hand, being able to identify returning users in order to craft special offers and incentives based on this behavior suggests that you should keep the session length shorter.

    If in doubt, leave the session length at the Google default until you get enough metrics — and analysis — to justify a change. There's a very good reason (known only to Google) for the 30 minute default.

    Why Use Google Sessions?

    Since the very beginning of hosting websites, providers who based pricing on traffic generally use data they collected in web server log files. This actually gave the client — you — little control over how the data was collected, measured or used. And it was often times suspect due to collection of traffic from "bots" and other non-user traffic.

    How Can Session Count Be Managed?

    When we created Stratus, we knew we needed not only an impartial third-party for data, but we wanted to give our clients more control over the data collected. For instance, you, as a store owner, should not have sessions counted that are:

    • From your own computers
    • From traffic outside the countries you serve
    • From indexing "bots"
    • Adjusting session length

    To filter sessions from your own computers, use the Filter tool in Google Analytics. There's really no need to count your own sessions.

    Second, in your Stratus Control Panel, you can easily de-select the countries to which you do not market or deliver. This prevents your store from being seen (and sessions counted) from users in those countries.

    Third, make sure you have selected for Google to "Exclude all hits from known bots and spiders" in your View Settings in analytics.

    Finally, if your session length is too short, you may be paying for multiple sessions by the same user. Alternatively, if your session length is too long, you're not accurately capturing user interactions in a way that could be useful for marketing and analysis.

    If, after making these adjustments, you are still finding your Google Sessions higher than you expect, it may be wise to have your developer or a consultant knowledgeable in converting web traffic help you identify how your site may not be maximizing the traffic you're getting. You might also find through further analysis that you're attracting poor traffic through bad backlinks or referrals.

    The important thing to remember is that MageMojo enables you to control your spending. We only want you to get good, converting traffic as well.

  • Intel MDS Vulnerability - How It Affected AWS and Us

    Over the last couple months Mojo Stratus has suffered from random reboots of EC2 instances. The problem was due to the latest Intel vulnerabilities known collectively as MDS (also ZombieLoad).  Intel made AWS aware of the vuln's before the public.  AWS released patches.  The patches caused random reboots on their instances - more often on containerized workloads.  AWS was under embargo from Intel.  They couldn't tell us what was going on.  Once the information was released publicly 2 weeks ago AWS was able to tell us.  At that point we built a new kernel image rolling back their patch and taking an alternative approach.  All of Stratus in North Virginia was updated as of Sunday May 26th.  We have not had any reboots since.  AWS is still in progress of releasing an error free patch.  Until then we will continue running the alt workaround.
  • MagentoLive Australia 2019 Highlights

    Nineteen hours of flying you say? Yes please, especially when that means exchanging the polar vortex and shoveling my driveway for 25C, the beautiful Darling Harbour, and the pleasure of attending Magento Live Australia 2019! What a great chance to catch up with the movers and shakers of the Magento world in the Asia Pacific region.

    We invited all MLAU guests to a happy hour the night before the event. Research was necessary in order to find the perfect location! After a picturesque walk around Darling Harbour scouting out locations, we found ourselves at a lovely outdoor location right next to the ICC. Of course, we needed to sample the menu and were intrigued by this location that featured a Campari bar! We had an amazing team building session at Fratelli Fresh assisted by some of the best negronis ever. Great happy hour, if you’re ever in the area!

    We returned the day after to welcome our happy hour guests. We finally got to buy Ben Marks a negroni (long story) and he was not a fan :) He politely nursed it until we rescued him with a beer.  The Paypal team was amazing and stopped by before their own team building. Always great to see them. Those amazing negronis, beer, wine, and great company made it a success and we ended happy, full and ready for MLAU!

    MageMojo Happy Hour

    Bright and early the next morning we headed over to the ICC for day one of MLAU19. Let me say it now – the food was great! Truffled eggs in a breakfast burrito and plenty of good, strong coffee – just the thing to fight off jet lag and get things started on the right foot.

    We made sure to attend Paypal’s panel on Closing the Mobile Revenue Gap – a huge issue in ecommerce and we’re certainly doing our part to make sure your site loads as fast as hell. As always, Rob Long hosted a stellar panel with experts like Zee Aganovic, James Horne, and Alana Fennessy.

    We have to admit that we mostly attended technical talks – go figure, we’re a bunch of geeks! Big standouts were Anton Kril’s talk where he managed to not accidentally deprecate anything (maybe) and Alex Paliarush’s talk on the ever-improving graphQL support in Magento. Of course, PWA was a hot topic – Magento’s PWA studio has just been released, and sites that can move to PWA promise to have many advantages over those who don’t! Blake Morgan and Carolyn Breeze (Braintree)  lit up the stage with engaging talks on customer success and the future of payments. Delighted that we had the unique opportunity of chatting with Carolyn later that evening and yes Carolyn we are waiting for your submission to Meet Magento New York 2019! :)

    After a long first day, we were ready to party! We headed down the harbor side to the official after-party. What a blast!

    Afterparty food

    Two things really stood out. There was a photo booth that took synchronized pictures from a bunch of cameras and combined them into cool hologram-like printed pictures – rotating the picture changes the angle of the photo you see. The coolest thing by far was the DJ table. It was a lighted table with a bunch of small tiles around the edge, each with a unique QR code. Placing a tile on the table would alter the music being played at that moment – add or remove a bass line, drum line, melody, etc. Moving the tile on the table would change pitch and volume and raising all the central tiles at once would stop all of the music! It was really intriguing to play with different combinations and figure out how it worked!

    This particular team seemed to hog the DJ booth :)

    PayPal DJs Rachel Campagnolo and Rob Long

    Great fun hanging out with everyone there, and of course, the end of the after party is never the end!  Next up, the after-after-party at the Pyrmont Bridge Hotel bar (aka PBH) open 24hrs! No more needs to be said!

    Next morning we were ready for day two – with a very healthy infusion of strong coffee! Thank you, Magento for professional coffee makers!

    One of the highlights on day two was the dev exchange. This was set up as round table discussions, each with a specific topic, and a moderator (usually from Magento) to help spur conversation and answer questions. We attended both the devbox and the Magento Association/event organizing discussions (two subjects near and dear to our hearts). We enjoyed this chance to freely trade ideas with attendees interested in the topic at hand.

    We arrived in Australia with some awesome Mojo Stratus branded headphones that we were dying to give away. We encouraged guests to enter the draw and as the event drew to a close it was time to pick a lucky winner. A random draw came up with Andrew Beale as the lucky winner. Luckily he was still at the event. The headphones surely served him well on his trip home. Look out for the MageMojo team at your next event, you may be lucky enough to snag one of these!

    Sadly, it was all too soon time for us to take the long, long flight back home to winter! We packed our bags with Timtams and Vegemite and headed to the airport. We had just gotten to love the expression “How ya going?” and who knew Jennifer Garcia is a DJ at heart! We look forward to our next expedition down under – and to Imagine 2019!

  • MHM Dedicated Plans Ending - Increased Performance w/ Stratus Cloud

    We’ve made the difficult decision to shut down our dedicated server plans on March 1, 2019. As you may know, we have not offered dedicated server plans since last year. While we understand the impact this will have on our customers, shutting down these plans will allow us to focus on improving and adding new features to our latest cloud product, Mojo Stratus.

    Our mission has always been to deliver a world-class product for Magento stores. That is why we offered our own hand-picked hardware for years. First with plans using cPanel and then our own server management panel, Mojo Host Manager. Cloud architecture has caught up to bespoke server builds and we are proud to say that Mojo Stratus will half your response times compared to our dedicated hardware. Put another way, your performance will AT LEAST double, guaranteed.

    The results speak for themselves, below are graphs from live stores we host showing New Relic average response times before and after the switch, denoted by the red line. After moving to Stratus their sites loaded faster and became more stable, while being able to handle more traffic than ever before.




    The Mojo Stratus platform is built entirely on the AWS cloud stack and is hosted on Amazon's hardware and instances. It utilizes containers to automatically scale for a given store as needed. This means that you no longer have to worry about Ram or CPU restrictions.

    We've also included Autoscaling, CDN, Web Application Firewall and DDoS protection as part of Mojo Stratus. We use a utility pricing model so that you only pay for what you use. Our Mojo Stratus plans start at $98 per month plus monthly sessions and storage.

    We know that you will have a lot of questions about Mojo Stratus. We’ve put together a FAQ document with more information. If you still have further questions or concerns, simply reply to this email and we will get back to you as quickly as possible.

    If you wish to sign up today and start the migration process, you can do so at

  • What is the Magento Association?

    Flashback to Imagine 2018 in April.  As organizers for Meet Magento New York, we were invited to attend an organizers meeting. The meeting was to learn about the new Magento Association taking over the Meet Magento Association.  This was the first time we heard about it and were surprised.  At Imagine we learned that 4 community members would be leading it.  The meeting was, well, not much. There was very little information provided.  Our impression was the Magento Association was transferring ownership of Meet Magento Association.

    Since Imagine there have been several more meetings.  In these meetings the attendee types started to drift.  First organizers from other events.  Then Magento Masters.  Then community celebrities.  Then people from outside the Magento community. 
    We started hearing Magento Association was more than Meet Magento Association.  Magento Association was more than events.  But what was Magento Association? 
    The Magento Association idea started before the Adobe acquisition.  The idea came from the fear of losing Meet Magento Association.  The M eet Magento Association is the association created by Thomas Goletz in Germany.  There's a long history of Meet Magento DE, Meet Magento, and the Meet Magento Association.  I won't get into the nitty gritty of it.  The important thing to know is that the Meet Magento Association was formed to produce the DE event and to spread more Meet Magento events around the world. But Meet Magento Association never owned the trademark for Meet Magento.  Since then Meet Magento Association events have been spread around the globe and in this regard it's been very successful in doing so.
    As a member of the Meet Magento Association we pay a yearly fee to the association.  The money earned from the DE event (which is the only break even Meet Magento Association event and also earns profits) is used to fund the Meet Magento Association's yearly budget. There has been contention in the DE community for several years. The contention is around having an organizer, one who's not earning a living from Magento, organizing a Magento event.  There are opposing pov's here.  On one side people question the over-commercialization and revenue generation of MMDE. The organizer yearly fees, where that money goes, and what we as organizers receive back.  On the other side is an organization who has full time employees devoted to the Organization and producing MMDE.
    Over time, for various reasons, the founder of Meet Magento Association became more involved in China.  The contention was growing stronger.  The Meet Magento trademark was owned by neither Meet Magento Association nor Magento.  Magento saw all this as a risk of losing the Meet Magento events - over 25 worldwide.  The German laws are complicated, to say the least. It was easier to form a new association and buy the trademark than it was to take ownership of the existing Meet Magento Association.  At this point, the Magento Association was very much about protecting the future of the Meet Magento events.  But once you create a non-profit association, how do you manage a community with it?
    Magento looked at Acquia and the Drupal Association. They learned that looking back, the Drupal Association really wished they had engaged a professional company to help them.  Drupal Association spent years self-teaching themselves lessons that could have been avoided.  From these conversations Magento found SmithBuckland. They engaged SmithBuckland to start the Magento Association. Hopefully, this would avoid the wasted time and costly mistakes of the Drupal Association.
    Enter SmithBuckland.  SmithBuckland has been leading these meetings as a discovery to help form the structure of what Magento Association should be.  Up until now Magento only knows they wanted to protect losing the Meet Magento events.  Through these meetings they start to realize maybe there's more than just the Meet Magento Association.  Maybe they can add more events.  Maybe there's potential here for more than just events.  That's when more and more unusual people were invited to the meetings.  Largely to explore and see what community opportunities there which evolve with every meeting.
    Three critical mistakes were made here.
    First, they tried to keep this quiet.  The reason being they didn't exactly know what they wanted or how to do it.  They didn't want the community to form pre-conceived notions about what Magento Association was. Instead, the community was left to draw their own conclusions. Most of us do not have good experiences with Magento's business practices. Nor with their involvement in our events. We were left to draw our own conclusions. Conclusions through the lens of previous negative experiences.
    Second, the people invited were not described.  Yes, Magento put up a form to fill out if you're interested (which I filled out and never was contacted - another employee was).  Yes they reached out to Masters and Event Organizers.  But many others appeared and it very much looks like you had to be a friend of certain people to get invited.  From a Community POV this is bad optics.  A lot of the drift was simply miscommunication between the people inviting attendees and people attending not following the rules.  Say what the guidelines are for the people you invited and stick to those guidelines. Enforce your attendance policies at meetings.  It's important for the appearance to not show cronyism in order to build confidence and trust in the process.

    Third was communication, or lack of.  This goes back to keeping things quiet.  They should have come out and said clearly what the business goals were driving the decision to create the Magento Association.  Just say it.  Make sure you announce the form to request your involvement by more than just a tweet.  The communication strategy with community needs a major upgrade.  As it stands now you pretty much need to hang out on twitter all day to know what's going on (please don't kill me Sherrie - I love you). 
    SmithBuckland isn't going to be here forever.  But before they go they need to figure out who's going to pay for this thing.  That's right, it's not Magento, it's us.  Surprise!  At least it was for me.  For some reason I thought with all the unicorns being thrown around that events would be supported and possibly even help funded.
    Why would I think that?
    Last year at MMNY we didn't receive anything from Magento, not even some stickers.  But they wanted free tickets.  They wanted private meeting rooms.  In fact, we weren't even allowed to say we were an official Magento event.  I was personally reprimanded for saying this.  I was given a long legal clause to say that sounded like it was the end of a pharmaceutical commercial.  It basically said we're not an official event, Magento and Meet Magento Association have a cooperation agreement, and Magento supports the Meet Magento Association. But never, ever, say you're an official event.
    Talking with fellow organizers there are many issues with Magento and the Meet Magento events.  From stalling on dates, to trying to insert speakers into keynotes only 2 weeks in advance.  It's really been unpleasant working with them on the events. In fact, Magento has been downright been obstructing us in some instances.
    Here we are with the Magento Association and a decision to make. The Meet Magento Association was collecting dues for basically just the right to use a license to "Meet Magento" (which they never owned).  Why would we be interested in participating in Magento Association at all?  Events like Titans and Unconference and others have been fine on their own.  We've been all been fine on our own, arguably better off without Magento / Meet Magento Association.  Why would we want to be involved in this new Magento Association, especially if we're going to be the ones likely to fund it by now sending yearly dues to Magento Association...
    Because it's a chance for a fresh start.  It's a chance to do this Meet Magento Association thing over.  Magento's control should at least in theory be limited due to the 503c status.  This limits their controlling interests on the board to a single seat voting/non-voting.  The actual structure remains in discussion.  What I would like to see is X board seats.  The community makes nominations.  Nominees accept/decline.  Then the community votes on the nominees for the final board seats.  It would also be a good idea to decide the distribution of board seats and types to the types of stakeholders. For example in the community - developers, small business merchants, technology partners, etc.
    What is Magento Association then.  It was the saving of Meet Magento Association.  From there it's not sure what it wants to be. In SmithBuckland's own words: "It was also challenging to prioritize stakeholders as it is unclear what is the #1 problem the Association needs to solve or opportunity to capture".

    When you hear Magento say "you tell us" they are really serious.  They do want to figure it out.  They need to figure it out.  As an Organizer I'm not sure what they can do for us.  We're already established.  We already know 90% of what we need to know.  If anything, a central calendar of event dates organizers could collab on, to ensure a good distribution of events, would be nice.  Some say a simple spreadsheet could suffice.  But there does need to be an arbiter and some process to ensure fair play and dispute resolution.  Does that need an association?  Is it worth paying thousands of dollars per year?  Is it worth the hassle of dealing with Magento?

    No, we're going to need a heck of a lot more than that if we're going to participate only as a Meet Magento organizer, on our own free will.

    But hey, at least right now we have the chance to say what that something more should be.  Should it provide efforts focused on building Merchant / Small Business owner communities?  Should it provide efforts on security research and protection?

    We're on board with all these ideas.  We love the community and have always supported community efforts, even at our own expense, and my personal expense.  And will continue to do so.

    You the community member needs to tell Magento.  What is the problem you see that needs solved?  What opportunities do you see to be captured?  How do you think it should be funded?

  • Stratus : The Legendary Journey

    The launch and improvement of Mojo Stratus has been a bumpy road. Stratus was launched just before Meet Magento New York. Stratus was our major release and plastered on every wall at MMNYC. We wanted to do something innovative and different with Mojo Stratus.

    Stratus is different. Rather than continuing down the path of traditional server offerings – i.e. you get a server, things are installed on it, and you have this big monolithic piece of hardware running whatever you need – we decided to use containers. A long time ago we looked at Docker and containers to use when developing our panel Mojo Host Manager. That was several years ago and containers were an unstable parlor trick. Great for production if you were ok with your production site constantly being on fire.

    Support for containers is now widespread especially with Google releasing their Kubernetes technology. We decided to use containers to build the services for Mojo Stratus. All the services your average Magento 2 store would need, and our initial release worked despite several issues. We tweaked, and tweaked, and got through the Thanksgiving sales season unscathed. Then in December major systemic issues began to appear with no obvious explanation.

    First, we saw database problems. On Mojo Stratus, Amazon Aurora hosts all the databases. Aurora's main strength is scaling out read replicas. If you have ever tried to set up your own MySQL master-slave setups or other DIY clustering, then you know it is not very fun. Aurora makes this easy and we wanted to have read replicas for future scaling. It is still MySQL, though, and subject to the same problems you might expect from high usage and other bugs in MySQL. What we saw were patterns of locks in MySQL which would freeze all transactions on all stores for a few seconds. Then a huge spike in active connections as all the traffic on Stratus backed up into Aurora. Site alarms would go off, the sky would fall, customers noticed, cats and dogs living together, mass hysteria. We needed deeper insight into Aurora and fast.

    Getting insight into Aurora was not easy. We needed something pre-built. Basic stats from AWS or even getting them yourself from the MySQL engine are not useful. That isn’t a fault in Aurora. For an application specific problem you want to see what queries are happening during a failure event. After some trial and error, we came up Vivid Cortex ( and hooked it into Stratus. Vivid Cortex provides tons of information about what queries are running. Vivid Cortex helped us answer questions like:

    What queries are running
    How often do certain queries run
    What databases run certain queries the most
    What queries are the most time consuming
    We can’t give Vivid Cortex enough love for watching database performance

    After gathering a lot of data, we found a pattern. Stratus would lock up during certain types of queries. They would occur during certain actions on particular stores and lock everything up. On top of this, the Magento 2 crons were going haywire. Magento 2 has a bug ( where the cron_schedule table can inflate to infinity. Crons start running all over each other and destroying your server in the process. Certain extensions can have particularly heavy cron tasks within them. Either due to necessity or inefficiencies in the code. And they all run at once.

    With a bug causing locks, crons waging war against everything, and bad queries coming in, we had a recipe for poor performance. Even with the massive resources of Amazon Aurora. We used multiple approaches to bring everything under control. First, we notified customers about problem extensions and site code. Second, we started limiting crons ultimately creating our own extension to manage them. We've also pushed forward support for various services like Elasticsearch. Search in Magento should not be the default through MySQL if possible. We are also working on a MySQL reader extension for Magento 2 to take full advantage of Aurora scaling.

    Those solutions helped, but we still had issues on the file system side. The file issues left us baffled. We had no issues going through the busiest days of the season Black Friday and Cyber Monday. From the start we have been using ObjectiveFS. An amazing filesystem that lets us store data on S3 and it gets pulled locally. Files are cached to speed up performance, running anything direct off S3 would be very slow. Especially Magento where thousands of files maybe opened and called on a single request.

    ObjectiveFS would use a lot of CPU , spike iowait affecting every customer. That issue started in December and was not a problem in the last few months of 2017. The iowait spikes became more frequent and severe, unrelated to specific traffic, and we had to do something. We shopped around for other file system solutions and came up is a high performance file sharing solution that offers low latency and high throughput over the network. With most file systems like Weka, you can't get the low latencies needed for an application like Magento.

    Weka promised it all with file system latencies in the microsecond range. Well known share tech like CEPH etc all have times in the millisecond. It used its own kernel driver and relied on i3 instances and NVME storage. Again, when loading 1000 plus files per page load, you need low latency, that’s why the switch to SSDs was so important early on for MageMojo. It looked like a drop in replacement file system and we fired it up and got It working.

    The initial results were promising. Weka handled 300k request per second for files over the network without issues, and writes were no problem. You could write from one place and see the file nearly instantly from another source. Many frontend and backend parts of Magento write to a file and display it via an ajax request (product image uploads). Where on other systems an image upload would work, but the thumbnail would not appear since the write was not fast enough.

    After more testing, we went ahead and moved everyone off ObjectiveFS to the filesystem. We had a few issues with its configuration, and worked with their team to get everything set up correctly. For a while life was good. But added significant latency to the load times, even with its microsecond response over the network. On average about a full second compared to the original ObjectiveFS system. The load time was a trade-off for what we believed to be stability.

    In February we had a critical failure on the cluster a few weeks after completing our migration to their filesystem. The system was designed to be redundant so that 2 storage nodes can fail without data loss. In our case 3 nodes failed, putting the data in the ephemeral storage at risk of recovery. A bug in the software caused the entire cluster to become unresponsive and we were never given the full explanation from the team, unfortunately.

    We brought the stores online within 24 hours using an older copy of the data. In the following days we restored files as we could and helped bring back stores using their more recent data. We stabilized again on ObjectiveFS. We got back to business . ObjectiveFS was not as bad as we recalled, having fixed some other issues Aurora related. And not long before the Weka failure, we learned about the Meltdown vulnerability.

    This is the real kicker on top of it all. Once Meltdown became public knowledge, we learned that Amazon had secretly patched all their systems in mid-December. Meltdown patches coincide with the random systemic issues. We thought they were ObjectiveFS specific. It was not until we went back to ObjectiveFS that we realized there could be a connection. We also had AWS Enterprise support confirm the patching timeline. They were under embargo not to reveal the vulnerability.

    In hindsight, that change severely impacted our file system performance and we know the Meltdown patches can hurt the specific load created by Magento especially stat calls, and Magento makes thousands of them per request. Post Black Friday, multiple issues converged to create a sudden unstable system. We failed to identify it correctly and tried to fix it with different technology. In hindsight, that was a major mistake on our part. A lot of sleepless nights paid on that debt.

    With the realization about Meltdown and a new look at ObjectiveFS, we resumed testing and making more tweaks. Performance was better but not the best we hoped for. More and more updates gave us incremental improvements. In the first iteration we used multiple ObjectiveFS mounts. They covered many stores on a given physical node, and those mounts existed on all workers in the Stratus cluster. As a store scaled out, the containers already had the files available. Requests would cache the files a container needed on the respective node over time. But with many stores sharing a mount, the cache sizes became very large relative to a store. With such a large cache, any given request needed to fetch a lot of specific files from a large haystack. Testing confirmed it was a major bottleneck.

    For Stratus 2.5, the current generation, we moved to having a single ObjectiveFS file mount per store. Each store has its own file cache local to a node running its containers on disk and in memory. We launched Stratus 2.5 2 weeks ago and it has solved every file system issue we’ve received complaints about, especially update slowness in Magento admin. Site performance is faster than ever, according to our New Relic data every store is 30% faster now. Stores with heavy file operations on load show even more improvement.

    We’ve also added a lesser known feature called Stratus Cache. Stratus cache directly adds most of your code base into the container images we use for scaling. Stratus caches bypasses the file system for a majority of the system calls and improves performance while making scaling for large sales a breeze. If you are planning a large promotion or traffic influx, please let us know and we help get that working for you.

    To contribute back to the community and improve Stratus, we’ve started making our own Magento 2 modules to address specific concerns we have about Magento 2 performance. Our first release was a complete re-work of the cron system in Magento 2. On Github at . By default the Magento 2 crons can take a server down in the right conditions and they constantly fight each other and run the same task multiple times. Our module eliminates that problem, because it causes issues with stores and vital cron tasks are missed.

    Next we have our split DB extension viewable at . Magento 1 CE allowed merchants to easily use a master-slave database setup with a dedicated reader. Stratus uses Aurora which scales by having seamless multiple readers in a cluster. Since M2 CE does not support this at all out of the box, we had to build our solution. We believe Community should be able to scale just as well as Enterprise.

    As we near Magento Imagine, we are working on improving the dev experience on Stratus. We provide free dev instances which are the same CDN and stack used by any production Stratus instance. Going forward, we want to include more tools, tests and utilities to make a developer friendly environment. The primary feature will be Live Preview. At the click of a button, customers can create exact copies of their production store, including the database. Then developers can go in and make changes, commit them, run tests, and push to production. Preview sites will be storable so you can save different versions of the site and refer to them as needed. After the initial release of Live Preview, we will be adding tools to perform Selenium and unit tests.

    Stratus is now the premiere platform for Magento hosting. Nothing can scale and run your Magento store better. We've come a long way and we are grateful for our customer's patience. Now it's time to get back to business and stop worrying about your server.

  • Magento 1 to Magento 2: Five Reasons to Upgrade

    Magento is the best ecommerce platform, and Magento 2 offers even greater benefits including better speed, performance, features, ease of use, and customer experience. If you’re setting up an ecommerce store on Magento for the first time, using Magento 2 right out of the gate is a no brainer, but for those already set up on Magento 1, here are reasons to consider migrating to Magento 2.

    Magento 2 is everything Magento 1 was and more. It adds a plethora of new features, while maintaining enough familiarity to ease the transition for long time users of Magento 1. Upgrading is something everyone should do, and with fast high quality hosting such as MageMojo, the benefits stack up.

    Improved Performance and Speed

    First, Magento 2 offers significant speed and performance boosts by adopting Varnish and PHP7 technologies. The lower page load times are due to full page cache on both Community and Enterprise versions of Magento 2. Improved performance directly leads to higher revenues. The faster customers can get to your catalog and products, the more likely they are to buy something. Stores upgraded to Magento 2 show higher revenues and conversion rates than slower Magento 1 stores.

    PHP 7, is the latest version of the most popular web programming language and is much faster in execution than PHP 5.x. It even outperforms or hits parity with HHVM (Hip Hop Virtual Machine). HHVM also required a lot of extra work to configure for Magento 1 and the built-in Full page cache (FPC) supports Varnish out of the box.

    Magento 1 required a 3rd party extension to incorporate Varnish cache which was difficult to use. It also required an experienced (expensive) hand to get custom themes working correctly. But with Varnish cache the time to first byte goes from half a second or more down to only a couple hundred milliseconds. And total page load may be less than a second total.

    In Magento 2, a simple click in the backend creates a Varnish configuration file for you customized to your store. Varnish and PHP7 together provide faster load times with lower effort than ever before in Magento. Coupled with Magento specific hosting, such as with MageMojo, and you'll have the best performing ecommerce site available.

    More Streamlined and Easier to Use

    This aspect is great for both merchants and developers since the ease of use means you can easily customize and edit things without a developer, and even with a developer the chances of issues cropping up is greatly diminished.

    • The new Visual Editor allows for “drag and drop” customization to the site, making it easy for non-developers to build a site on Magento 2. Along with beautiful new themes which are now organized by vendor and easier than ever to find and access, you can play around with how your front end will look to your heart’s content. Cleaner and simpler organization also makes it faster and easier for both developers and merchants to manage content.

    • Quality of life improvements simply abound in Magento 2. Filterable dynamic grids have been added to many sections like the catalog and order listing. Your store data can be searched and queried quickly and efficiently without the need for 3rd party tools. The admin is also simply arranged with a clean left-hand navigation menu. The backend is overall much faster than Magento 1, where many backends suffered from long load times for basic changes such as managing categories.

    • The new step-by-step product creation tools allow you to more quickly and accurately add products to your store. This tool makes adding products up to 4 times faster in Magento 2. Plus, customizing themes and modules is easier and more streamlined for developers and incorporates modern responsive design.

    The best part? No extensions are required for payment gateways such as Paypal and Braintree, which are all automatically integrated into Magento 2.

    Better Customer Experience

    Even more improvements were put into the frontend. The customer experience is the most important part of any store, and Magento 2 adds features that shoppers expect on a modern website. The checkout, cart and registration are all streamlined, faster, and much easier for customers to use, reducing cart abandonment. The cart is now Ajax to reduce loading times (meaning no full page refresh is needed after adding a product). The catalogsearch is also faster and on Magento 2 Enterprise supports Elasticsearch by default and shipping configuration is simpler as well.

    The above changes on the frontend extend into the mobile realm, as almost a majority of shoppers today are using mobile devices. The faster search improves conversion rates for mobile users who rely on it in lieu of navigating through an extensive catalog listing.

    Improved Features

    On the development side, Magento 2 uses HTML 5 and a responsive default theme, to bring everything up to date to modern web standards. The new marketplace and integration of tools like composer also make upgrading and installing new modules more manageable than Magento 1.

    Here are some highlights:

    • Making custom code is easier for developers with higher quality and lower maintenance
    • More in depth review and testing of extensions, extensions that make it to the official Magento Marketplace are proven to work and are better quality. They are also vetted for security.
    • The theme improvements also enter the mobile realm. Themes are now mobile friendly, which is better for SEO now that Google ranks up mobile friendly stores higher

    Magento 1 will only stay up to date on security patches for another 3 years, so it’s good to start planning the move to Magento 2 at some point, especially given the major performance boosts it offers. It is also more secure using more modern coding paradigms. The development community will be focused on Magento 2, so Magento 1 will not see much attention anymore. You don’t want to get left behind and this is a fantastic chance to make improvements to your site and usability in the process.

    Migrating to Magento 2 is Easy

    The Migration Tool makes moving from Magento 1 to Magento 2 easy and simple. Custom code, themes, and extensions will have to be redone, but this gives merchants a chance improve your code, add better, tested, extensions and upgrade your site’s theme. Customer and product data can also be directly imported with tools from Magento.

    Moreover, when upgrading Magento 2 between versions, it makes sure modules are compatible and if they are not, the upgrade stops. Gone are the days of hoping your upgrade works from Magento 1.

    Starting the upgrade is a no brainer. All stores will eventually have to switch to the newer platform so it’s a good idea to start planning the move now, especially so you can maximize on the benefits that much sooner. In the competitive world of ecommerce, you don’t want to get left behind. Better yet, upgrading sooner than later will put you ahead of the curve and give your shop a leg up on the competition. To maximize on this you'll want the best hosting available as well, such as MageMojo which is the number one Magento specific hosting service.

  • Best Solution for eCommerce [7 Reasons Why Magento is Superior]

    Choosing a platform for your online business is a major decision, but for any ecommerce business, large or small, Magento is a great choice. Roughly a quarter of all ecommerce sites worldwide use Magento as it is agile, flexible, and full featured.

    From small to big companies, there are millions of businesses on the Magento platform. Some of the biggest brands including Samsung, The North Face, Ford, Fox Connect, Lenovo, Olympus, Men’s Health, Vizio, Nestle Nespresso and Nike use Magento and so do millions of small and midsized ecommerce companies around the globe. Coupled with powerful hosting like Mage Mojo, the potential of Magento is limitless.


    Here’s why Magento is such a great platform for ecommerce businesses.

     1.  Magento is Fully Customizable and Adjustable

    The community marketplace allows you to download extensions to customize your store. Open source means anyone can add to or extend Magento to their needs. And the continued use of open source licensing in Magento 2 shows Magento’s own commitment to the community alongside their Enterprise offerings.

    As an open source project, extensions are widely available, both paid and free, for Magento. Just about anything a merchant would need that is not included in Magento can be found with a simple click. Even the software requirements for Magento are all open source (Apache/Nginx, PHP etc) creating an entirely open stack for eCommerce. And many features available to customers, were re-created by community developers, namely the Full Page Cache (FPC). For hosting companies like MageMojo, open source allows their support to recommend free extensions for customers who may not want to spend $100 or more dollars for Full Page Cache capability.

    Search is another area with a lot of extensions. Magento 1 and 2 both use MySQL to store search data for the product catalog. Though Enterprise has always had more search options (Apache SOLR and Elasticsearch), commercial modules are available to bring similar solutions to the Community edition. And for many of the features available in extensions, the price is modest compared to the cost of a developer to make a custom module for you.

    2.  Magento is Always Evolving

    This means developers can modify the source code to your heart’s content, adding or creating extra features, add-ons, or plug-ins as necessary. This makes Magento an immensely powerful and versatile platform like no other.

    As an open source project, Magento is continually reviewed and improved by thousands of developers. It only continues to get better with users seeing constant improvements. These contributions have created an incredibly stable and secure platform for online stores. The Magento Community Edition is also free! The benefit of Magento’s community is immense as security updates are released often as a patch for everyone to secure their stores.


    3.  Magento is Highly Scalable from 1 to 1,000,000,000

    Magento is built to run on established technologies: Apache/Nginx,PHP and MySQL. They are very stable and side effects from the hosting stack are reduced. Plus they are all very scalable to handle. Whether your online store services one town, a whole state, or country, or operates internationally, Magento and its plethora of features can handle it with ease. This ability to grow is why so many businesses choose Magento right from the start.

    This scalability extends into the hosting industry. Merchants can choose from a variety of hosting environments, platforms, and other offerings for their store. With the right hosting, such as Mage Mojo, Magento can handle even the Superbowl and other television promotions. It’s no wonder so many Fortune 500 companies choose to run on Magento.

    4.  Diverse Community Offerings

    The Magento community is worldwide and ranges from the tiny freelance developers to large web agencies and no matter the size, they all contribute with open source modules and improvements for Magento. Anyone can get help when they need it from helpful communities at the official Magento forums and sites like StackExchange. And with Magento 2 on Github, issues are constantly being reported and discussed. Many are resolved with new contributions for the next release. Hosting sites like MageMojo consistently contribute and work with the community to integrate the latest practices and fresh feedback to make their hosting better.

    This means the speed, functionality, and security of your site is forever being improved and new features are constantly being added. This readily available support makes Magento especially appealing for non tech/code savvy business owners.

    In fact, as an ecommerce business owner you can meet this community of developers in the flesh at Magento events such as Meet Magento which will be hosted in New York City by Mage Mojo. Not sure what features Magento offers? Still have questions? This is a great place to talk to experts who know everything there is to know about ecommerce solutions and find great inspiration for your own store!

    5.  Limitless Ways to Integrate External Elements into Your Website

    Many merchants also have brick and mortar operations or other external systems particular to their market. Trying to integrate them into other platforms can be a mess, if it is even possible. You may need to track inventory between Magento and your point of sale systems at various franchise locations.

    With Magento’s API you can keep your physical and digital locations in sync with ease. The most popular platforms tend to already have modules available for Magento (like Amazon, eBay, and ERP software). For example, a merchant has physical locations along with sales on eBay,Amazon, and their Magento store. Through the Magento API and a few modules, their inventory at their warehouse is synced across all of them automatically and their Magento store doubles as the overall source of truth for all revenues and order processing.

    This seamless integration is a major benefit. But even if your shop is purely online, Magento allows for integrations with any third party extension such as payment gateways like Paypal, database applications, shipping, shipment tracking, and has built in integration with Google Analytics and Google Base. Magento is an all in one solution for everything your business needs.

    6.  One Online Store Not Enough? Free Multistores

    Unlike most other platforms out there, Magento doesn’t limit you to using a single online store. Instead, you have the capability to run multiple stores from the same backend interface, with all of the information for all of your stores available on the same admin panel. Multistores lets any merchant host several domains while conveniently sharing information between them, such as customer data and product catalogs.

    Managing a diverse collection of sites has never been easier. With Magento, the hassle of multiple backends and duplicating content throughout your stores is no longer a problem. For example, a site hosting many different brands of the same style of shirt, such as for college sports teams, can re-use content across multi-stores without having to manage dozens of Magento instances. Or many different stores can be used to be region specific, with their own language and products to fit the demographic. From a single admin dashboard, you can control the inventory, billing, and records for all of your stores.


    7.  Very Flexible Stock & Inventory Functionality

    Out of the box Magento packs a ton of features and more than enough to get started for any new merchant. A store can get up and running in no time without the need to install dozens of extra modules. With a low barrier to entry, Magento fosters online competition without excessive risk and merchants have flexibility to try new ideas. We have seen many dropshipping sites get up and running with off the shelf parts - themes and extensions - in less than a week from installation to going live. Magento is user friendly, mobile optimized, allows for search engine optimization and analytics, and is specifically designed for ecommerce.

    Coupled with powerful hosting, the possibilities with Magento become limitless. If you’re still unsure, we suggest you attend a Magento event and meet with other ecommerce business owners and developers.

    The next Meet Magento event is sponsored by the industry’s leading Magento hosting companies, Mage Mojo in New York City. Innovators and veterans, will be present for you to learn about ecommerce and ways to improve your sales. You can learn about others who have found success with Magento, what features they used, what features are available, glean inspiration, and find out how the community is always integrating the latest tech and improvements. Further details are coming soon, so keep an eye out!

Items 11 to 20 of 29 total

  • Cisco
  • Intel
  • Redis
  • Magento
  • Nginx
  • Dell
  • Percona
  • MemCached
  • PCI Compliant
  • BBB