Heim > Datenbank > Redis > Wie Nginx+Redis die Sitzungsfreigabe realisiert

Wie Nginx+Redis die Sitzungsfreigabe realisiert

WBOY
Freigeben: 2023-05-26 12:49:06
nach vorne
1582 Leute haben es durchsucht

1. Der erste Schritt ist die Installation von Redis. Ich habe die kostenlose Version heruntergeladen. Zu Beginn erfordert Redis standardmäßig kein Passwort. Wenn Sie ein Passwort festlegen möchten, können Sie in der Datei redis.windows.conf nach „requirepass“ suchen, das #-Zeichen davor löschen und das Passwort danach festlegen.

Wie Nginx+Redis die Sitzungsfreigabe realisiert

2. Geben Sie über cmd das Stammverzeichnis von Redis ein und geben Sie den folgenden Befehl ein: redis-server.exeredis.windows.conf. Auf diese Weise kann Redis gestartet werden. Wenn der Start erfolgreich ist, wird der folgende Bildschirm angezeigt. Natürlich können Sie auch die conf-Datei ändern und ein Passwort hinzufügen. requirepass xxxxx

Wie Nginx+Redis die Sitzungsfreigabe realisiert

3 Als nächstes können wir einige Konfigurationsarbeiten durchführen, um eine globale Zwischenspeicherung der Sitzungsdaten zu erreichen.

1) Fügen Sie zunächst das JAR-Paket hinzu. Wenn Sie ein Maven-Projekt sind, müssen Sie den folgenden Code zu pom.xml hinzufügen.

Wie Nginx+Redis die Sitzungsfreigabe realisiert2) Schreiben Sie redis.properties, der Code lautet wie folgt

<!-- redis -->
 <dependency>
  <groupid>org.springframework.session</groupid>
  <artifactid>spring-session-data-redis</artifactid>
  <version>1.3.1.release</version>
  <type>pom</type>
 </dependency>
Nach dem Login kopieren

Im Grunde ähnlich der Verbindungsanweisung, mit der wir die Datenbank konfigurieren.

3) Schreiben Sie die Konfigurationsdatei spring-redis.xml. Diese Datei konfiguriert einige grundlegende Informationen zu Redis.

redis_isopen:yes
#主机地址
redis_hostname=xxx.xxx.xxx.xxx
#端口
redis_port=6379
#密码
redis_password=xxxxxxxx
#连接超时时间
redis_timeout=200000
redis_maxidle:300
redis_maxactive:600
redis_maxwait:100000
redis_testonborrow:true
Nach dem Login kopieren

4) In application.xml (der Hauptkonfigurationsdatei von Spring) müssen Sie das Scannen der Konfigurationsdatei redis.properties wie folgt hinzufügen.

<?xml version="1.0" encoding="utf-8" standalone="no"?>
<beans xmlns="http://www.springframework.org/schema/beans"
 xmlns:context="http://www.springframework.org/schema/context" xmlns:tx="http://www.springframework.org/schema/tx"
 xmlns:util="http://www.springframework.org/schema/util" xmlns:xsi="http://www.w3.org/2001/xmlschema-instance"
 xsi:schemalocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/tx http://www.springframework.org/schema/tx/spring-tx.xsd http://www.springframework.org/schema/util http://www.springframework.org/schema/util/spring-util.xsd ">
 <!-- session设置 maxinactiveintervalinseconds为session的失效时间,单位为秒-->
 <bean
 class="org.springframework.session.data.redis.config.annotation.web.http.redishttpsessionconfiguration">
 <property name="maxinactiveintervalinseconds" value="3600"></property>
 </bean>
 <!-- redis连接池 -->
 <bean id="poolconfig" class="redis.clients.jedis.jedispoolconfig">
 <property name="maxidle" value="${redis_maxidle}" />
 <property name="testonborrow" value="${redis_testonborrow}" />
 </bean>
 <!-- redis连接工厂 -->
 <bean id="connectionfactory"
 class="org.springframework.data.redis.connection.jedis.jedisconnectionfactory">
 <property name="hostname" value="${redis_hostname}" />
 <property name="port" value="${redis_port}" />
 <property name="password" value="${redis_password}" />
 <property name="timeout" value="${redis_timeout}" />
 <property name="poolconfig" ref="poolconfig"></property>
 </bean>
</beans>
Nach dem Login kopieren

5) Fügen Sie spring-redis.xml wie folgt in die Hauptkonfigurationsdatei ein.

<!-- 读取redis参数配置 -->
 <bean id="propertyconfigurer"
 class="org.springframework.beans.factory.config.propertyplaceholderconfigurer">
 <property name="locations">
  <list>
  <value>/web-inf/classes/redis.properties</value>
  </list>
 </property>
 </bean>
Nach dem Login kopieren

6) Fügen Sie in web.xml einen Filter für die Sitzung hinzu. Nur auf diese Weise wird die Sitzung von Redis manipuliert.

<import resource="spring-redis.xml" />
Nach dem Login kopieren

Danach werden wir das Sitzungsmanagement von Redis realisieren.

7) Wir können einen Redis-Client installieren, um die darin enthaltenen Daten anzuzeigen, den sogenannten Redis-Desktop-Manager. Wie unten gezeigt, ist es sehr nützlich und Sie können die Daten in der Redis-Datenbank sehen.

Wie Nginx+Redis die Sitzungsfreigabe realisiertps. Wenn Sie wieder aussteigen, müssen Sie so schreiben, um Fehler zu vermeiden. (SSH-Projekt)

<filter>
 <filter-name>springsessionrepositoryfilter</filter-name>
 <filter-class>org.springframework.web.filter.delegatingfilterproxy</filter-class>
 </filter>
 <filter-mapping>
 <filter-name>springsessionrepositoryfilter</filter-name>
 <url-pattern>/*</url-pattern>
 </filter-mapping>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie Nginx+Redis die Sitzungsfreigabe realisiert. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:yisu.com
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage