<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: Akash Chaudhari</title>
    <description>The latest articles on DEV Community by Akash Chaudhari (@akashyti).</description>
    <link>https://dev.to/akashyti</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F646463%2F6991fe3c-bbd0-41f2-a9d4-f138a5d22223.jpg</url>
      <title>DEV Community: Akash Chaudhari</title>
      <link>https://dev.to/akashyti</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/akashyti"/>
    <language>en</language>
    <item>
      <title>How We Implemented Fault Tolerant Hosting For ERPNext</title>
      <dc:creator>Akash Chaudhari</dc:creator>
      <pubDate>Fri, 23 Jul 2021 08:06:39 +0000</pubDate>
      <link>https://dev.to/akashyti/how-we-implemented-fault-tolerant-hosting-for-erpnext-io5</link>
      <guid>https://dev.to/akashyti/how-we-implemented-fault-tolerant-hosting-for-erpnext-io5</guid>
      <description>&lt;p&gt;&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--K-5aMFD6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1a4dmbn3a8d5w82ss637.jpg" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--K-5aMFD6--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/1a4dmbn3a8d5w82ss637.jpg" alt="taylor-vick-M5tzZtFCOfs-unsplash"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;ERPNext is Open Source CRM and Business Management tool that  Provide Control over Various Aspects of your Business Ranging from Work Order to Sales Invoice to Payment.It is Straight Competitor for &lt;strong&gt;Odoo&lt;/strong&gt;, &lt;strong&gt;SAP&lt;/strong&gt; and Other Leading Competitors. &lt;a href="https://grynn.ch"&gt;Grynn&lt;/a&gt; Offer this CRM Customized For European Markets. We already have Built apps like For &lt;a href="https://github.com/Grynn-GmbH/Swiss-E-invoicing-ERPNext"&gt;E-Invoicing&lt;/a&gt; , &lt;a href="https://github.com/Grynn-GmbH/ERPNext-Security-Card-Printer"&gt;Security Card&lt;/a&gt;, &lt;a href="https://github.com/Grynn-GmbH/ESTV-SuisseTax-FX"&gt;Tax FX Rates&lt;/a&gt; and Much More which Make ERPNext Native to Europe. Now we have implimetned Hosting for &lt;a href="https://erpnext.com"&gt;ERPNext&lt;/a&gt;. Our Initial Version of Hosting Offers 3 Months Trial for Free you can get it &lt;a href="https://signup.grynn.ch"&gt;Here&lt;/a&gt;.&lt;/p&gt;

&lt;h2&gt;
  
  
  The stack
&lt;/h2&gt;

&lt;p&gt;From the very first we were into &lt;code&gt;lambda&lt;/code&gt; thing. Also we wanted to impliment our front end that is compleatly isolated from our provisioning Infra. So we Picked Up &lt;a href="https://netlify.com"&gt;Netlify&lt;/a&gt; as our hosting and it also provides functions which is what we wanted. Our backend infra is using &lt;a href="https://linode.com"&gt;Linode&lt;/a&gt; For Provisioning machines and creating Sites. Now benifit of this is our front facing is totally based on functions and probability of its going down is very less. Our backend on the other hand  requires monitoring facilities and usage to track down it's uptime and automated heaing.&lt;/p&gt;

&lt;h3&gt;
  
  
  The Front end
&lt;/h3&gt;

&lt;p&gt;Our Front end is Using &lt;a href="https://reactjs.org"&gt;React&lt;/a&gt; with &lt;a href="https://www.gatsbyjs.com/"&gt;Gatsby&lt;/a&gt; and &lt;a href="https://netlify.com"&gt;Netlify Functions&lt;/a&gt;. The Reason for Using Gatsby is it's Performance , SEO and Automated Splitting is built into framework which makes it perfect for Creating High Performant Pages. If you are a Vue Fan then you can use &lt;a href="https://gridsome.org/"&gt;Gridsome&lt;/a&gt;. At Front end We take Information through Form , Verify it and Then Call a Function that queue the site creation process. Now our backend Part Comes in.&lt;/p&gt;

&lt;h3&gt;
  
  
  The back End
&lt;/h3&gt;

&lt;p&gt;In Backend We we take request in the Queue and process it and notify user with their site and temporary password. we have a Nginx Instance Running Detached From our Infra that Helps in Monitoring. Now our Nginx Decides where to Put our site. We are using Name Based Resolution for our free trial websites.&lt;/p&gt;

&lt;p&gt;Here is Summary of Our Infra Looks Like&lt;br&gt;
&lt;a href="https://res.cloudinary.com/practicaldev/image/fetch/s--KMzpuEkc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ihym6mwwz9nxl5tzf1tf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://res.cloudinary.com/practicaldev/image/fetch/s--KMzpuEkc--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https://dev-to-uploads.s3.amazonaws.com/uploads/articles/ihym6mwwz9nxl5tzf1tf.png" alt="Structure"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;Now this is view from ten thousand Feets i can say. Implimeting Hosting for Anything requires many things to be taken care of. &lt;/p&gt;

</description>
      <category>netlify</category>
      <category>erpnext</category>
      <category>hosting</category>
      <category>cloud</category>
    </item>
  </channel>
</rss>
