| <!DOCTYPE html> |
| <html lang="en"> |
| <head> |
| <meta charset="utf-8"> |
| <meta name="viewport" content="width=device-width,initial-scale=1"> |
| <title>Troubleshooting slow workspaces :: Eclipse Che Documentation</title> |
| <link rel="canonical" href="https://www.eclipse.org/che/docs/stable/end-user-guide/troubleshooting-slow-workspaces/"> |
| <meta name="description" content="Troubleshooting slow workspaces"> |
| <meta name="keywords" content="user-guide, troubleshooting-slow-workspaces"> |
| <meta name="generator" content="Antora 3.0.2"> |
| <link rel="stylesheet" href="../../../../docs/_/css/site.css"> |
| <link rel="stylesheet" href="../../../../docs/_/css/extra.css"> |
| <link rel="stylesheet" href="../../../../docs/_/font-awesome-4.7.0/css/font-awesome.min.css"> |
| <link rel="icon" href="../../../../docs/_/img/favicon.ico" type="image/x-icon"> |
| <script>var uiRootPath = '../../../../docs/_'</script> |
| <script async src="https://www.googletagmanager.com/gtag/js?id=UA-37306001-2"></script> |
| <script>function gtag(){dataLayer.push(arguments)};window.dataLayer=window.dataLayer||[];gtag('js',new Date());gtag('config','UA-37306001-2')</script> |
| <script>var uiRootPath = '../../../../docs/_'</script> |
| </head> |
| <body class="article"> |
| <header class="header"> |
| <nav class="navbar"> |
| <div class="navbar-brand"> |
| <div class="navbar-item"> |
| <button class="navbar-burger" data-target="topbar-nav"> |
| <span></span> |
| <span></span> |
| <span></span> |
| </button> |
| <img src="../../../../docs/_/img/icon-eclipse-che.svg" class="navbar-logo" alt="Eclipse Che logo"> |
| <a href="https://www.eclipse.org/che/docs/index.html">Eclipse Che Documentation</a> |
| </div> |
| </div> |
| <div id="topbar-nav" class="navbar-menu"> |
| <div class="navbar-end"> |
| <div class="navbar-item search hide-for-print"> |
| <div id="search-field" class="field"> |
| <input id="search-input" type="text" placeholder="Search the docs"> |
| </div> |
| </div> |
| <a class="navbar-item" href="https://www.eclipse.org/che/">Home</a> |
| <a class="navbar-item" href="https://che.eclipseprojects.io/">Blog</a> |
| <a class="navbar-item" href="https://github.com/eclipse/che">Source Code</a> |
| </div> |
| </div> |
| </nav> |
| </header> |
| <div class="body"> |
| <div class="nav-container" data-component="docs" data-version="stable"> |
| <aside class="nav"> |
| <div class="panels"> |
| <div class="nav-panel-menu is-active" data-panel="menu"> |
| <nav class="nav-menu"> |
| <h3 class="title"><a href="../../overview/introduction-to-eclipse-che/">Documentation</a></h3> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="0"> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../../overview/introduction-to-eclipse-che/">Introduction to Che</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="0"> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../hosted-che/hosted-che/">Eclipse Che hosted by Red Hat</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../hosted-che/try-in-web-ide-github-action/">Try in Web IDE GitHub action</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="0"> |
| <button class="nav-item-toggle"></button> |
| <span class="nav-text">User Guide</span> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../adopting-che/">Adopting Che</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../developer-workspaces/">Developer workspaces</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../first-time-contributors/">Badge for first-time contributors</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../benefits-of-pull-requests-review-in-che/">Reviewing pull and merge requests</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../user-onboarding/">User onboarding</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../starting-a-new-workspace-with-a-clone-of-a-git-repository/">Starting a new workspace with a clone of a Git repository</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../optional-parameters-for-the-urls-for-starting-a-new-workspace/">Optional parameters for the URLs for starting a new workspace</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../url-parameter-concatenation/">URL parameter concatenation</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../url-parameter-for-the-workspace-ide/">URL parameter for the workspace IDE</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../url-parameter-for-starting-duplicate-workspaces/">URL parameter for starting duplicate workspaces</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../url-parameter-for-the-devfile-file-name/">URL parameter for the devfile file name</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../url-parameter-for-the-devfile-file-path/">URL parameter for the devfile file path</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../basic-actions-you-can-perform-on-a-workspace/">Basic actions you can perform on a workspace</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../authenticating-yourself-to-a-git-server-from-a-workspace/">Authenticating yourself to a Git server from a workspace</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../customizing-workspace-components/">Customizing workspace components</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../selecting-a-workspace-ide/">Selecting a workspace IDE</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../selecting-an-ide-by-using-a-url-parameter/">Selecting an in-browser IDE for a new workspace by using a URL parameter</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../specifying-an-in-browser-ide-for-a-git-repository-by-using-che-editor.yaml/">Specifying an in-browser IDE for a Git repository by using <code>che-editor.yaml</code></a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../using-credentials-and-configurations-in-workspaces/">Using credentials and configurations in workspaces</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../using-a-git-credentials-store/">Using a Git credentials store</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../enabling-artifact-repositories-in-a-restricted-environment/">Enabling artifact repositories in a restricted environment</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../enabling-maven-artifact-repositories/">Maven</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../enabling-gradle-artifact-repositories/">Gradle</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../enabling-npm-artifact-repositories/">npm</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../enabling-python-artifact-repositories/">Python</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../enabling-go-artifact-repositories/">Go</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../enabling-nuget-artifact-repositories/">NuGet</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../creating-image-pull-secrets/">Creating image pull Secrets</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../mounting-secrets/">Mounting Secrets</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../mounting-configmaps/">Mounting ConfigMaps</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../requesting-persistent-storage-for-workspaces/">Requesting persistent storage for workspaces</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../integrating-with-kubernetes/">Integrating with Kubernetes</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../automatic-token-injection/">Automatic Kubernetes token injection</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../navigating-che-from-openshift-developer-perspective/">Navigating Che from OpenShift Developer Perspective</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../navigating-openshift-web-console-from-che/">Navigating OpenShift web console from Che</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../troubleshooting-che/">Troubleshooting Che</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../viewing-che-workspaces-logs/">Viewing Che workspaces logs</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../investigating-failures-at-a-workspace-start-using-the-verbose-mode/">Troubleshooting workspace start failures</a> |
| </li> |
| <li class="nav-item is-current-page" data-depth="2"> |
| <a class="nav-link" href="./">Troubleshooting slow workspaces</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../troubleshooting-network-problems/">Troubleshooting network problems</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../adding-a-vscode-extension/">Adding a Visual Studio Code extension to a workspace</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="0"> |
| <button class="nav-item-toggle"></button> |
| <span class="nav-text">Administration Guide</span> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/preparing-the-installation/">Preparing the installation</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/supported-platforms/">Supported platforms</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/architecture-overview/">Architecture</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/server-components/">Server components</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/che-operator/">Che operator</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/devworkspace-operator/">Dev Workspace operator</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/gateway/">Gateway</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/dashboard/">User dashboard</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/devfile-registries/">Devfile registries</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/che-server/">Che server</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/postgresql/">PostgreSQL</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/plug-in-registry/">Plug-in registry</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/user-workspaces/">User workspaces</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/calculating-che-resource-requirements/">Calculating Che resource requirements</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/installing-che/">Installing Che</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/installing-the-chectl-management-tool/">Installing the chectl management tool</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/installing-che-on-openshift-using-cli/">Installing Che on OpenShift using CLI</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/installing-che-on-openshift-using-the-web-console/">Installing Che on OpenShift using the web console</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/installing-che-in-a-restricted-environment/">Installing Che in a restricted environment</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/installing-che-locally/">Installing Che locally</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/installing-che-on-red-hat-openshift-local/">Installing Che on Red Hat OpenShift Local</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/installing-che-on-minikube/">Installing Che on Minikube</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-che/">Configuring Che</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/understanding-the-checluster-custom-resource/">Understanding the <code>CheCluster</code> Custom Resource</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/using-chectl-to-configure-the-checluster-custom-resource-during-installation/">Using chectl to configure the <code>CheCluster</code> Custom Resource during installation</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/using-the-cli-to-configure-the-checluster-custom-resource/">Using the CLI to configure the CheCluster Custom Resource</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/checluster-custom-resource-fields-reference/"><code>CheCluster</code> Custom Resource fields reference</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-namespace-provisioning/">Configuring namespaces</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-workspace-target-namespace/">Configuring namespace name</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/provisioning-namespaces-in-advance/">Provisioning namespaces in advance</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-server-components/">Configuring server components</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/mounting-a-secret-as-a-file-or-an-environment-variable-into-a-container/">Mounting a Secret or a ConfigMap as a file or an environment variable into a Eclipse Che container</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/advanced-configuration-options-for-the-che-server-component/">Advanced configuration options for Che server</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-workspaces-globally/">Configuring workspaces globally</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-the-number-of-workspaces-that-a-user-can-create/">Configuring the number of workspaces that a user can create</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/deploying-che-with-support-for-git-repositories-with-self-signed-certificates/">Git with self-signed certificates</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-workspaces-nodeselector/">Configuring workspaces nodeSelector</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/caching-images-for-faster-workspace-start/">Caching images for faster workspace start</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/defining-the-list-of-images-to-pull/">Defining the list of images</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/defining-the-memory-parameters-for-the-image-puller/">Defining the memory settings</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/installing-image-puller-on-openshift-using-the-web-console/">Installing Image Puller on OpenShift using the web console</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/installing-image-puller-on-openshift-using-cli/">Installing Image Puller on OpenShift using CLI</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-observability/">Configuring observability</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/che-theia-workspaces/">Che-Theia workspaces</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/the-woopra-telemetry-plugin/">The Woopra telemetry plug-in</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/creating-a-telemetry-plugin/">Creating a telemetry plug-in</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-server-logging/">Configuring server logging</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/collecting-logs-using-chectl/">Collecting logs using chectl</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/monitoring-with-prometheus-and-grafana/">Monitoring with Prometheus and Grafana</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/installing-prometheus-and-grafana/">Installing Prometheus and Grafana</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/monitoring-the-dev-workspace-operator/">Monitoring the Dev Workspace Operator</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/monitoring-che/">Monitoring Che Server</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-networking/">Configuring networking</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-che-hostname/">Configuring Che hostname</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/importing-untrusted-tls-certificates/">Importing untrusted TLS certificates to Che</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-ingresses/">Configuring Kubernetes Ingress</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-routes/">Configuring OpenShift Route</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/configuring-storage/">Configuring storage</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/installing-che-using-storage-classes/">Installing Che using storage classes</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/branding/">Branding</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/branding-che-theia/">Branding Che-Theia</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/managing-identities-and-authorizations/">Managing identities and authorizations</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/oauth-for-github-gitlab-or-bitbucket/">OAuth for GitHub, GitLab, or Bitbucket</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/configuring-oauth-2-for-github/">Configuring OAuth 2.0 for GitHub</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/configuring-oauth-2-for-gitlab/">Configuring OAuth 2.0 for GitLab</a> |
| </li> |
| <li class="nav-item" data-depth="4"> |
| <a class="nav-link" href="../../administration-guide/configuring-oauth-1-for-bitbucket/">Configuring OAuth 1.0 for Bitbucket</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/configuring-the-administrative-user/">Configuring the administrative user</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../administration-guide/removing-user-data/">Removing user data</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../../administration-guide/managing-workloads-using-the-che-server-api/">Using the Che server API</a> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../administration-guide/upgrading-che/">Upgrading Che</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/upgrading-the-chectl-management-tool/">Upgrading the chectl management tool</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/upgrading-che-7-41-on-openshift/">Upgrading Che 7.41 on Red Hat OpenShift</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/specifying-the-update-approval-strategy/">Specifying the update approval strategy</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/upgrading-che-using-the-web-console/">Upgrading Che using the OpenShift web console</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/upgrading-che-using-the-cli-management-tool/">Upgrading Che using the CLI management tool</a> |
| </li> |
| <li class="nav-item" data-depth="2"> |
| <a class="nav-link" href="../../administration-guide/upgrading-che-using-the-cli-management-tool-in-restricted-environment/">Upgrading Che in a restricted environment</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../../administration-guide/uninstalling-che/">Uninstalling Che</a> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="0"> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../extensions/extensions/">Extensions</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="2"> |
| <button class="nav-item-toggle"></button> |
| <a class="nav-link" href="../../extensions/openshift-connector-overview/">OpenShift Connector</a> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../extensions/features-of-openshift-connector/">Features of OpenShift Connector</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../extensions/installing-openshift-connector-in-che/">Installing OpenShift Connector in Eclipse Che</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../extensions/authenticating-with-openshift-connector-from-che/">Authenticating with OpenShift Connector from Eclipse Che</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../extensions/creating-components-with-openshift-connector-in-che/">Creating Components with OpenShift Connector in Eclipse Che</a> |
| </li> |
| <li class="nav-item" data-depth="3"> |
| <a class="nav-link" href="../../extensions/connecting-source-code-from-github-to-a-openshift-component-using-openshift-connector/">Connecting source code from GitHub to a OpenShift Component</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </li> |
| <li class="nav-item" data-depth="0"> |
| <ul class="nav-list"> |
| <li class="nav-item" data-depth="1"> |
| <a class="nav-link" href="../../glossary/che-glossary/">Che glossary</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </nav> |
| </div> |
| <div class="nav-panel-explore" data-panel="explore"> |
| <div class="context"> |
| <span class="title">Documentation</span> |
| <span class="version">stable</span> |
| </div> |
| <ul class="components"> |
| <li class="component is-current"> |
| <a class="title" href="../../overview/introduction-to-eclipse-che/">Documentation</a> |
| <ul class="versions"> |
| <li class="version"> |
| <a href="../../../next/overview/introduction-to-eclipse-che/">next</a> |
| </li> |
| <li class="version"> |
| <a href="../../../che-7/overview/introduction-to-eclipse-che/">old (7.41)</a> |
| </li> |
| <li class="version is-current is-latest"> |
| <a href="../../overview/introduction-to-eclipse-che/">stable</a> |
| </li> |
| </ul> |
| </li> |
| </ul> |
| </div> |
| </div> |
| </aside> |
| </div> |
| <main class="article"> |
| <div class="toolbar" role="navigation"> |
| <button class="nav-toggle"></button> |
| <a href="../../overview/introduction-to-eclipse-che/" class="home-link"></a> |
| <nav class="breadcrumbs" aria-label="breadcrumbs"> |
| <ul> |
| <li><a href="../../overview/introduction-to-eclipse-che/">Documentation</a></li> |
| <li>User Guide</li> |
| <li><a href="../troubleshooting-che/">Troubleshooting Che</a></li> |
| <li><a href="./">Troubleshooting slow workspaces</a></li> |
| </ul> |
| </nav> |
| <div class="page-versions"> |
| <button class="version-menu-toggle" title="Show other versions of page">stable</button> |
| <div class="version-menu"> |
| <a class="version" href="../../../next/end-user-guide/troubleshooting-slow-workspaces/">next</a> |
| <a class="version" href="../../../che-7/end-user-guide/troubleshooting-slow-workspaces/">old (7.41)</a> |
| <a class="version is-current" href="./">stable</a> |
| </div> |
| </div> |
| <div class="edit-this-page"><a href="https://github.com/eclipse/che-docs/edit/7.50.x/modules/end-user-guide/pages/troubleshooting-slow-workspaces.adoc">Edit this Page</a></div> |
| </div> |
| <div class="content"> |
| <aside class="toc sidebar" data-title="Contents" data-levels="2"> |
| <div class="toc-menu"></div> |
| </aside> |
| <article class="doc"> |
| <h1 class="page">Troubleshooting slow workspaces</h1> |
| <div id="preamble"> |
| <div class="sectionbody"> |
| <div class="paragraph"> |
| <p>Sometimes, workspaces can take a long time to start. Tuning can reduce this start time. Depending on the options, administrators or users can do the tuning.</p> |
| </div> |
| <div class="paragraph"> |
| <p>This section includes several tuning options for starting workspaces faster or improving workspace runtime performance.</p> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="improving-workspace-start-time_che"><a class="anchor" href="#improving-workspace-start-time_che"></a>Improving workspace start time</h2> |
| <div class="sectionbody"> |
| <div class="dlist"> |
| <dl> |
| <dt class="hdlist1">Caching images with Image Puller</dt> |
| <dd> |
| <div class="paragraph"> |
| <p><em>Role: Administrator</em></p> |
| </div> |
| <div class="paragraph"> |
| <p>When starting a workspace, Kubernetes pulls the images from the registry. A workspace can include many containers meaning that Kubernetes pulls Pod’s images (one per container). Depending on the size of the image and the bandwidth, it can take a long time.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Image Puller is a tool that can cache images on each of Kubernetes nodes. As such, pre-pulling images can improve start times. See <a href="../../administration-guide/caching-images-for-faster-workspace-start/" class="xref page">Caching images for faster workspace start</a>.</p> |
| </div> |
| </dd> |
| <dt class="hdlist1">Choosing better storage type</dt> |
| <dd> |
| <div class="paragraph"> |
| <p><em>Role: Administrator and user</em></p> |
| </div> |
| <div class="paragraph"> |
| <p>Every workspace has a shared volume attached. This volume stores the project files, so that when restarting a workspace, changes are still available. Depending on the storage, attach time can take up to a few minutes, and I/O can be slow.</p> |
| </div> |
| </dd> |
| <dt class="hdlist1">Installing offline</dt> |
| <dd> |
| <div class="paragraph"> |
| <p><em>Role: Administrator</em></p> |
| </div> |
| <div class="paragraph"> |
| <p>Components of Che are OCI images. Set up Eclipse Che in offline mode (air-gap scenario) to reduce any extra download at runtime because everything needs to be available from the beginning. See <a href="../../administration-guide/installing-che-in-a-restricted-environment/" class="xref page">Installing Che in a restricted environment on OpenShift</a>.</p> |
| </div> |
| </dd> |
| <dt class="hdlist1">Optimizing workspace plug-ins</dt> |
| <dd> |
| <div class="paragraph"> |
| <p><em>Role: User</em></p> |
| </div> |
| <div class="paragraph"> |
| <p>When selecting various plug-ins, each plug-in can bring its own sidecar container, which is an OCI image. Kubernetes pulls the images of these sidecar containers.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Reduce the number of plug-ins, or disable them to see if start time is faster. See also <a href="../../administration-guide/caching-images-for-faster-workspace-start/" class="xref page">Caching images for faster workspace start</a>.</p> |
| </div> |
| </dd> |
| <dt class="hdlist1">Reducing the number of public endpoints</dt> |
| <dd> |
| <div class="paragraph"> |
| <p><em>Role: Administrator</em></p> |
| </div> |
| <div class="paragraph"> |
| <p>For each endpoint, Kubernetes is creating Kubernetes Ingress or OpenShift Route objects. Depending on the underlying configuration, this creation can be slow.</p> |
| </div> |
| <div class="paragraph"> |
| <p>To avoid this problem, reduce the exposure. For example, to automatically detect a new port listening inside containers and redirect traffic for the processes using a local IP address (<code>127.0.0.1</code>), the Che-Theia IDE plug-in has three optional routes.</p> |
| </div> |
| <div class="paragraph"> |
| <p>By reducing the number of endpoints and checking endpoints of all plug-ins, workspace start can be faster.</p> |
| </div> |
| </dd> |
| <dt class="hdlist1">CDN configuration</dt> |
| <dd> |
| <div class="paragraph"> |
| <p>The IDE editor uses a CDN (Content Delivery Network) to serve content. Check that the content uses a CDN to the client (or a local route for offline setup).</p> |
| </div> |
| <div class="paragraph"> |
| <p>To check that, open Developer Tools in the browser and check for <code>vendors</code> in the <strong>Network</strong> tab. <code>vendors.<random-id>.js</code> or <code>editor.main.*</code> should come from CDN URLs.</p> |
| </div> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| </div> |
| <div class="sect1"> |
| <h2 id="improving-workspace-runtime-performance_che"><a class="anchor" href="#improving-workspace-runtime-performance_che"></a>Improving workspace runtime performance</h2> |
| <div class="sectionbody"> |
| <div class="dlist"> |
| <dl> |
| <dt class="hdlist1">Providing enough CPU resources</dt> |
| <dd> |
| <div class="paragraph"> |
| <p>Plug-ins consume CPU resources. For example, when a plug-in provides IntelliSense features, adding more CPU resources may lead to better performance.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Ensure the CPU settings in the devfile definition, <code>devfile.yaml</code>, are correct:</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-yaml hljs" data-lang="yaml">apiVersion: 1.0.0 |
| |
| components: |
| - |
| type: chePlugin |
| id: id/of/plug-in |
| cpuLimit: 1360Mi <i class="conum" data-value="1"></i><b>(1)</b> |
| cpuRequest: 100m <i class="conum" data-value="2"></i><b>(2)</b></code></pre> |
| </div> |
| </div> |
| <div class="colist arabic"> |
| <table> |
| <tr> |
| <td><i class="conum" data-value="1"></i><b>1</b></td> |
| <td>Specifies the CPU limit for the plug-in.</td> |
| </tr> |
| <tr> |
| <td><i class="conum" data-value="2"></i><b>2</b></td> |
| <td>Specifies the CPU request for the plug-in.</td> |
| </tr> |
| </table> |
| </div> |
| </dd> |
| <dt class="hdlist1">Providing enough memory</dt> |
| <dd> |
| <div class="paragraph"> |
| <p>Plug-ins consume CPU and memory resources. For example, when a plug-in provides IntelliSense features, collecting data can consume all the memory allocated to the container.</p> |
| </div> |
| <div class="paragraph"> |
| <p>Providing more memory to the plug-in can increase performance. Ensure about the correctness of memory settings:</p> |
| </div> |
| <div class="ulist"> |
| <ul> |
| <li> |
| <p>in the plug-in definition - <code>meta.yaml</code> file</p> |
| </li> |
| <li> |
| <p>in the devfile definition - <code>devfile.yaml</code> file</p> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-yaml hljs" data-lang="yaml">apiVersion: v2 |
| |
| spec: |
| containers: |
| - image: "quay.io/my-image" |
| name: "vscode-plugin" |
| memoryLimit: "512Mi" <i class="conum" data-value="1"></i><b>(1)</b> |
| extensions: |
| - https://link.to/vsix</code></pre> |
| </div> |
| </div> |
| <div class="colist arabic"> |
| <table> |
| <tr> |
| <td><i class="conum" data-value="1"></i><b>1</b></td> |
| <td>Specifies the memory limit for the plug-in.</td> |
| </tr> |
| </table> |
| </div> |
| <div class="paragraph"> |
| <p>In the devfile definition (<code>devfile.yaml</code>):</p> |
| </div> |
| <div class="listingblock"> |
| <div class="content"> |
| <pre class="highlightjs highlight"><code class="language-yaml hljs" data-lang="yaml">apiVersion: 1.0.0 |
| |
| components: |
| - |
| type: chePlugin |
| id: id/of/plug-in |
| memoryLimit: 1048M <i class="conum" data-value="1"></i><b>(1)</b> |
| memoryRequest: 256M</code></pre> |
| </div> |
| </div> |
| <div class="colist arabic"> |
| <table> |
| <tr> |
| <td><i class="conum" data-value="1"></i><b>1</b></td> |
| <td>Specifies the memory limit for this plug-in.</td> |
| </tr> |
| </table> |
| </div> |
| </li> |
| </ul> |
| </div> |
| </dd> |
| </dl> |
| </div> |
| </div> |
| </div> |
| </article> |
| </div> |
| </main> |
| </div> |
| <footer class="footer"> |
| <div> |
| <a href="https://www.eclipse.org/che/sitemap.xml" target="_blank">Site Map</a> | |
| <a href="https://www.eclipse.org" target="_blank">Eclipse Foundation</a> | |
| <a href="https://www.eclipse.org/legal/privacy.php" target="_blank">Privacy Policy</a> | |
| <a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank">Terms of Use</a> | |
| <a href="https://www.eclipse.org/legal/epl-2.0/" target="_blank">Eclipse Public License</a> | |
| <a href="https://www.eclipse.org/legal" target="_blank">Legal Resources</a></div> |
| </footer> |
| |
| <script src="../../../../docs/_/js/site.js"></script> |
| <script async src="../../../../docs/_/js/vendor/highlight.js"></script> |
| <script src="../../../../docs/_/js/vendor/lunr.js"></script> |
| <script src="../../../../docs/_/js/search-ui.js" id="search-ui-script" data-site-root-path="../../../.." data-snippet-length="142" data-stylesheet="../../../../docs/_/css/search.css"></script> |
| <script async src="../../../../search-index.js"></script> |
| </body> |
| </html> |