While JAMstack sites can be (and sometimes are) hosted on standard virtual hosts, the optimal way to deploy your prebuilt markup is to employ a CDN and host your content at the edge. JAMstack-centric services like Netlify and Zeit allow content authors to atomically deploy prebuilt markup to their CDNs, resulting in cheaper hosting costs for creators and fast download speeds for customers. Every time you publish the latest version of your site, the CDN invalidates the cache the users have, ensuring that they always get the latest content, right away. Your markup and assets are hosting on static file servers close to your customers, making their experience and impression of your business even better.
One thing to remember about a JAMstack site is that the markup is prebuilt, so updating content requires a fresh build. You can build these systems yourself, but most JAMstack-oriented services allow teams to automate the build process. The typical workflow is to push the latest version to your version control system and a tool like Netlify or Zeit will pick up on the push, build your site on their servers, and then deploy the site to their CDN. Every time your team makes a new commit, an atomic deploy happens, giving you a snapshot of your code at that time, allowing you to have a specific URL for previous and staging versions of your site, which allow you to share a secret new version with clients or instantly rollback to an older version of the site if something catastrophic should occur in a newly released update.
Headless CMS and the JAMstack are relatively unknown terms in Japan. In America and Europe, this way of building websites and managing the data that goes with them, is quickly gaining traction. What is making this possible is the rise of serverless and the API economy. A host of services have sprung up to make it possible for you to not have to be responsible for managing a server. And it isn't just small startups building these services. Amazon, Microsoft, and Google all operate massive serverless system, which the smaller startups use themselves to build more specialized services on top of. While serverless is often employed in more traditional server-rendered site development, these generalized serverless systems help fill in the gaps that the JAMstack cannot cover with prebuilt markup alone.
What is more common on a website than a form? Seems like almost every business site requires a contact or order form. You need some kind of server-side processing to handle form requests though. To handle these situations, a number of Forms as a Service (FaaS) companies have popped up. Companies like Basin and Formspree, or the more developer-focused StaticKit let users inject any number of forms onto a site without the need for a server. If a contact form is the only reason you're running your own server, these services can lessen your burden.
It's possible that you want to store the data you collect from forms. With a traditional server-backed website, you would set up a Mysql database and save your form data in a table somewhere. The JAMstack way of handling this is to leverage a Database as a Service. A number of providers exist, including Amazon, Microsoft, Google—alongside a host of smaller companies like 8base that specialize in lightweight solutions that are far easier to set up than the more generalized solutions of the bigger players in the industry. There is most likely a provider to suit your needs.
If you need to do something out of the ordinary or you want to process the data you've received in someway, the serverless way of handling those situations is to take advantage of serverless functions. Instead of spinning up and continuously running a server to process requests that might only come in a couple times a day, serverless functions allow you to write the same logic you'd run on your own server, but instead deploy it to a serverless provider's network. You then can direct users (or their data) to these functions that only run when called on. You are billed only for computing time, which can be a minuscule amount for functions that don't get called often. These functions scale infinitely as well, so if your business becomes more popular, you don't have to worry about setting up more servers on your own to handle the load.
In a previous blog post title Going Headless, we learned about what a headless CMS is. In this post, we covered all the surrounding pieces that bring a headless CMS to life. In the next part of this series, we will take a look at a more detailed example of a complete JAMstack site built with the TakeShape headless CMS. Once we start putting all of these pieces together, we will see how much we can optimize for our own unique situations.
Please do not hestitate to contact us about promotion for foreign markets, client acquisition and support, and other such subjects.
© copyright AQUARING Global Strategy Inc. All Rights Reserved.