(Well, there would be more but we need to start somewhere)
So… you are finally there, the big Virtual-Opening day…
The design for the website is finally sorted, all the products have an appropriate description/price/picture(s), the code and the data have been uploaded to the Production infrastructure and finally all the tests with the credit card providers have all successfully gone through.
It is finally time to turn on the engine of the Marketing Campaign you have been planning for months…Or maybe not…
You have been waiting for so long, why don’t you give me 5 minutes of your time?
In return I will tell you how and why your website is going to be unable to process payments, have a very high response time, lose customer’s basket, leak data and eventually be unable to cope with scaling or DDoS attacks.
Here is a short summary of what will (and not could) go wrong if you haven’t already thought about it
1) Cloud/Hosted/Dedicated or Hybrid?
Have you made the right choice about your hosting solution?
Making the wrong decision here will compromise a big deal of time and money later when you will find out that your infrastructure cannot scale properly, that you cannot really do that SRE/DevOps/CiCd thing they are talking about on LinkedIn or that you didn’t really need that expensive customer support service which is not covering issues caused by DDoS.
Yes, infrastructure matters, and any decision should be guided by the properties of your e-commerce platform, expected growth and the investment in the marketing campaign you just made.
My experience tells me that if you have spent 10K in planning a Marketing Campaign alone but you have paid no attention to the infrastructure behind your website, you may be really close to chuck a bucket of money out of the window and that does not scale well in any way… …Which brings us to the second point
2) Have you planned or executed a stress test of the platform?
Load Testing is not Rocket Science (and no, it is not the score on PageSpeed Insights by Google ) but not really many people are actually implementing a regular check-up of the platform’s capabilities.
Have you booked one yet?
Stress testing a platform is THE BEST way to visualize and resolve bottleneck BEFORE customers traffic makes them visible.
Sure, it costs some money, but it may cost you more to loose customers during a successful campaign right?
There are may way of performing Load Tests from the ‘Just hit the Landing Page as hard as you can’, to the more refined ‘User Journey log replay’.
Just choose which one is in your interest and in your budget.
3) CDN, Images and Redirects
Are you still not convinced about how good a CDN is?
Let me help you out….
Many are convinced that a CDN is only good for images and CSS while the truth is that a CDN is good for caching all sorts of HTTP responses
If you are trying to get as much traffic as possible into your website, configuring a CDN is not an option, it’s a MUST!
It can help you out in case the URL got misspelled or do you need to steer a big portion of the traffic somewhere else as well as serving error pages and invisible pixels.
How easy it is to get a CDN up and running on your website?
Well, that is directly connected with point number 1: the choice you made about your hosting platform.
For each one there is a different solution, price and time to production.
If you are not sure you want to talk with someone who can guide you through the options but be aware, there is not a single solution which can fit all the needs, even a CDN for a simple WordPress website may give you a head hake.
4) Got CI? Good! Time for some CD then!
Your website strategy cannot be complete without a CD platform, which again is a direct derivate of point number 1 (Did I stressed enough about how important is to choose the right platform to host your e-commerce website?).
A urgent update on the code, a bugfix of the underlying system, a new version of the language the website is written on; these are all BAU emergencies you will have to deal with.
What is it going to be? Have a pipeline in place for streamlining the code from the developers to Production or just making a change on the code in the live environment and press CTRL+F5 to check if everything works or not?
A complete Ci/Cd code lifecycle is not only important to manage emergencies but it is what in the end will help you progressing forward with things like ‘Fast-deploy, Easy Roll-back, Automated Testing, A/B Testing’
Note: may require DevOps
5) Where did you say the production code was?
Make mandatory for your team to use a code repository, track the changes, version images, create branches and then merge them all back together.
You need to have something to call ‘The Single Source Of Truth’ for your code/images/scripts, something you can refer to every time you need to change or modify a thing, really anything.
IT DOESN’T MATTER IF YOU ARE DOING EVERYTHING WITH A CMS
You must follow the ABC procedure:
Always test it in a dev environment first
Before you sent it out to Production prepare a Roll-Back and a Backup
Check it is actually working fine once deployed with a series of Tests (automated or not)
Do not keep all your users sessions in the local server.
My wife keeps going back and forward from website to website and more often than not the cart after resuming a shopping session comes back EMPTY!
Sharing is Caring, and if someone asks you if you want an engine to share sessions across your web servers you must say YES!
7) DDos protection
Your success will attract people, the right customers as well as the malicious actors.
A lot has been done in the past years to automate and provide simple infrastructures with Enterprise Grade Security Systems which do not really come at the same cost as an Enterprise Grade Security Systems and the offer in the market is quite wide, as well as the options and the price tags.
What you need to consider to choose one? Easy said:
- Which hosting platform you are on (You guessed it this time didn’t you?)
- The amount of damage you may receive if your website goes down for a day
This will give you a good starting point to take an informed decision about it
Did anybody mentioned any of the above with you?
Would you like to learn more?
And we will make sure to help you doing it properly!!