Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
In diesem Artikel wird veranschaulicht, wie Sie die Leistung einer Instanz von Azure Database for MySQL – Flexibler Server mithilfe von Azure Cache for Redis steigern. Azure Cache for Redis ist ein sicherer Daten-Cache und Nachrichten-Broker, der Anwendungen Datenzugriff mit hohem Durchsatz und geringer Latenzzeit bietet.
Voraussetzungen
Für diese Schnellstartanleitung benötigen Sie Folgendes:
- Ein Azure-Konto mit einem aktiven Abonnement.
Wenn Sie kein Azure-Abonnement haben, erstellen Sie ein kostenloses Azure-Konto, bevor Sie beginnen. Mit einem kostenlosen Azure-Konto können Sie Azure Database for MySQL – Flexibler Server derzeit 12 Monate lang kostenlos testen. Weitere Informationen finden Sie unter Verwenden eines kostenlosen Azure-Kontos, um Azure Database for MySQL – Flexible Server kostenlos zu testen.
- Falls noch nicht vorhanden, erstellen Sie eine Instanz von Azure Database for MySQL – Flexibler Server mithilfe der Anleitungen unter Schnellstart: Erstellen einer Instanz von Azure Database for MySQL mithilfe des Azure-Portals
oder Schnellstart: Erstellen einer Instanz von Azure Database for MySQL – Flexibler Server mithilfe der Azure CLI. - Konfigurieren Sie die Netzwerkeinstellung der Instanz von Azure Database for MySQL – Flexibler Server, um sicherzustellen, dass Ihre IP-Adresse darauf zugreifen kann. Wenn Sie Azure App Service oder den Dienst Azure Kubernetes nutzen, aktivieren Sie im Azure-Portal die Einstellung Öffentlichen Zugriff auf diesen Server über beliebigen Azure-Dienst in Azure gestatten.
Treten Probleme auf? Informieren Sie uns darüber.
Auffüllen der MySQL-Datenbank
Stellen Sie eine Verbindung mithilfe der Anleitungen unter Verwenden von MySQL Workbench mit Azure Database for MySQL – Flexibler Server her, und führen Sie die folgende Abfrage aus, um die Datenbank aufzufüllen.
CREATE DATABASE tododb;
CREATE TABLE tasks
(
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
title nvarchar(100) NOT NULL,
completed TINYINT(1) NOT NULL
);
INSERT INTO tasks (id,title, completed) VALUES
(1,'Task1', 0),
(2,'Task2', 0),
(3,'Task3', 1),
(4,'Task4', 1),
(5,'Task5', 0);
Erstellen eines Redis-Caches
Suchen Sie im Azure-Portal nach Azure-Cache für Redis, und wählen Sie sie aus.
Wählen Sie auf der Seite "Azure Cache für Redis" die Option"Azure-Cache für Redis>" aus.
Konfigurieren Sie auf der Registerkarte " Grundlagen " auf der Seite "Neuer Redis-Cache " die folgenden Einstellungen:
- Abonnement: Wählen Sie das zu verwendende Abonnement aus.
- Ressourcengruppe: Wählen Sie eine Ressourcengruppe aus, oder wählen Sie "Neu erstellen " aus, und geben Sie einen neuen Ressourcengruppennamen ein. Wenn Sie alle App-Ressourcen in derselben Ressourcengruppe platzieren, können Sie sie ganz einfach verwalten oder löschen.
-
Name: Geben Sie einen Cachenamen ein, der in der Region eindeutig ist. Der Name muss folgende Kriterien erfüllen:
- Sei eine Zeichenfolge von 1 bis 63 Zeichen.
- Nur Zahlen, Buchstaben und Bindestriche enthalten.
- Beginnen und enden Sie mit einer Zahl oder einem Buchstaben.
- Er darf keine aufeinanderfolgenden Bindestriche enthalten.
- Region: Wählen Sie eine Azure-Region in der Nähe anderer Dienste aus, die Ihren Cache verwenden.
- Cache-SKU: Wählen Sie eine SKU aus, um die verfügbaren Größen, Leistung und Features für Ihren Cache zu ermitteln.
- Cachegröße: Wählen Sie eine Cachegröße aus. Weitere Informationen finden Sie unter Azure Cache for Redis.
Wählen Sie die Registerkarte "Netzwerk " aus, oder wählen Sie "Weiter: Netzwerk" aus.
Wählen Sie auf der Registerkarte Netzwerk eine Konnektivitätsmethode für den Cache aus. Privater Endpunkt wird für sicherheit empfohlen. Wenn Sie "Privater Endpunkt" auswählen, wählen Sie "Privaten Endpunkt hinzufügen " aus, und erstellen Sie den privaten Endpunkt.
Wählen Sie die Registerkarte "Erweitert " aus, oder wählen Sie "Weiter: Erweitert" aus.
Konfigurieren Sie im Bereich "Erweitert" die folgenden Optionen:
- Wählen Sie "Microsoft Entra-Authentifizierung " oder "Zugriffstastenauthentifizierung" aus. Die Microsoft Entra-Authentifizierung ist standardmäßig aktiviert.
- Wählen Sie aus, ob der Nicht-TLS-Port aktiviert werden soll.
- Für einen Premium-Cache können Sie Verfügbarkeitszonen konfigurieren oder deaktivieren. Verfügbarkeitszonen können nach der Erstellung des Caches nicht deaktiviert werden. Für einen Standardcache werden Verfügbarkeitszonen automatisch zugewiesen. Verfügbarkeitszonen sind für die Standard-SKU nicht verfügbar.
- Konfigurieren Sie für einen Premium-Cache die Einstellungen für Replikatanzahl, Clustering und Shardanzahl, vom System zugewiesene verwaltete Identität und Datenpersistenz.
Die folgende Abbildung zeigt die Registerkarte "Erweitert " für die Standard-SKU.
Wichtig
Verwenden Sie Microsoft Entra ID mit verwalteten Identitäten, um nach Möglichkeit Anfragen für Ihren Cache zu autorisieren. Die Autorisierung mithilfe der Microsoft Entra-ID und der verwalteten Identität bietet eine bessere Sicherheit und ist einfacher zu verwenden als die Autorisierung gemeinsam genutzter Zugriffstasten. Weitere Informationen zum Verwenden verwalteter Identitäten mit Ihren Caches finden Sie unter Verwenden von Microsoft Entra ID für die Cacheauthentifizierung.
Wählen Sie optional die Registerkarte "Kategorien " aus, oder wählen Sie "Weiter: Kategorien" aus, und geben Sie Tagnamen und Werte ein, um Ihre Cacheressourcen zu kategorisieren.
Wählen Sie "Überprüfen" und "Erstellen" aus, und wählen Sie " Erstellen" aus, sobald die Überprüfung bestanden wurde.
Die neue Cachebereitstellung dauert mehrere Minuten. Sie können den Bereitstellungsfortschritt auf der Seite "Azure Cache für Redis" im Portal überwachen. Wenn der Cachestatus"Ausgeführt" angezeigt wird, kann der Cache verwendet werden.
Verwenden von Redis mit Python
Installieren Sie die neueste Version von Python in Ihrer lokalen Umgebung, auf einer Azure-VM oder in Azure App Service. Installieren Sie redis-py mithilfe von pip.
pip install redis
Der folgende Code erstellt mithilfe von redis-py eine Verbindung mit der Azure Cache for Redis-Instanz, speichert das Abfrageergebnis in Azure Cache for Redis, und ruft den Wert aus dem Cache ab.
import redis
import mysql.connector
r = redis.Redis(
host='your-azure-redis-instance-name.redis.cache.windows.net',
port=6379,
password='azure-redis-primary-access-key')
mysqlcnx = mysql.connector.connect(user='your-admin-username', password='<password>',
host='database-servername.mysql.database.azure.com',
database='your-databsae-name')
mycursor = mysqlcnx.cursor()
mycursor.execute("SELECT * FROM tasks where completed=1")
myresult = mycursor.fetchall()
#Set the result of query in a key
if result:
cache.hmset(mykey, myresult)
cache.expire(mykey, 3600)
return result
#Get value of mykey
getkeyvalue= cache.hgetall(mykey)
#close mysql connection
mysqlcnx.close()
Redis mit PHP verwenden
Installieren Sie PHP in Ihrer lokalen Umgebung. Führen Sie die folgenden Schritte aus, um ein PHP-Skript zu schreiben, das eine SQL-Abfrage aus der Datenbank von Azure Database for MySQL – Flexibler Server zwischenspeichert. Hier sind einige Voraussetzungen vor dem Ausführen des Skripts:
- Installieren und aktivieren Sie die Erweiterung „Redis PECL“, um Azure Cache for Redis mit Ihrem PHP-Skript verwenden zu können. Erfahren Sie, wie Sie die Erweiterung lokal installieren.
- Installieren und Aktivieren der Erweiterung „MySQL PDO“
<?php
$redis = new Redis();
$redis->connect('azure-redis-instance-ame.redis.cache.windows.net', 6379);
$redis->auth('azure-redis-primary-access-key');
$key = 'tasks';
if (!$redis->get($key)) {
/*Pulling data from MySQL database*/
$database_name = 'database-name';
$database_user = 'your-database-user';
$database_password = 'your-database-password';
$mysql_host = 'database-servername.mysql.database.azure.com';
$pdo = new PDO('mysql:host=' . $mysql_host . '; dbname=' . $database_name, $database_user, $database_password);
$pdo->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
$sql = "SELECT * FROM tasks";
$stmt = $pdo->prepare($sql);
$stmt->execute();
while ($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$tasks[] = $row;
}
$redis->set($key, serialize($tasks));
$redis->expire($key, 10);
} else {
/*Pulling data from Azure Cache for Redis*/
$tasks = unserialize($redis->get($key));
}
echo $source . ': <br>';
print_r($tasks);
Verwenden von Redis mit WordPress
Wenn Sie eine Azure Cache for Redis-Instanz für Ihre WordPress-Anwendung aktivieren, können Sie Inhalte schneller bereitstellen, da alle WordPress-Inhalte in der Datenbank gespeichert sind. Sie können Inhalte zwischenspeichern, die größtenteils aus der WordPress-Datenbank gelesen werden, um die Nachschlagevorgänge für die Abfrage zu beschleunigen. Sie können Redis mithilfe eines dieser Plug-Ins einrichten. Installieren und aktivieren Sie die Erweiterung „Redis PECL“. Erfahren Sie, wie Sie die Erweiterung lokal installieren oder die Erweiterung in Azure App Service installieren.
Installieren Sie den Redis-Objektcache, und aktivieren Sie dieses Plug-In in unserer WordPress-Anwendung. Aktualisieren Sie nun die Datei wp-config.php
direkt über der Anweisung /. Damit ist die Bearbeitung abgeschlossen! Viel Spaß beim Bloggen. /*
define( 'WP_REDIS_HOST', 'azure-redis-servername.redis.cache.windows.net' );
define( 'WP_REDIS_PORT', 6379 );
define( 'WP_REDIS_PASSWORD', 'azure-redis-primary-access-key' );
define( 'WP_REDIS_TIMEOUT', 1 );
define( 'WP_REDIS_READ_TIMEOUT', 1 );
// change the database for each site to avoid cache collisions
// values 0-15 are valid in a default redis config.
define( 'WP_REDIS_DATABASE', 0 );
// automatically delete cache keys after 7 days
define( 'WP_REDIS_MAXTTL', 60 * 60 * 24 * 7 );
// bypass the object cache, useful for debugging
// define( 'WP_REDIS_DISABLED', true );
/* That's all, stop editing! Happy blogging. */
Wechseln Sie zum Verwaltungsdashboard von Wordpress, und wählen Sie im Menü die Seite „Redis-Einstellungen“ aus. Wählen Sie nun Objektcache aktivieren aus. Das Plug-In liest die Informationen der Azure Cache for Redis-Instanz aus der Datei wp-config.php
.
Sie können Azure Cache for Redis auch mithilfe von W3 Total Cache in Ihrer WordPress-App konfigurieren. Sie können die Leistungsverbesserungen mit dem Plug-In Query Monitor auswerten, mit dem Sie Datenbankabfragen debuggen können und das auch die gesamten Datenbankabfragen nach Plug-In gruppiert zeigt.