Feature Updates – Kinsta® https://kinsta.com Fast, secure, premium hosting solutions Mon, 24 Jul 2023 16:05:48 +0000 en-US hourly 1 https://wordpress.org/?v=6.1.3 https://kinsta.com/wp-content/uploads/2023/03/cropped-favicon-32x32.png Feature Updates – Kinsta® https://kinsta.com 32 32 Persistent Storage: More Long-Term Memory for Application Hosting https://kinsta.com/feature-updates/persistent-storage/ https://kinsta.com/feature-updates/persistent-storage/#respond Fri, 21 Jul 2023 16:29:57 +0000 https://kinsta.com/?post_type=feature-updates&p=159860 Kinsta Application Hosting customers have another option for persistent data storage now that they can add virtual disk space to their projects. This persistent storage complements ...

The post Persistent Storage: More Long-Term Memory for Application Hosting appeared first on Kinsta®.

]]>
Kinsta Application Hosting customers have another option for persistent data storage now that they can add virtual disk space to their projects.

This persistent storage complements the ability to connect applications to persistent content in databases and third-party file stores. As the name implies, the data saved to persistent storage lives on across builds and deployments of the applications themselves.

This kind of storage could be essential to applications that accumulate disk-stored data as they run.

By way of example, Evelin Szabados, Tech Lead for the team of developers behind Kinsta’s Application Hosting platform, says: “Imagine a sale tax calculating function that creates data maintained and shared within an application, or a machine learning application with large datasets that need to be stored and accessed by multiple processes simultaneously.”

Persistent Storage and Containerized Applications

Szabados says that an ephemeral existence for both code and data is the default behavior for applications in a containerized environment like that used at Kinsta.

“One of the key attributes of containerized application deployments is that the containers created during deployments get destroyed and re-created on each subsequent deployment,” she says. “This means data generated by the application also get destroyed.”

Szabados says Kinsta uses the container orchestration platform Kubernetes, which offers persistent volumes (PVs) as an alternative to ephemeral storage.

“PVs can be attached to the application’s pods — the smallest deployable units in Kubernetes,” she says. “Pods are basically equal to the processes defined by Application Hosting customers.”

Persistent storage can be associated with two of the three process types available to applications at Kinsta: the web service and the background worker.

As Szabados explains: “Each process represents a pod, and each can have its own persistent storage.”

Adding Persistent Storage to Your Application

Application Hosting customers manage persistent storage through the same MyKinsta dashboard used to create, edit, and monitor applications.

When creating a new application within MyKinsta, the Resources tab now includes a Disk option for web service and background worker processes. (Disks are not available for the cron job process type.)

An application will have just one web service process, but you can create multiple background worker processes and optionally add disk space to any of them.

Each “disk” represents a Kubernetes persistent volume.

Within the Resources tab, Click on Disk to expand its dialog:

Screenshot: The location of the 'Disks' dialog within MyKinsta.
Locating the Disks dialog for persistent storage while adding an application.

Within the Disk dialog, you can specify a mount path for your new disk:

Screenshot: Adding a mount path for a disk within MyKinsta.
Specifying a mount path when adding a disk for persistent storage.

You can choose a mount path that suits your application’s configuration, except for the following:

  • /etc/
  • /var/
  • /lib/
  • /usr/local/
  • /mnt/
  • /app/
  • /workspace/
  • /layers/
  • /root/
  • /

After entering the mount path, select the storage space your app requires:

Screenshot: Choosing the size of a disk within MyKinsta.
Selecting from disk-size options when adding persistent storage.

Note: You can increase the size of a disk at any time, but you can’t reduce its size. (To deploy the same project with less disk space, create a new application with your preferred specifications.)

Editing Your Application’s Disk Settings

To change storage settings, navigate to Applications to find your application in MyKinsta and click Disks in the left-hand menu. Now click the pencil icon under Actions:

Screenshot: Locating the pencil icon to start editing storage option.
Selecting a process to edit its persistent storage settings.

Below, we are changing the disk’s mount path (formerly /var/lib/data) to /var/lib/content:

Screenshot: Changing a persistent disk's mount path.
An example of changing the mount path for existing persistent storage.

After clicking the Finish editing button, we can use the Kinsta Web Terminal to confirm that the change to the mount path happens immediately:

Screenshot: Accessing persistent storage via the command line on its mount path.
Using Web Terminal to access and view the mounted persistent storage volume.

We’ll Keep Your Persistent Data Safe

Kinsta generates daily backups for persistent data, keeping each backup for 7 days. Our Support team can restore a backup on request.

Remember that restoring a backup will overwrite content currently in persistent storage. And deleting the application itself will eliminate all of its backups.

Deploy Your Application With Persistent Storage Today

Do you have an idea for an application that could use persistent storage? Here’s how you can get up to speed quickly with Kinsta’s Application Hosting platform:

  1. Browse our growing library of quick-start examples to see how to deploy your favorite technologies from Git hosts like GitHub, GitLab, and Bitbucket.
  2. Review our official Persistent Storage documentation.
  3. Create your MyKinsta account and start building risk-free!

When you deploy, your code and its persistent storage services will run on the Google Cloud Platform’s top-tier infrastructure, backed by the platform’s C2 virtual machines.

That’s a powerful home for your application and its data.

The post Persistent Storage: More Long-Term Memory for Application Hosting appeared first on Kinsta®.

]]>
https://kinsta.com/feature-updates/persistent-storage/feed/ 0
Continuous Database Optimization: Always Working for You https://kinsta.com/feature-updates/continuous-database-optimization/ https://kinsta.com/feature-updates/continuous-database-optimization/#respond Tue, 27 Jun 2023 08:02:05 +0000 https://kinsta.com/?post_type=feature-updates&p=157593 In late 2019 we introduced a system that automatically fine-tuned low-level database settings for all our Managed WordPress Hosting customers. Back then, our auto-optimization routines would ...

The post Continuous Database Optimization: Always Working for You appeared first on Kinsta®.

]]>
In late 2019 we introduced a system that automatically fine-tuned low-level database settings for all our Managed WordPress Hosting customers. Back then, our auto-optimization routines would run once a week for each customer’s WordPress site, looking for ways to make its database operate more efficiently.

Now, automatic database optimization happens continuously, 24 hours a day.

At Kinsta, each Managed WordPress site is backed by an open-source MariaDB relational database, a drop-in replacement for MySQL, the long-time workhorse of the web hosting world.

The MariaDB/MySQL technology and its InnoDB storage engine use data caching to speed up responses to queries. Caches use up chunks of RAM, as do other database actions, like wrangling connections. By tweaking the settings for such processes on the fly, our automated optimization helps ensure customer databases are ready to handle the loads they can expect without gobbling up memory they don’t need.

Additional Tips for WordPress DB Optimization

It’s important to highlight that Kinsta’s automatic database optimization works at a low level and does not involve optimizing tables in the RDBMS. This means there are additional steps you can take to further optimize your WordPress database.

The database behind a WordPress site often ends up with a significant amount of unused records in a table known as wp_options. You might find data from long-removed plugins and themes in that table, taking up space and slowing responses to queries. That’s why we’ve got some tips on cleaning up wp_options auto-loaded data.

On top of this, Kinsta customers can run wp db optimize on the command line of an SSH session, which copies and rebuilds database tables, loading all the valid records in index order for more efficient querying.

We Make Your WordPress Site Faster

When thinking about WordPress optimization, remember that your hosting platform can affect site performance. Kinsta’s Managed WordPress Hosting is powered by Google Cloud’s lightning-fast C2 virtual machines and its low-latency Premium Tier network.

On top of that is our blazingly fast CDN with 260+ PoPs and HTTP/3 support, edge caching, code minification, early hints, and built-in image optimization.

Find a Managed WordPress Hosting package here at Kinsta that’s right for you.

The post Continuous Database Optimization: Always Working for You appeared first on Kinsta®.

]]>
https://kinsta.com/feature-updates/continuous-database-optimization/feed/ 0
Introducing Kinsta API: The Power of Automation for Site Management https://kinsta.com/feature-updates/kinsta-api/ https://kinsta.com/feature-updates/kinsta-api/#respond Fri, 26 May 2023 16:42:17 +0000 https://kinsta.com/?p=155092&post_type=feature-updates&preview_id=155092 Traditionally, our services at Kinsta have relied on manual interactions through MyKinsta, limiting the scope to human interactions only. But hold on tight because everything is ...

The post Introducing Kinsta API: The Power of Automation for Site Management appeared first on Kinsta®.

]]>
Traditionally, our services at Kinsta have relied on manual interactions through MyKinsta, limiting the scope to human interactions only. But hold on tight because everything is about to change!

We are introducing the game-changing Kinsta API (Application Programming Interface).

Say goodbye to the limitations of the past and enjoy a revolutionary era where machines can seamlessly interact with our services. This means you can now perform tasks on your Kinsta site without logging in to MyKinsta.

What’s Possible With Kinsta API

You can now perform tasks remotely with unmatched ease and efficiency. Here are the use cases of the Kinsta API:

1. Reporting

With Kinsta’s API, you can seamlessly integrate Kinsta Services into your internal tracking systems. Whether you’re an agency seeking to list all your client’s WordPress sites, applications, and databases, or a data enthusiast looking to build custom dashboards, our API lets you retrieve Kinsta analytics data effortlessly.

2. Scheduled Tasks

No more late-night manual tasks impacting your site’s performance because with Kinsta API, you can create applications to schedule tasks, ensuring minimal disruption to your visitors. Whether it’s clearing the cache or executing critical operations, our API lets you automate these tasks effortlessly.

3. WordPress Site Creation

Using the Kinsta API, you can create a new WordPress site/installation automatically. You are also able to take control of your site’s functionality by installing popular plugins, such as WooCommerce, and Yoast SEO, right from the API.

But that’s not all! With Kinsta API, you can also create WordPress Multisite installations and configure a subdomain (is_subdomain_multisite TRUE) or subdirectory (is_subdomain_multisite FALSE) installation.

Getting Started With Kinsta API

To start using the Kinsta API, you must have an active account on Kinsta with at least one WordPress site, application, or database in MyKinsta. Also, you need to generate an API key to authenticate and access your account.

Authentication and User Access

To generate an API key:

  1. Go to your MyKinsta dashboard.
  2. Navigate to the API Keys page (Your name > Company settings > API Keys).
  3. Click Create API Key.
  4. Choose an expiration or set a custom start date and number of hours for the key to expire.
  5. Give the key a unique name.
  6. Click Generate.
Generate an API key
Create API Key on MyKinsta.

When the API key is created, make sure you copy it and store it somewhere safe, as this is the only time you can see it.

You can generate multiple API keys, which are listed on the API Keys page. If you need to revoke an API key, click Revoke next to the one you want to revoke.

Permissions

Implementing multiple access levels for API keys helps you control access to APIs. For Kinsta API, the level of access to the API will depend on the user’s role, as company owners, administrators, and developers can create API keys.

For example, an API key generated by a company developer will not have the same access as a key generated by a company owner or administrator.

Enjoy Automation With Kinsta API

Once you have your API key, you can proceed to enjoy automation with the Kinsta API. The Kinsta API reference documentation provides a detailed explanation of each endpoint, how to query them, the necessary parameters, and possible responses, along with request and response samples.

For example, to get a list of your company’s applications, use the applications endpoint. This endpoint requires the company parameter with a value of your company ID (you can get this information on your Billing Details page in MyKinsta). When you send a GET request to the endpoint (https://api.kinsta.com/v2/applications?company=UNIQUE_COMPANY_ID), it will return JSON data that includes your company’s applications:

{
    "company": {
        "apps": {
            "items": [
                {
                    "id": "ccd26ccb-8e78-4cf0-a5b2-2ab5d1a23760",
                    "name": "chatgpt-clone-g9q10",
                    "display_name": "chatgpt-clone",
                    "status": "deploymentSuccess"
                },
                {
                    "id": "1adf1e9c-f35e-491e-bec9-fe00ad9f2086",
                    "name": "kinsta-developer-portfolio-ir8w8",
                    "display_name": "Kinsta-developer-portfolio",
                    "status": "deploymentSuccess"
                },
            ]
        }
    }
}

There is more to what you can do with the Kinsta API, as documented in the Kinsta API reference documentation.

Check Operation Status

For potentially long-running operations (e.g. site creation, clearing cache, restarting PHP, etc.), the API does not immediately respond with the result. This helps prevent a potential blocked server thread or gateway timeout due to an operation taking a long time.

To check the status of an operation, use the operations endpoint. This will return the status of the operation. For example:

{
  "status": 202,
  "message": "Operation in progress",
  "data": null
}

This operations, endpoint requires the operation_id as a path parameter which you’ll get in a 202 Accepted response when you perform any long-running operation. For more details and examples, see the operations reference.

Rate Limit

To protect our API from being flooded with too many requests, the number of requests per minute is limited to 60. The exception will be for site creation, which is limited to 5 requests per minute.

To see your current rate limit status, check the RateLimit headers in your most recent API response:

RateLimit-Limit: 60
RateLimit-Remaining: 50
RateLimit-Reset: 60

Currently, it’s not possible to increase the rate limit.

Troubleshooting

If you make a request to an endpoint that your API key doesn’t have access to, the API responds with an error message to let you know you do not have access. If you need access to that endpoint, a company owner or administrator can generate an API key for you.

Unleash the power of automation and increase efficiency with the convenience of Kinsta API. Get started today!

The post Introducing Kinsta API: The Power of Automation for Site Management appeared first on Kinsta®.

]]>
https://kinsta.com/feature-updates/kinsta-api/feed/ 0