1. 最初のステップは、redis をインストールすることです。私のサーバーは Windows です。インストール不要のバージョンをダウンロードしました。解凍するだけです。ディレクトリは次のとおりです。最初、redis はデフォルトでパスワードを必要としませんが、パスワードを設定したい場合は、redis.windows.conf ファイルに移動して requirepass を見つけ、先頭の # 記号を削除し、その後にパスワードを設定します。
2. cmd から redis のルート ディレクトリを入力し、コマンド redis-server.exeredis.windows.conf を入力します。このようにしてredisが起動できるようになり、起動に成功すると以下の画面が表示されます。もちろん、conf ファイルを変更してパスワードを追加することもできます。 requirepass xxxxx
#3. 次に、セッション データのグローバル キャッシュを実現するための設定作業を行うことができます。
1) まず、jar パッケージを追加します。Maven プロジェクトの場合は、次のコードを 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>
Maven プロジェクトでない場合は、次のコードを追加する必要があります。次の jar パッケージを追加します。
2) redis.properties を記述します。コードは次のとおりです。
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
は基本的に構成データベースの接続ステートメントと似ています。
3) spring-redis.xml 構成ファイルを作成します。このファイルは、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>
4) application.xml (Spring のメイン設定ファイル) に、次のように redis.properties 設定ファイルのスキャンを追加する必要があります。
<!-- 读取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>
5) 次のように、spring-redis.xml をメイン設定ファイルに導入します。
<import resource="spring-redis.xml" />
6) web.xml にセッションに関するフィルターを追加します。この方法でのみ、セッションは 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>
この後、redisによるセッション管理を実現していきます。
7) Redis デスクトップ マネージャーと呼ばれる、内部のデータを表示するための Redis クライアントをインストールできます。以下に示すように、redis データベース内のデータを確認することができ、非常に便利です。
#ps. 再度終了するときは、エラーを避けるために次のように記述する必要があります。 (ssh プロジェクト)
public string yipinexit(){ iterator<string>keys=session.keyset().iterator(); while(keys.hasnext()){ string key=keys.next(); session.remove(key); } return "yipinexit"; }
以上がnginx+redis がセッション共有を実現する仕組みの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。