High Availability for the LAMP Stack you own this product

'); $(document.body).append('
loading reading lists ...
'); function adjustReadingListIcon(isInReadingList){ $readingListToggle.toggleClass("fa-plus", !isInReadingList); $readingListToggle.toggleClass("fa-check", isInReadingList); var tooltipMessage = isInReadingList ? "edit in reading lists" : "add to reading list"; $readingListToggle.attr("title", tooltipMessage); $readingListToggle.attr("data-original-title", tooltipMessage); } $.ajax({ url: "/readingList/isInReadingList", data: { productId: 2764 } }).done(function (data) { adjustReadingListIcon(data && data.hasProductInReadingList); }).catch(function(e){ console.log(e); adjustReadingListIcon(false); }); $readingListToggle.on("click", function(){ if(codePromise == null){ showToast() } loadCode().then(function(store){ store.requestReadingListSpecificationForProduct({ id: window.readingListsServerVars.externalId, manningId: window.readingListsServerVars.productId, title: window.readingListsServerVars.title }); ReadingLists.ReactDOM.render( ReadingLists.React.createElement(ReadingLists.ManningOnlineReadingListModal, { store: store, }), document.getElementById("reading-lists-modal") ); }).catch(function(e){ console.log("Error loading code reading list code"); }); }); var codePromise var readingListStore function loadCode(){ if(codePromise) { return codePromise } return codePromise = new Promise(function (resolve, reject){ $.getScript(window.readingListsServerVars.libraryLocation).done(function(){ hideToast() readingListStore = new ReadingLists.ReadingListStore( new ReadingLists.ReadingListProvider( new ReadingLists.ReadingListWebProvider( ReadingLists.SourceApp.marketplace, getDeploymentType() ) ) ); readingListStore.onReadingListChange(handleChange); readingListStore.onReadingListModalChange(handleChange); resolve(readingListStore); }).catch(function(){ hideToast(); console.log("Error downloading reading lists source"); $readingListToggle.css("display", "none"); reject(); }); }); } function handleChange(){ if(readingListStore != null) { adjustReadingListIcon(readingListStore.isInAtLeastOneReadingList({ id: window.readingListsServerVars.externalId, manningId: window.readingListsServerVars.productId })); } } var $readingListToast = $("#reading-list-toast"); function showToast(){ $readingListToast.css("display", "flex"); setTimeout(function(){ $readingListToast.addClass("shown"); }, 16); } function hideToast(){ $readingListToast.removeClass("shown"); setTimeout(function(){ $readingListToast.css("display", "none"); }, 150); } function getDeploymentType(){ switch(window.readingListsServerVars.deploymentType){ case "development": case "test": return ReadingLists.DeploymentType.dev; case "qa": return ReadingLists.DeploymentType.qa; case "production": return ReadingLists.DeploymentType.prod; case "docker": return ReadingLists.DeploymentType.docker; default: console.error("Unknown deployment environment, defaulting to production"); return ReadingLists.DeploymentType.prod; } } }); } });
How to eliminate single points of failure & increase uptime for your Linux, Apache, MySQL, & PHP Based Web Sites & Apps.
Linux Training Academy
  • Course duration: 2h 0m

pro $24.99 per month

  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose one free eBook per month to keep
  • exclusive 50% discount on all purchases

lite $19.99 per month

  • access to all Manning books, including MEAPs!

team

5, 10 or 20 seats+ for your team - learn more


Look inside

This step-by-step guide teaches you everything you need to know in order to eliminate single points of failure for your Linux, Apache, MySQL, and PHP based web applications.

Do you wish you could ensure your web site was up all the time and finally enjoy a peaceful night's sleep?

Do you want to be able to scale without downtime and handle unexpected surges of traffic?

Do you want a solution that just works without spending weeks testing various combinations of technologies and software?

Do you want someone to lay it all out for you and walk you through an entire deployment?

If so, you're in the right place...

I understand, because I've been there.

I know what it's like to be woken up in the middle of the night when a web server goes down. I don't know about you, but I'm fairly grumpy at 2:47 A.M. when something is broke and I'm the one that has to fix it.

That's why I strive to eliminate single points of failure and ensure service availability. I would much rather plan for failure ahead of time than have to react to it. If you have a robust design that's easy to support you can repair any failures at your convenience instead of trying to cobble together a makeshift solution in the middle of the night.

I've spent countless hours designing, testing, and implementing high availability solutions for a wide range of Linux based services during my career. I've put together a well designed, well tested solution for the LAMP (Linux, Apache, MySQL, PHP) stack that easily scales to support an increasing number of users all the while decreasing downtime. I've taken each possible single point of failure into account from the obvious ones to the less than obvious edge cases you'll need to cover in order to have a truly robust design.

This is a full blown course that demonstrates everything step-by-step...

This is not just a design, though. It's an entire course complete with lessons and demonstrations on actual Linux servers. I'll be performing the demonstrations on Ubuntu servers, but the concepts are the same no matter if you're using RedHat Enterprise Linux, CentOS, or another distribution. The only real difference is the couple of commands you'll use to perform some of the software installations. The design and configurations remain the same.

Even though this course is targeted directly at the LAMP stack (Linux, Apache, MySQL, PHP), the concepts and techniques presented can be reused in a variety of other situations. If you ever need a floating IP, the ability to add more storage to servers without downtime, to balance loads across multiple servers, or deploy a highly available database cluster, you can put what you learn in this course to good use.


Distributed by Manning Publications

This course was created independently by Linux Training Academy and is distributed by Manning through our exclusive liveVideo platform.

prerequisites

Having at least some experience working at the Linux command line will come in helpful during this course.

about the instructor

Jason Cannon started his career as a Unix and Linux System Engineer in 1999. Since that time he has utilized his Linux skills at companies such as Xerox, UPS, Hewlett-Packard, and Amazon.com. Additionally, he has acted as a technical consultant and independent contractor for small businesses and Fortune 500 companies.

Jason has professional experience with CentOS, RedHat Enterprise Linux, SUSE Linux Enterprise Server, and Ubuntu. He has used several Linux distributions on personal projects including Debian, Slackware, CrunchBang, and others. In addition to Linux, Jason has experience supporting proprietary Unix operating systems including AIX, HP-UX, and Solaris.

He enjoys teaching others how to use and exploit the power of the Linux operating system. He is also the author of the books "Linux for Beginners" and "Command Line Kung Fu."

what's a liveVideo?
Find out more

choose your plan

team

monthly
annual
$49.99
$399.99
only $33.33 per month
  • five seats for your team
  • access to all Manning books, MEAPs, liveVideos, liveProjects, and audiobooks!
  • choose another free product every time you renew
  • choose twelve free products per year
  • exclusive 50% discount on all purchases
  • High Availability for the LAMP Stack liveVideo for free
RECENTLY VIEWED