Rumah > pangkalan data > Redis > teks badan

Cara nginx+redis merealisasikan perkongsian sesi

WBOY
Lepaskan: 2023-05-26 12:49:06
ke hadapan
1559 orang telah melayarinya

1. Langkah pertama ialah memasang semula Pelayan saya ialah Windows. Pada mulanya, redis tidak memerlukan kata laluan secara lalai Jika anda ingin menetapkan kata laluan, anda boleh pergi ke fail redis.windows.conf dan cari requirepass, padam tanda # di hadapan dan tetapkan kata laluan selepasnya.

Cara nginx+redis merealisasikan perkongsian sesi

2. Masukkan direktori akar redis dari cmd dan taip arahan berikut: redis-server.exeredis.windows.conf. Dengan cara ini, redis boleh dimulakan Jika permulaan berjaya, skrin berikut akan muncul. Sudah tentu, anda juga boleh mengubah suai fail conf dan menambah kata laluan. requirepass xxxxx

Cara nginx+redis merealisasikan perkongsian sesi

3. Seterusnya kita boleh melakukan beberapa kerja konfigurasi untuk mencapai cache data sesi global.

1) Mula-mula, tambah pakej jar Jika anda adalah projek maven, anda perlu menambah kod berikut pada pom.xml

<!-- redis -->
 <dependency>
  <groupid>org.springframework.session</groupid>
  <artifactid>spring-session-data-redis</artifactid>
  <version>1.3.1.release</version>
  <type>pom</type>
 </dependency>
Salin selepas log masuk

Jika ia bukan projek maven, anda perlu untuk menambah pakej balang berikut.

Cara nginx+redis merealisasikan perkongsian sesi

2) Tulis redis.properties, kodnya adalah seperti berikut

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
Salin selepas log masuk

Pada asasnya serupa dengan pernyataan sambungan yang kami konfigurasikan pangkalan data.

3) Tulis fail konfigurasi spring-redis.xml Fail ini mengkonfigurasi beberapa maklumat asas tentang redis.

<?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>
Salin selepas log masuk

4) Dalam application.xml (fail konfigurasi utama spring), anda perlu menambah pengimbasan fail konfigurasi redis.properties, seperti berikut.

<!-- 读取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>
Salin selepas log masuk

5) Perkenalkan spring-redis.xml ke dalam fail konfigurasi utama, seperti berikut.

<import resource="spring-redis.xml" />
Salin selepas log masuk

6) Dalam web.xml, tambah penapis tentang sesi Hanya dengan cara ini sesi akan dimanipulasi oleh redis.

<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>
Salin selepas log masuk

Selepas ini, kami akan merealisasikan pengurusan sesi redis.

7) Kami boleh memasang klien redis untuk melihat data di dalamnya, dipanggil pengurus desktop redis. Seperti yang ditunjukkan di bawah, ia sangat berguna dan anda boleh melihat data dalam pangkalan data redis.

Cara nginx+redis merealisasikan perkongsian sesi

ps Apabila anda keluar semula, anda perlu menulis seperti ini untuk mengelakkan ralat. (projek ssh)

public string yipinexit(){
 iterator<string>keys=session.keyset().iterator();
 while(keys.hasnext()){
  string key=keys.next();
  session.remove(key);
 }
 return "yipinexit";
 }
Salin selepas log masuk

Atas ialah kandungan terperinci Cara nginx+redis merealisasikan perkongsian sesi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
sumber:yisu.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan