diff --git a/core/includes/common.inc b/core/includes/common.inc
index 383dd29..5ca721f 100644
--- a/core/includes/common.inc
+++ b/core/includes/common.inc
@@ -7211,12 +7211,13 @@ function drupal_get_filetransfer_info() {
 function queue($name, $reliable = FALSE) {
   static $queues;
   if (!isset($queues[$name])) {
-    $class = variable_get('queue_class_' . $name, NULL);
+
+    $class = config('system.queue')->get('class.' . $name);
     if ($class && $reliable && in_array('Drupal\Core\Queue\ReliableQueueInterface', class_implements($class))) {
-      $class = variable_get('queue_default_reliable_class', 'Drupal\Core\Queue\System');
+      $class = config('system.queue')->get('class.default_reliable');
     }
     elseif (!$class) {
-      $class = variable_get('queue_default_class', 'Drupal\Core\Queue\System');
+      $class = config('system.queue')->get('class.default');
     }
     $queues[$name] = new $class($name);
   }
diff --git a/core/modules/system/system.install b/core/modules/system/system.install
index 25c7adb..d887873 100644
--- a/core/modules/system/system.install
+++ b/core/modules/system/system.install
@@ -2214,6 +2214,28 @@ function system_update_8033() {
 }
 
 /**
+* Convert queue variables to configuration system.
+*
+* @ingroup config_upgrade
+*/
+function system_update_8034() {
+  // First, convert the two default class values.
+  update_variables_to_config('system.queue', array(
+    'queue_default_class' => 'class.default',
+    'queue_default_reliable_class' => 'class.default_reliable'
+  ));
+
+  // Then, convert any remaining variables in form of 'queue_class_'.$name.
+  $resource = db_query("SELECT name FROM 'variable' WHERE name LIKE 'queue_class%'");
+  while ($data = db_fetch_object($resource)) {
+    $name = str_replace('class.','',$data->name);
+    update_variables_to_config('system.queue', array(
+      $data->name => 'class.'.$name,
+    ));
+  }
+}
+
+/**
  * @} End of "defgroup updates-7.x-to-8.x".
  * The next series of updates should start at 9000.
  */
