Použití Azure Redis pro mezipaměť relací pro WebSphere Liberty nebo Open Liberty
Tento článek popisuje, jak používat Azure Redis jako mezipaměť relací HTTP pro WebSphere Liberty nebo Open Liberty.
V této příručce:
- Vytvořte instanci Azure Managed Redis pro ukládání relací do mezipaměti.
- Připravte ukázkovou aplikaci, která umožňuje trvalost relací HTTP.
- Spusťte ukázkovou aplikaci místně.
Tento článek vám pomůže rychle se dostat k nasazení. Než půjdete do produkce, měli byste prozkoumat Tuning Liberty.
Pokud chcete poskytnout zpětnou vazbu nebo úzce spolupracovat na scénářích migrace s technickým týmem, který vyvíjí webSphere v řešeních Azure, vyplňte tento krátký průzkum o migraci WebSphere a uveďte své kontaktní informace. Tým programových manažerů, architektů a inženýrů se s vámi okamžitě spojí a zahájí úzkou spolupráci.
Požadavky
- Předplatné Azure. Pokud ještě nemáte předplatné Azure, vytvořte si bezplatný účet před tím, než začnete.
- Připravte místní počítač s nainstalovaným operačním systémem Unix , například Ubuntu, macOS nebo Subsystém Windows pro Linux.
- Nainstalujte implementaci Java Standard Edition (SE) verze 17 nebo novější – například Microsoft sestavení OpenJDK.
- Nainstalujte Maven 3.9.8 nebo novější.
- Ujistěte se, že je Git nainstalovaný.
Vytvoření instance Azure Managed Redis
azure Managed Redis poskytuje úložiště dat v paměti založené na softwaru Redis Enterprise. Pomocí následujících kroků vytvořte instanci Azure Managed Redis a poznamenejte si její informace o připojení. Tyto informace použijete později ke konfiguraci ukázkové aplikace.
Pomocí kroků v Rychlém startu vytvořte instanci Azure Managed Redis: Vytvořte instanci Azure Managed Redis. Pečlivě si poznamenejte následující rozdíly:
V kroku 3 oddílu Vytvoření instance Redis, kde jste na kartě Základy vyberte skladovou položku Cache, která podporuje Azure Managed Redis. Pro tuto příručku vyberte Vyvážený (Pro úlohy pro obecné účely s typickými požadavky na výkon). Další informace najdete v tématu Volba správné úrovně.
V kroku 4 sekce Vytvoření instance Redis, kde jste na kartě Sítě, pro možnost Propojení vyberte Veřejný koncový bod. Tato možnost je nejlepší volbou pro jednoduchost při použití této příručky. V produkčním prostředí byste měli zvážit použití privátního koncového bodu pro lepší zabezpečení.
V kroku 5 oddílu Vytvoření instance Redis, kde jste na kartě Pokročilé, nakonfigurujte následující nastavení:
Pro ověřovánípovolte ověřování přístupových klíčů . Tato možnost je nejlepší volbou pro jednoduchost při použití této příručky. Pro zajištění optimálního zabezpečení doporučujeme použít ID Microsoft Entra se spravovanými identitami k autorizaci požadavků na vaši mezipaměť, pokud je to možné. Autorizace pomocí Microsoft Entra ID a spravovaných identit poskytuje vynikající zabezpečení a snadné použití prostřednictvím autorizace sdíleného přístupového klíče. Další informace o používání spravovaných identit s mezipamětí najdete v tématu Použití Id Microsoft Entra pro ověřování mezipaměti.
Nastavte zásady clusteringu na Enterprise pro neclusterovanou mezipaměť, která funguje pro tuto příručku, kde se používá konfigurace s jedním uzlem. Další informace viz Clustering v prostředí Enterprise.
Po dokončení nasazení vyberte Přejít k prostředku, pokud jste na stránce Nasazení. V opačném případě přejděte na web Azure Portal, vyhledejte a vyberte instanci Azure Managed Redis.
Na stránce Přehled si poznamenejte hodnotu koncového bodu. Tuto hodnotu použijete v proměnné prostředí
REDIS_CACHE_ADDRESS
později.Vyberte Ověřování nastavení>. Vyberte Přístupové klíče a poznamenejte si primární hodnotu . Tuto hodnotu použijete později jako proměnnou prostředí
REDIS_CACHE_KEY
.Pomocí následujícího příkazu exportujte proměnné prostředí
REDIS_CACHE_ADDRESS
aREDIS_CACHE_KEY
:export REDIS_CACHE_ADDRESS=rediss://<your-redis-cache-endpoint> export REDIS_CACHE_KEY=<your-primary-access-key>
Příprava ukázkové aplikace
WebSphere Liberty a Open Liberty poskytují funkci mezipaměti relací, která vám umožňuje ukládat data relace HTTP do externí mezipaměti. V této příručce použijete funkci JCache Session Persistence k ukládání dat relace do instance Azure Managed Redis.
Pomocí následujících příkazů naklonujte vzorový kód pro tuto příručku. Ukázka je v úložišti open-liberty-on-aks na GitHubu. V úložišti je několik ukázek. Tento článek používá java-app-jcache.
git clone https://github.com/Azure-Samples/open-liberty-on-aks.git
cd open-liberty-on-aks
git checkout 20250228
cd java-app-jcache
Pokud se zobrazí zpráva o stavu detached HEAD
, je bezpečné tuto zprávu ignorovat. Jen to znamená, že jste si prohlédli značku.
Aplikace má následující strukturu souborů:
java-app-jcache/
├── pom.xml
├── pom-redisson.xml
└── src
└── main
├── docker
│ ├── Dockerfile
│ └── Dockerfile-wlp
├── java
├── liberty
│ └── config
│ └── server.xml
├── redisson
│ └── redisson-config.yaml
├── resources
└── webapp
Soubor pom.xml je soubor projektu Maven, který obsahuje závislosti a moduly plug-in pro ukázkovou aplikaci.
Soubor pom-redisson.xml slouží ke kopírování závislostí klientské knihovny Redisson do adresáře sdílených prostředků serveru Liberty později.
Adresáře java, resources a webapp obsahují zdrojový kód ukázkové aplikace.
V adresáři liberty/config se soubor server.xml používá ke konfiguraci mezipaměti relací HTTP pro Open Liberty a WebSphere Liberty.
V adresáři redisson se ke konfiguraci připojení k instanci Azure Managed Redis používá soubor redisson-config.yaml.
Adresář dockeru obsahuje dva soubory Dockerfile. souboru Dockerfile se používá k sestavení image s open liberty a Dockerfile-wlp se používá k sestavení image s WebSphere Liberty.
Místní spuštění ukázkové aplikace
Pomocí následujících kroků sestavte a spusťte ukázkovou aplikaci místně. Tyto kroky používají Maven a liberty-maven-plugin
. Další informace o liberty-maven-plugin
naleznete v tématu Sestavení webové aplikace pomocíMaven .
Ověřte, že aktuální pracovní adresář je java-app-jcache ve vašem místním klonu.
Spusťte příkaz Maven
mvn clean package
a zabalte aplikaci.Spuštěním
mvn -Predisson validate
zkopírujte konfigurační soubor Redisson do správného cílového umístění. Tento krok také vloží hodnoty proměnných prostředíREDIS_CACHE_ADDRESS
aREDIS_CACHE_KEY
do souboru redisson-config.yaml, na který odkazuje soubor server.xml.Spuštěním
mvn dependency:copy-dependencies -f pom-redisson.xml -DoutputDirectory=target/liberty/wlp/usr/shared/resources
zkopírujte klientskou knihovnu Redisson a její závislosti do adresáře sdílených prostředků serveru Liberty.Spusťte příkaz Maven
mvn liberty:dev
a spusťte aplikaci. Pokud se aplikace úspěšně spustila, měli byste ve výstupu příkazu vidětThe defaultServer server is ready to run a smarter planet.
.Pokud je připojení Redis úspěšné, měl by se zobrazit výstup podobný následujícímu.
[INFO] [err] [Default Executor-thread-3] INFO org.redisson.Version - Redisson 3.23.4 [INFO] [err] [redisson-netty-2-7] INFO org.redisson.connection.pool.MasterPubSubConnectionPool - 1 connections initialized for redacted.<region>.redis.azure.net/<ip_address>:10000 [INFO] [err] [redisson-netty-2-20] INFO org.redisson.connection.pool.MasterConnectionPool - 24 connections initialized for redacted.<region>.redis.azure.net/<ip_address>:10000
Testování aplikace
Otevřete webový prohlížeč pro http://localhost:9080 a měla by se zobrazit domovská stránka aplikace.
Ve formuláři Nová kávy nastavte hodnoty polí Název a Cenya pak vyberte Odeslat. Aplikace vytvoří novou kávu, zachová ji a uloží také relaci HTTP v instanci Azure Managed Redis.
Po několika sekundách uvidíte novou kávu zobrazenou v tabulce Naše káva.
Snímek obrazovky ukázkové aplikace zobrazující novou kávu vytvořenou a uloženou v relaci aplikace
K předvedení, že data relace lze načíst z Redis, pomocí Ctrl+C zastavte aplikaci a restartujte ji příkazem mvn liberty:dev
.
Potom aktualizujte domovskou stránku aplikace. V části Nová kávaby se měla zobrazit stejná data relace. Po dokončení testování aplikaci zastavte.
Kontejnerizace aplikace
Volitelně můžete aplikaci zabalit a spustit v kontejneru pomocí následujícího postupu. Ukázková aplikace poskytuje dva soubory Dockerfile pro Open Liberty a WebSphere Liberty. Tato příručka používá soubor Dockerfile pro Open Liberty, ale soubor Dockerfile pro WebSphere Liberty můžete použít pomocí podobných kroků.
Nainstalujte Docker pro váš operační systém. Další informace naleznete v části Získání Dockeru.
K sestavení image Dockeru použijte následující příkaz:
docker build -t javaee-cafe-jcache:v1 -f src/main/docker/Dockerfile .
Ke spuštění kontejneru Dockeru použijte následující příkaz:
docker run -it --rm \ -p 9080:9080 \ -e REDIS_CACHE_ADDRESS=${REDIS_CACHE_ADDRESS} \ -e REDIS_CACHE_KEY=${REDIS_CACHE_KEY} \ --mount type=bind,source=$(pwd)/target/liberty/wlp/usr/servers/defaultServer/redisson-config.yaml,target=/config/redisson-config.yaml \ javaee-cafe-jcache:v1
Po spuštění kontejneru ho můžete otestovat pomocí kroků podobných těm, které používáte ke spuštění aplikace místně bez Dockeru.
Uvolnění prostředků
Abyste se vyhnuli poplatkům za Azure, měli byste vyčistit nepotřebné prostředky. Pokud už není instance Azure Managed Redis potřebná, vyhledejte její název skupiny prostředků a odstraňte ji z webu Azure Portal.
Další informace najdete v tématu Odstranění skupin prostředků.
Další kroky
Další informace najdete v referencích použitých v tomto průvodci:
- Konfigurace trvalosti relací pro Liberty s JCache
- Podpora JCache pro Redisson
- Konfigurace serveru Open Liberty
Pokud chcete nasadit ukázkovou aplikaci do Azure, projděte si následující články:
- Nasazení aplikace v Javě s platformou Open Liberty nebo WebSphere Liberty v clusteru Azure Kubernetes Service (AKS)
- Nasazení WebSphere Liberty a Open Liberty v Azure Red Hat OpenShiftu
- Nasazení aplikace v Javě s Open Liberty v Azure Container Apps
Chcete-li prozkoumat možnosti, jak spustit produkty rodiny WebSphere v Azure, podívejte se na Jaké jsou způsoby, jak spustit rodinu produktů WebSphere v Azure?