From 443b1b4b3762162beaf907c8bfb6f320e583655e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E7=BD=97=E7=A5=A5?= <1366971433@qq.com> Date: Mon, 14 Jan 2019 01:02:37 +0800 Subject: [PATCH] =?UTF-8?q?=E6=96=B0=E5=A2=9E=E7=94=A8=E4=BE=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 14 +- distributed solution/msm/pom.xml | 67 ++++++ .../main/java/com/heibaiying/bean/User.java | 17 ++ .../controller/LoginController.java | 38 ++++ .../src/main/resources/springApplication.xml | 29 +++ .../msm/src/main/webapp/WEB-INF/jsp/home.jsp | 11 + .../msm/src/main/webapp/WEB-INF/jsp/index.jsp | 14 ++ .../msm/src/main/webapp/WEB-INF/web.xml | 42 ++++ .../spring-boot-session/README.md | 152 ++++++++++++++ .../spring-boot-session/pom.xml | 60 ++++++ .../SpringBootSessionApplication.java | 16 ++ .../com/heibaiying/springboot/bean/User.java | 17 ++ .../controller/LoginController.java | 37 ++++ .../src/main/resources/application.yml | 21 ++ .../src/main/resources/templates/home.ftl | 10 + .../src/main/resources/templates/index.ftl | 13 ++ .../SpringBootSessionApplicationTests.java | 17 ++ distributed solution/spring-session/README.md | 189 +++++++++++++++++ distributed solution/spring-session/pom.xml | 82 ++++++++ .../main/java/com/heibaiying/bean/User.java | 17 ++ .../controller/LoginController.java | 38 ++++ .../src/main/resources/redis.properties | 8 + .../src/main/resources/spring-session.xml | 51 +++++ .../src/main/resources/springApplication.xml | 31 +++ .../src/main/webapp/WEB-INF/jsp/home.jsp | 11 + .../src/main/webapp/WEB-INF/jsp/index.jsp | 14 ++ .../src/main/webapp/WEB-INF/web.xml | 54 +++++ pictures/eureka-application.png | Bin 0 -> 12316 bytes pictures/eureka-server-client.png | Bin 0 -> 12466 bytes pictures/spring-boot-session-8080.png | Bin 0 -> 11351 bytes pictures/spring-boot-session-8090.png | Bin 0 -> 11215 bytes pictures/spring-boot-session-app1.png | Bin 0 -> 46851 bytes pictures/spring-boot-session-app2.png | Bin 0 -> 48036 bytes pictures/spring-boot-session.png | Bin 0 -> 17644 bytes pictures/spring-cloud-eureka-cluster.png | Bin 0 -> 9154 bytes pictures/spring-cloud-eureka.png | Bin 0 -> 7877 bytes pictures/spring-session-8080.png | Bin 0 -> 12394 bytes pictures/spring-session-8090.png | Bin 0 -> 12319 bytes pictures/spring-session-tomcat01.png | Bin 0 -> 46711 bytes pictures/spring-session-tomcat02.png | Bin 0 -> 46846 bytes pictures/spring-session.png | Bin 0 -> 17286 bytes .../spring-cloud-eureka-cluster/README.md | 197 +++++++++++++++++- spring-cloud/spring-cloud-eureka/README.md | 98 +++++++++ 43 files changed, 1353 insertions(+), 12 deletions(-) create mode 100644 distributed solution/msm/pom.xml create mode 100644 distributed solution/msm/src/main/java/com/heibaiying/bean/User.java create mode 100644 distributed solution/msm/src/main/java/com/heibaiying/controller/LoginController.java create mode 100644 distributed solution/msm/src/main/resources/springApplication.xml create mode 100644 distributed solution/msm/src/main/webapp/WEB-INF/jsp/home.jsp create mode 100644 distributed solution/msm/src/main/webapp/WEB-INF/jsp/index.jsp create mode 100644 distributed solution/msm/src/main/webapp/WEB-INF/web.xml create mode 100644 distributed solution/spring-boot-session/README.md create mode 100644 distributed solution/spring-boot-session/pom.xml create mode 100644 distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/SpringBootSessionApplication.java create mode 100644 distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/bean/User.java create mode 100644 distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/controller/LoginController.java create mode 100644 distributed solution/spring-boot-session/src/main/resources/application.yml create mode 100644 distributed solution/spring-boot-session/src/main/resources/templates/home.ftl create mode 100644 distributed solution/spring-boot-session/src/main/resources/templates/index.ftl create mode 100644 distributed solution/spring-boot-session/src/test/java/com/heibaiying/springboot/SpringBootSessionApplicationTests.java create mode 100644 distributed solution/spring-session/README.md create mode 100644 distributed solution/spring-session/pom.xml create mode 100644 distributed solution/spring-session/src/main/java/com/heibaiying/bean/User.java create mode 100644 distributed solution/spring-session/src/main/java/com/heibaiying/controller/LoginController.java create mode 100644 distributed solution/spring-session/src/main/resources/redis.properties create mode 100644 distributed solution/spring-session/src/main/resources/spring-session.xml create mode 100644 distributed solution/spring-session/src/main/resources/springApplication.xml create mode 100644 distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/home.jsp create mode 100644 distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/index.jsp create mode 100644 distributed solution/spring-session/src/main/webapp/WEB-INF/web.xml create mode 100644 pictures/eureka-application.png create mode 100644 pictures/eureka-server-client.png create mode 100644 pictures/spring-boot-session-8080.png create mode 100644 pictures/spring-boot-session-8090.png create mode 100644 pictures/spring-boot-session-app1.png create mode 100644 pictures/spring-boot-session-app2.png create mode 100644 pictures/spring-boot-session.png create mode 100644 pictures/spring-cloud-eureka-cluster.png create mode 100644 pictures/spring-cloud-eureka.png create mode 100644 pictures/spring-session-8080.png create mode 100644 pictures/spring-session-8090.png create mode 100644 pictures/spring-session-tomcat01.png create mode 100644 pictures/spring-session-tomcat02.png create mode 100644 pictures/spring-session.png diff --git a/README.md b/README.md index 31647a8..ca0beb3 100644 --- a/README.md +++ b/README.md @@ -82,16 +82,12 @@ spring-cloud:Finchley.SR2
-## 4.分布式session和分布式事务 +## 4.spring分布式session和分布式事务 -| 描述 | sample | 官方文档 | -| ---------------------------------------- | ---------------------------- | ------------------------------------------------------------ | -| 分布式session解决方案(一) | spring session | [spring session](https://spring.io/projects/spring-session#learn) | -| 分布式session 解决方案(二) | spring boot + spring session | | -| 分布式session 解决方案(三) | memcached-session-manager | | -| 分布式事务解决方案(一)——JPA | 待补充 | | -| 分布式事务解决方案(二)——Spring事务同步 | 待补充 | | -| 分布式事务解决方案(三)——链式事务 | 待补充 | | +| sample | 描述 | 官方文档 | +| ---------------------------- | -------------------------- | ------------------------------------------------------------ | +| spring-session | spring 分布式 session | [spring session](https://spring.io/projects/spring-session#learn) | +| spring boot + spring session | spring boot 分布式 session | [spring session](https://spring.io/projects/spring-session#learn) |
diff --git a/distributed solution/msm/pom.xml b/distributed solution/msm/pom.xml new file mode 100644 index 0000000..b45a1b8 --- /dev/null +++ b/distributed solution/msm/pom.xml @@ -0,0 +1,67 @@ + + + 4.0.0 + war + + com.heibaiying + msm + 1.0-SNAPSHOT + + + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + + + + + + 5.1.3.RELEASE + + + + + org.springframework + spring-context + ${spring-base-version} + + + org.springframework + spring-beans + ${spring-base-version} + + + org.springframework + spring-core + ${spring-base-version} + + + org.springframework + spring-web + ${spring-base-version} + + + org.springframework + spring-webmvc + ${spring-base-version} + + + javax.servlet + javax.servlet-api + 4.0.1 + provided + + + org.projectlombok + lombok + 1.18.0 + + + + \ No newline at end of file diff --git a/distributed solution/msm/src/main/java/com/heibaiying/bean/User.java b/distributed solution/msm/src/main/java/com/heibaiying/bean/User.java new file mode 100644 index 0000000..16f41ed --- /dev/null +++ b/distributed solution/msm/src/main/java/com/heibaiying/bean/User.java @@ -0,0 +1,17 @@ +package com.heibaiying.bean; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author : heibaiying + */ +@Data +public class User implements Serializable { + + private long userId; + private String username; + private String password; + +} diff --git a/distributed solution/msm/src/main/java/com/heibaiying/controller/LoginController.java b/distributed solution/msm/src/main/java/com/heibaiying/controller/LoginController.java new file mode 100644 index 0000000..8a11c03 --- /dev/null +++ b/distributed solution/msm/src/main/java/com/heibaiying/controller/LoginController.java @@ -0,0 +1,38 @@ +package com.heibaiying.controller; + +import com.heibaiying.bean.User; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +/** + * @author : heibaiying + * @description : 登录 + */ +@Controller +public class LoginController { + + @RequestMapping + public String index(){ + return "index"; + } + + @RequestMapping("home") + public String home(){ + return "home"; + } + + @PostMapping("login") + public String login(User user, HttpSession session, HttpServletRequest request, Model model){ + // 随机生成用户id + user.setUserId(Math.round(Math.floor(Math.random() *10*1000))); + // 将用户信息保存到id中 + session.setAttribute("USER",user); + return "redirect:home"; + } + +} diff --git a/distributed solution/msm/src/main/resources/springApplication.xml b/distributed solution/msm/src/main/resources/springApplication.xml new file mode 100644 index 0000000..6b3fa23 --- /dev/null +++ b/distributed solution/msm/src/main/resources/springApplication.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/distributed solution/msm/src/main/webapp/WEB-INF/jsp/home.jsp b/distributed solution/msm/src/main/webapp/WEB-INF/jsp/home.jsp new file mode 100644 index 0000000..5a822db --- /dev/null +++ b/distributed solution/msm/src/main/webapp/WEB-INF/jsp/home.jsp @@ -0,0 +1,11 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 主页面 + + +
服务器:<%=request.getServerName()+":"+request.getServerPort()%>
+
登录用户: ${sessionScope.USER.username}
+
用户编号: ${sessionScope.USER.userId}
+ + \ No newline at end of file diff --git a/distributed solution/msm/src/main/webapp/WEB-INF/jsp/index.jsp b/distributed solution/msm/src/main/webapp/WEB-INF/jsp/index.jsp new file mode 100644 index 0000000..805223a --- /dev/null +++ b/distributed solution/msm/src/main/webapp/WEB-INF/jsp/index.jsp @@ -0,0 +1,14 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 登录页面 + + +
服务器:<%=request.getServerName()+":"+request.getServerPort()%>
+
+ 用户:
+ 密码:
+ +
+ + \ No newline at end of file diff --git a/distributed solution/msm/src/main/webapp/WEB-INF/web.xml b/distributed solution/msm/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000..ea02a7a --- /dev/null +++ b/distributed solution/msm/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,42 @@ + + + + + + springMvc + org.springframework.web.servlet.DispatcherServlet + + contextConfigLocation + classpath:springApplication.xml + + 1 + + + + springMvc + / + + + + + characterEncodingFilter + org.springframework.web.filter.CharacterEncodingFilter + + encoding + UTF-8 + + + forceEncoding + true + + + + characterEncodingFilter + /* + + + \ No newline at end of file diff --git a/distributed solution/spring-boot-session/README.md b/distributed solution/spring-boot-session/README.md new file mode 100644 index 0000000..9608867 --- /dev/null +++ b/distributed solution/spring-boot-session/README.md @@ -0,0 +1,152 @@ +# spring boot 实现分布式 session + +## 一、项目结构 + +![spring-cloud-eureka](D:\spring-samples-for-all\pictures\spring-boot-session.png) + + + +## 二、分布式session的配置 + +#### 2.1 引入依赖 + +```xml + + + org.springframework.boot + spring-boot-starter-data-redis + + + org.springframework.session + spring-session-data-redis + +``` + +#### 2.2 Redis配置 + +```yaml +spring: + redis: + host: 127.0.0.1 + port: 6379 + jedis: + pool: + # 连接池最大连接数,使用负值表示无限制。 + max-active: 8 + # 连接池最大阻塞等待时间,使用负值表示无限制。 + max-wait: -1s + # 连接池最大空闲数,使用负值表示无限制。 + max-idle: 8 + # 连接池最小空闲连接,只有设置为正值时候才有效 + min-idle: 1 + timeout: 300ms + session: + # session 存储方式 支持redis、mongo、jdbc、hazelcast + store-type: redis + +# 如果是集群节点 采用如下配置指定节点 +#spring.redis.cluster.nodes + +``` + +有两点需要特别说明: + +1. spring-session 不仅提供了redis作为公共session存储的方案,同时也支持jdbc、mongodb、Hazelcast等作为公共session的存储,可以用session.store-type 指定; +2. 对于redis 存储方案而言,官方也提供了不止一种整合方式,这里我们选取的整合方案是jedis客户端作为连接,当然也可以使用Lettuce作为客户端连接。 + +#### 2.3 启动类上添加@EnableRedisHttpSession 注解开启 spring-session-redis 整合方案的自动配置 + +```java +@SpringBootApplication +@EnableRedisHttpSession(maxInactiveIntervalInSeconds= 1800) //开启redis session支持,并配置session过期时间 +public class SpringBootSessionApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringBootSessionApplication.class, args); + } + +} +``` + + + +## 三、验证分布式session + +#### 3.1 创建测试controller和测试页面 + +```java +@Controller +public class LoginController { + + @RequestMapping + public String index() { + return "index"; + } + + @RequestMapping("home") + public String home() { + return "home"; + } + + @PostMapping("login") + public String login(User user, HttpSession session) { + // 随机生成用户id + user.setUserId(Math.round(Math.floor(Math.random() * 10 * 1000))); + // 将用户信息保存到id中 + session.setAttribute("USER", user); + return "home"; + } + +} +``` + +登录页面index.ftl: + +```jsp + + + + 登录页面 + + +
+ 用户:
+ 密码:
+ +
+ + +``` + +session 信息展示页面home.ftl: + +```jsp + + + + 主页面 + + +
登录用户: ${Session["USER"].username}
+
用户编号: ${Session["USER"].userId}
+ + +``` + +#### 3.2 启动项目 + +由于我们这里采用的是spring boot 的内置容器作为web容器,所以直接启动两个实例测试即可。 + +应用1启动配置: + +![spring-session-tomcat01](D:\spring-samples-for-all\pictures\spring-boot-session-app1.png) + +应用2启动配置,需要用 `--server.port `指定不同的端口号: + +![spring-session-tomcat02](D:\spring-samples-for-all\pictures\spring-boot-session-app2.png) + +**测试结果:** + +![spring-session-8080](D:\spring-samples-for-all\pictures\spring-boot-session-8080.png) + +![spring-session-8090](D:\spring-samples-for-all\pictures\spring-boot-session-8090.png) \ No newline at end of file diff --git a/distributed solution/spring-boot-session/pom.xml b/distributed solution/spring-boot-session/pom.xml new file mode 100644 index 0000000..a2e25f5 --- /dev/null +++ b/distributed solution/spring-boot-session/pom.xml @@ -0,0 +1,60 @@ + + + 4.0.0 + + org.springframework.boot + spring-boot-starter-parent + 2.1.2.RELEASE + + + com.heibaiying + spring-boot-session + 0.0.1-SNAPSHOT + spring-boot-session + spring session project for Spring Boot + + + 1.8 + + + + + org.springframework.boot + spring-boot-starter-data-redis + + + org.springframework.boot + spring-boot-starter-freemarker + + + org.springframework.boot + spring-boot-starter-web + + + org.springframework.session + spring-session-data-redis + + + + org.projectlombok + lombok + true + + + org.springframework.boot + spring-boot-starter-test + test + + + + + + + org.springframework.boot + spring-boot-maven-plugin + + + + + diff --git a/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/SpringBootSessionApplication.java b/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/SpringBootSessionApplication.java new file mode 100644 index 0000000..d006c3a --- /dev/null +++ b/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/SpringBootSessionApplication.java @@ -0,0 +1,16 @@ +package com.heibaiying.springboot; + +import org.springframework.boot.SpringApplication; +import org.springframework.boot.autoconfigure.SpringBootApplication; +import org.springframework.session.data.redis.config.annotation.web.http.EnableRedisHttpSession; + +@SpringBootApplication +@EnableRedisHttpSession(maxInactiveIntervalInSeconds= 1800) //开启redis session支持,并配置session过期时间 +public class SpringBootSessionApplication { + + public static void main(String[] args) { + SpringApplication.run(SpringBootSessionApplication.class, args); + } + +} + diff --git a/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/bean/User.java b/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/bean/User.java new file mode 100644 index 0000000..a468fe4 --- /dev/null +++ b/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/bean/User.java @@ -0,0 +1,17 @@ +package com.heibaiying.springboot.bean; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author : heibaiying + */ +@Data +public class User implements Serializable { + + private long userId; + private String username; + private String password; + +} diff --git a/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/controller/LoginController.java b/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/controller/LoginController.java new file mode 100644 index 0000000..dc5069d --- /dev/null +++ b/distributed solution/spring-boot-session/src/main/java/com/heibaiying/springboot/controller/LoginController.java @@ -0,0 +1,37 @@ +package com.heibaiying.springboot.controller; + + +import com.heibaiying.springboot.bean.User; +import org.springframework.stereotype.Controller; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import javax.servlet.http.HttpSession; + +/** + * @author : heibaiying + * @description : 登录 + */ +@Controller +public class LoginController { + + @RequestMapping + public String index() { + return "index"; + } + + @RequestMapping("home") + public String home() { + return "home"; + } + + @PostMapping("login") + public String login(User user, HttpSession session) { + // 随机生成用户id + user.setUserId(Math.round(Math.floor(Math.random() * 10 * 1000))); + // 将用户信息保存到id中 + session.setAttribute("USER", user); + return "home"; + } + +} diff --git a/distributed solution/spring-boot-session/src/main/resources/application.yml b/distributed solution/spring-boot-session/src/main/resources/application.yml new file mode 100644 index 0000000..7d7c7c6 --- /dev/null +++ b/distributed solution/spring-boot-session/src/main/resources/application.yml @@ -0,0 +1,21 @@ +spring: + redis: + host: 127.0.0.1 + port: 6379 + jedis: + pool: + # 连接池最大连接数,使用负值表示无限制。 + max-active: 8 + # 连接池最大阻塞等待时间,使用负值表示无限制。 + max-wait: -1s + # 连接池最大空闲数,使用负值表示无限制。 + max-idle: 8 + # 连接池最小空闲连接,只有设置为正值时候才有效 + min-idle: 1 + timeout: 300ms + session: + # session 存储方式 支持redis、mongo、jdbc、hazelcast + store-type: redis + +# 如果是集群节点 采用如下配置指定节点 +#spring.redis.cluster.nodes diff --git a/distributed solution/spring-boot-session/src/main/resources/templates/home.ftl b/distributed solution/spring-boot-session/src/main/resources/templates/home.ftl new file mode 100644 index 0000000..4b08772 --- /dev/null +++ b/distributed solution/spring-boot-session/src/main/resources/templates/home.ftl @@ -0,0 +1,10 @@ + + + + 主页面 + + +
登录用户: ${Session["USER"].username}
+
用户编号: ${Session["USER"].userId}
+ + \ No newline at end of file diff --git a/distributed solution/spring-boot-session/src/main/resources/templates/index.ftl b/distributed solution/spring-boot-session/src/main/resources/templates/index.ftl new file mode 100644 index 0000000..cde4d61 --- /dev/null +++ b/distributed solution/spring-boot-session/src/main/resources/templates/index.ftl @@ -0,0 +1,13 @@ + + + + 登录页面 + + +
+ 用户:
+ 密码:
+ +
+ + \ No newline at end of file diff --git a/distributed solution/spring-boot-session/src/test/java/com/heibaiying/springboot/SpringBootSessionApplicationTests.java b/distributed solution/spring-boot-session/src/test/java/com/heibaiying/springboot/SpringBootSessionApplicationTests.java new file mode 100644 index 0000000..479c4e4 --- /dev/null +++ b/distributed solution/spring-boot-session/src/test/java/com/heibaiying/springboot/SpringBootSessionApplicationTests.java @@ -0,0 +1,17 @@ +package com.heibaiying.springboot; + +import org.junit.Test; +import org.junit.runner.RunWith; +import org.springframework.boot.test.context.SpringBootTest; +import org.springframework.test.context.junit4.SpringRunner; + +@RunWith(SpringRunner.class) +@SpringBootTest +public class SpringBootSessionApplicationTests { + + @Test + public void contextLoads() { + } + +} + diff --git a/distributed solution/spring-session/README.md b/distributed solution/spring-session/README.md new file mode 100644 index 0000000..5470316 --- /dev/null +++ b/distributed solution/spring-session/README.md @@ -0,0 +1,189 @@ +# spring session 实现分布式 session + +## 一、项目结构 + +分布式session 主要配置文件为spring-session.xml和web.xml,其他的配置为标准的web工程的配置。 + +![spring-cloud-eureka](D:\spring-samples-for-all\pictures\spring-session.png) + +## 二、分布式session的配置 + +#### 2.1 引入依赖 + +```xml + + + org.springframework.data + spring-data-redis + 2.1.3.RELEASE + + + redis.clients + jedis + 2.9.0 + + + org.springframework.session + spring-session-data-redis + 2.1.3.RELEASE + +``` + +#### 2.2 在web.xml中配置session拦截器 + +```xml + + + springSessionRepositoryFilter + org.springframework.web.filter.DelegatingFilterProxy + + + springSessionRepositoryFilter + /* + + +``` + +#### 2.3 创建配置文件spring- session.xml,配置redis连接 + +有两点需要特别说明: + +1. spring-session 不仅提供了redis作为公共session存储的方案,同时也支持jdbc、mongodb、Hazelcast等作为公共session的存储; +2. 对于redis 存储方案而言,官方也提供了不止一种整合方式,这里我们选取的整合方案是jedis客户端作为连接,当然也可以使用Lettuce作为客户端连接。 + +```xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +``` + +## 三、验证分布式session + +#### 3.1 创建测试controller和测试页面 + +```java +@Controller +public class LoginController { + + @RequestMapping + public String index(){ + return "index"; + } + + @RequestMapping("home") + public String home(){ + return "home"; + } + + @PostMapping("login") + public String login(User user, HttpSession session, HttpServletRequest request, Model model){ + // 随机生成用户id + user.setUserId(Math.round(Math.floor(Math.random() *10*1000))); + // 将用户信息保存到id中 + session.setAttribute("USER",user); + return "redirect:home"; + } + +} +``` + +登录页面: + +```jsp +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 登录页面 + + +
服务器:<%=request.getServerName()+":"+request.getServerPort()%>
+
+ 用户:
+ 密码:
+ +
+ + +``` + +session 信息展示页面(home.jsp): + +```jsp +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 主页面 + + +
服务器:<%=request.getServerName()+":"+request.getServerPort()%>
+
登录用户: ${sessionScope.USER.username}
+
用户编号: ${sessionScope.USER.userId}
+ + +``` + +#### 3.2 启动项目 + +这里我们采用两个tomcat分别启动项目,在第一个项目index.jsp页面进行登录,第二个项目不登录,直接访问session展示页(home.jsp) + +tomcat 1 配置: + +![spring-session-tomcat01](D:\spring-samples-for-all\pictures\spring-session-tomcat01.png) + +tomcat 2 配置: + +![spring-session-tomcat02](D:\spring-samples-for-all\pictures\spring-session-tomcat02.png) + +**测试结果:** + +![spring-session-8080](D:\spring-samples-for-all\pictures\spring-session-8080.png) + +![spring-session-8090](D:\spring-samples-for-all\pictures\spring-session-8090.png) \ No newline at end of file diff --git a/distributed solution/spring-session/pom.xml b/distributed solution/spring-session/pom.xml new file mode 100644 index 0000000..1ac5fa9 --- /dev/null +++ b/distributed solution/spring-session/pom.xml @@ -0,0 +1,82 @@ + + + 4.0.0 + + com.heibaiying + spring-session + 1.0-SNAPSHOT + + + + org.apache.maven.plugins + maven-compiler-plugin + + 8 + 8 + + + + + + + 5.1.3.RELEASE + + + + + org.springframework + spring-context + ${spring-base-version} + + + org.springframework + spring-beans + ${spring-base-version} + + + org.springframework + spring-core + ${spring-base-version} + + + org.springframework + spring-web + ${spring-base-version} + + + org.springframework + spring-webmvc + ${spring-base-version} + + + javax.servlet + javax.servlet-api + 4.0.1 + provided + + + org.projectlombok + lombok + 1.18.0 + + + + org.springframework.data + spring-data-redis + 2.1.3.RELEASE + + + redis.clients + jedis + 2.9.0 + + + org.springframework.session + spring-session-data-redis + 2.1.3.RELEASE + + + + \ No newline at end of file diff --git a/distributed solution/spring-session/src/main/java/com/heibaiying/bean/User.java b/distributed solution/spring-session/src/main/java/com/heibaiying/bean/User.java new file mode 100644 index 0000000..16f41ed --- /dev/null +++ b/distributed solution/spring-session/src/main/java/com/heibaiying/bean/User.java @@ -0,0 +1,17 @@ +package com.heibaiying.bean; + +import lombok.Data; + +import java.io.Serializable; + +/** + * @author : heibaiying + */ +@Data +public class User implements Serializable { + + private long userId; + private String username; + private String password; + +} diff --git a/distributed solution/spring-session/src/main/java/com/heibaiying/controller/LoginController.java b/distributed solution/spring-session/src/main/java/com/heibaiying/controller/LoginController.java new file mode 100644 index 0000000..8a11c03 --- /dev/null +++ b/distributed solution/spring-session/src/main/java/com/heibaiying/controller/LoginController.java @@ -0,0 +1,38 @@ +package com.heibaiying.controller; + +import com.heibaiying.bean.User; +import org.springframework.stereotype.Controller; +import org.springframework.ui.Model; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpSession; + +/** + * @author : heibaiying + * @description : 登录 + */ +@Controller +public class LoginController { + + @RequestMapping + public String index(){ + return "index"; + } + + @RequestMapping("home") + public String home(){ + return "home"; + } + + @PostMapping("login") + public String login(User user, HttpSession session, HttpServletRequest request, Model model){ + // 随机生成用户id + user.setUserId(Math.round(Math.floor(Math.random() *10*1000))); + // 将用户信息保存到id中 + session.setAttribute("USER",user); + return "redirect:home"; + } + +} diff --git a/distributed solution/spring-session/src/main/resources/redis.properties b/distributed solution/spring-session/src/main/resources/redis.properties new file mode 100644 index 0000000..1a0357d --- /dev/null +++ b/distributed solution/spring-session/src/main/resources/redis.properties @@ -0,0 +1,8 @@ +redis.host=127.0.0.1 +redis.port=6379 +# ӳʱʱ +redis.timeout=2000 +# +redis.maxIdle=8 +# +redis.maxTotal=16 \ No newline at end of file diff --git a/distributed solution/spring-session/src/main/resources/spring-session.xml b/distributed solution/spring-session/src/main/resources/spring-session.xml new file mode 100644 index 0000000..b10cfe9 --- /dev/null +++ b/distributed solution/spring-session/src/main/resources/spring-session.xml @@ -0,0 +1,51 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/distributed solution/spring-session/src/main/resources/springApplication.xml b/distributed solution/spring-session/src/main/resources/springApplication.xml new file mode 100644 index 0000000..aafcb69 --- /dev/null +++ b/distributed solution/spring-session/src/main/resources/springApplication.xml @@ -0,0 +1,31 @@ + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/home.jsp b/distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/home.jsp new file mode 100644 index 0000000..5a822db --- /dev/null +++ b/distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/home.jsp @@ -0,0 +1,11 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 主页面 + + +
服务器:<%=request.getServerName()+":"+request.getServerPort()%>
+
登录用户: ${sessionScope.USER.username}
+
用户编号: ${sessionScope.USER.userId}
+ + \ No newline at end of file diff --git a/distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/index.jsp b/distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/index.jsp new file mode 100644 index 0000000..805223a --- /dev/null +++ b/distributed solution/spring-session/src/main/webapp/WEB-INF/jsp/index.jsp @@ -0,0 +1,14 @@ +<%@ page contentType="text/html;charset=UTF-8" language="java" %> + + + 登录页面 + + +
服务器:<%=request.getServerName()+":"+request.getServerPort()%>
+
+ 用户:
+ 密码:
+ +
+ + \ No newline at end of file diff --git a/distributed solution/spring-session/src/main/webapp/WEB-INF/web.xml b/distributed solution/spring-session/src/main/webapp/WEB-INF/web.xml new file mode 100644 index 0000000..6cd84c6 --- /dev/null +++ b/distributed solution/spring-session/src/main/webapp/WEB-INF/web.xml @@ -0,0 +1,54 @@ + + + + + + springMvc + org.springframework.web.servlet.DispatcherServlet + + contextConfigLocation + classpath:springApplication.xml + + 1 + + + + springMvc + / + + + + + + springSessionRepositoryFilter + org.springframework.web.filter.DelegatingFilterProxy + + + springSessionRepositoryFilter + /* + + + + + + characterEncodingFilter + org.springframework.web.filter.CharacterEncodingFilter + + encoding + UTF-8 + + + forceEncoding + true + + + + characterEncodingFilter + /* + + + \ No newline at end of file diff --git a/pictures/eureka-application.png b/pictures/eureka-application.png new file mode 100644 index 0000000000000000000000000000000000000000..b5d331ab37d4655565f2ada0feed0b9de650e6f4 GIT binary patch literal 12316 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 literal 0 HcmV?d00001 diff --git a/pictures/spring-boot-session-8080.png b/pictures/spring-boot-session-8080.png new file mode 100644 index 0000000000000000000000000000000000000000..0348960c1e98a501cdb5576267cb495408e5fb24 GIT binary patch literal 11351 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 literal 0 HcmV?d00001 diff --git a/pictures/spring-boot-session-8090.png b/pictures/spring-boot-session-8090.png new file mode 100644 index 0000000000000000000000000000000000000000..fcd7e863770fc9729d9e1997343cbee78bcb714e GIT binary patch literal 11215 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 literal 0 HcmV?d00001 diff --git a/pictures/spring-boot-session-app1.png b/pictures/spring-boot-session-app1.png new file mode 100644 index 0000000000000000000000000000000000000000..d6284056d8178df408d93e8778af6b174d2e9ef4 GIT binary patch literal 46851 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 literal 0 HcmV?d00001 diff --git a/pictures/spring-boot-session.png b/pictures/spring-boot-session.png new file mode 100644 index 0000000000000000000000000000000000000000..ec101176432e68f9837adbe3834e2514ad9b5df1 GIT binary patch literal 17644 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 IrJ?`-2hC>m-2eap literal 0 HcmV?d00001 diff --git a/pictures/spring-cloud-eureka-cluster.png b/pictures/spring-cloud-eureka-cluster.png new file mode 100644 index 0000000000000000000000000000000000000000..3fa546cc732b876619d587b6bf4929931cfd2980 GIT binary patch literal 9154 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 literal 0 HcmV?d00001 diff --git a/pictures/spring-cloud-eureka.png b/pictures/spring-cloud-eureka.png new file mode 100644 index 0000000000000000000000000000000000000000..1663f736d17522e0c963614d8fef3719660bd3ca GIT binary patch literal 7877 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 IWfbzi0OopukN^Mx literal 0 HcmV?d00001 diff --git a/pictures/spring-session-8090.png b/pictures/spring-session-8090.png new file mode 100644 index 0000000000000000000000000000000000000000..1f5e4bad94a0045005489e98fb2e9f4b41adc5ac GIT binary patch literal 12319 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 z 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 C1V}yr literal 0 HcmV?d00001 diff --git a/pictures/spring-session-tomcat01.png b/pictures/spring-session-tomcat01.png new file mode 100644 index 0000000000000000000000000000000000000000..4676a3dc710802bb26a8013392ba84b95f57bbd1 GIT binary patch literal 46711 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Ϛ!9}y#+`nHcZgp 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 Q9~vN4#i!7Z^5!A`ADq%1#Q*>R literal 0 HcmV?d00001 diff --git a/spring-cloud/spring-cloud-eureka-cluster/README.md b/spring-cloud/spring-cloud-eureka-cluster/README.md index db849a0..14cc498 100644 --- a/spring-cloud/spring-cloud-eureka-cluster/README.md +++ b/spring-cloud/spring-cloud-eureka-cluster/README.md @@ -1,3 +1,194 @@ -2019-01-11 11:16:14.320 INFO 13496 --- [nio-8010-exec-4] c.n.e.registry.AbstractInstanceRegistry : Registered instance SERVER/DESKTOP-8JGSFLJ:server:8010 with status UP (replication=true) -2019-01-11 11:16:15.084 INFO 13496 --- [ Thread-41] c.n.e.registry.AbstractInstanceRegistry : Registered instance SERVER/DESKTOP-8JGSFLJ:server:8020 with status UP (replication=true) -2019-01-11 11:16:15.085 INFO 13496 --- [ Thread-41] c.n.e.registry.AbstractInstanceRegistry : Registered instance SERVER/DESKTOP-8JGSFLJ:server:8030 with status UP (replication=true) \ No newline at end of file +# eureka 高可用注册中心的搭建 + +## 一、项目结构 + +eureka-server为服务注册中心,负责服务的管理; + +eureka-client 为eureka客户端; + +![spring-cloud-eureka](D:\spring-samples-for-all\pictures\spring-cloud-eureka-cluster.png) + + + +## 二、三步搭建eureka 高可用注册中心 + +这里我们以单机伪集群的方式搭建,让三个单机注册中心互相注册,实现注册中心的高可用。配置示意图如下: + +![eureka-server-client](D:\spring-samples-for-all\pictures\eureka-server-client.png) + +#### 2.1 引入eureka服务端依赖 + +```xml + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-server + +``` + +#### 2.2 创建三份配置文件,分别代表不同注册中心的配置 + +![eureka-application](D:\spring-samples-for-all\pictures\eureka-application.png) + +application-01.yml: + +```yaml +spring: + application: + name: server +server: + port: 8010 +eureka: + server: + # 关闭自我保护机制 开发的时候可以开启 保证不可用的服务能够及时剔除 + enable-self-preservation: false + instance: + hostname: 127.0.0.1 + client: + serviceUrl: + defaultZone: http://localhost:8020/eureka/,http://192.168.200.228:8030/eureka/ +``` + +application-02.yml + +```yaml +spring: + application: + name: server +server: + port: 8020 +eureka: + server: + # 关闭自我保护机制 开发的时候可以开启 保证不可用的服务能够及时剔除 + enable-self-preservation: false + instance: + hostname: localhost + client: + serviceUrl: + defaultZone: http://127.0.0.1:8010/eureka/,http://192.168.200.228:8030/eureka/ +``` + +application-03.yml + +```yaml +spring: + application: + name: server +server: + port: 8030 +eureka: + server: + # 关闭自我保护机制 开发的时候可以开启 保证不可用的服务能够及时从列表中剔除 + enable-self-preservation: false + instance: + hostname: 192.168.200.228 + client: + serviceUrl: + defaultZone: http://127.0.0.1:8010/eureka/,http://localhost:8020/eureka/ +``` + +需要注意的是Eureka互相注册要求各个Eureka实例的eureka.instance.hostname不同,如果相同,则会被Eureka标记为unavailable-replicas(不可用副本)。 + +#### 2.3 启动类上增加注解@EnableEurekaServer激活eureka服务端自动配置 + +```java +@SpringBootApplication +@EnableEurekaServer +public class EurekaServerApplication { + + public static void main(String[] args) { + SpringApplication.run(EurekaServerApplication.class, args); + } + +} +``` + + + +## 三、三步搭建eureka 客户端 + +#### 3.1 引入eureka客户端依赖 + +```xml + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + +``` + +#### 3.2 eureka 客户端配置,指定注册中心地址 + +```yaml +server: + port: 8040 +# 指定服务命名 +spring: + application: + name: eureka-client +# 指定注册中心地址 +eureka: + client: + serviceUrl: + defaultZone: http://127.0.0.1:8010/eureka/,http://localhost:8020/eureka/,http://192.168.200.228:8030/eureka/ +``` + +#### 3.3 启动类上增加注解@EnableDiscoveryClient激活eureka客户端自动配置 + +```java +@SpringBootApplication +@EnableDiscoveryClient +public class EurekaClientApplication { + + public static void main(String[] args) { + SpringApplication.run(EurekaClientApplication.class, args); + } + +} +``` + +## 4.启动项目 + +### 4.1 这里我们可以采用命令行方式指定配置,分别启动三个注册中心 + +![eureka-active](D:\spring-samples-for-all\pictures\eureka-active.png) + +### 4.2 高可用集群搭建成功的判定 + +这里需要主要的是仅仅status中出现其他注册中心时,并不一定是搭建成功的,**一定是当注册中心的DS Replicas 和 available replicas中显示其余的注册中心时候**,才代表搭建成功。 + +#### **4.2.1 点击下面注册中心的可用实例列表中的地址,访问链接分以下几个情况:** + +1. hostname和prefer-ip-address都没有配置,则访问 主机名:服务名:端口号, + +``` + 如:http://desktop-8jgsflj:8761/info +``` + +2. 配置了hostname而没有配置prefer-ip-address,则访问 hostname:服务名:端口号, + + 如:http://server:8761/info + +3. 如果配置了prefer-ip-address,则访问 ipAddress:服务名:端口号, + + 如:http://192.168.200.228:8761/info + +8010 注册中心: + +![eureka-8010](D:\spring-samples-for-all\pictures\eureka-8010.png) + +8020 注册中心: + +![eureka-8020](D:\spring-samples-for-all\pictures\eureka-8020.png) + +8030 注册中心: + +![eureka-8030](D:\spring-samples-for-all\pictures\eureka-8030.png) + +### 4.3 prefer-ip-address 参数说明 + +在有的配置示例中,配置了prefer-ip-address为true。 + +```properties +eureka.instance.prefer-ip-address=true +``` + +在多机器独立部署的情况下是没有问题的,配置prefer-ip-address为ture,代表发现服务时候优先按照ip去搜寻,对于多集群而言,可以保证尽快准确搜索到服务。而对于单机部署来说,ip地址都是相同的,这会导致其余注册中心出现在unavailable-replicas(不可用副本)中。所以单机部署时候不建议开启这个参数(默认值为false),多机部署时候可以开启。 \ No newline at end of file diff --git a/spring-cloud/spring-cloud-eureka/README.md b/spring-cloud/spring-cloud-eureka/README.md index e69de29..f5b9983 100644 --- a/spring-cloud/spring-cloud-eureka/README.md +++ b/spring-cloud/spring-cloud-eureka/README.md @@ -0,0 +1,98 @@ +# eureka 服务的注册与发现 + +## 一、项目结构 + +eureka-server为服务注册中心,负责服务的管理; + +eureka-client 为eureka客户端; + +![spring-cloud-eureka](D:\spring-samples-for-all\pictures\spring-cloud-eureka.png) + +## 二、三步搭建eureka 服务注册中心 + +#### 2.1 引入eureka服务端依赖 + +```xml + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-server + +``` + +#### 2.2 eureka 服务端配置 + +```yaml +server: + port: 8010 +eureka: + instance: + hostname: localhost + client: + # 设置为false,代表不向注册中心注册自己 + register-with-eureka: false + # 注册中心主要用于维护服务,并不需要检索服务,所以设置为false + fetch-registry: false + serviceUrl: + defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/ +``` + +#### 2.3 启动类上增加注解@EnableEurekaServer激活eureka服务端自动配置 + +```java +@SpringBootApplication +@EnableEurekaServer +public class EurekaServerApplication { + + public static void main(String[] args) { + SpringApplication.run(EurekaServerApplication.class, args); + } + +} +``` + +## 三、三步搭建eureka 客户端 + +#### 3.1 引入eureka客户端依赖 + +```xml + + org.springframework.cloud + spring-cloud-starter-netflix-eureka-client + +``` + +#### 3.2 eureka 客户端配置 + +```yaml +server: + port: 8020 +# 指定服务命名 +spring: + application: + name: eureka-client +# 指定注册中心地址 +eureka: + client: + serviceUrl: + defaultZone: http://localhost:8010/eureka/ +``` + +#### 3.3 启动类上增加注解@EnableDiscoveryClient激活eureka客户端自动配置 + +```java +@SpringBootApplication +@EnableDiscoveryClient +public class EurekaClientApplication { + + public static void main(String[] args) { + SpringApplication.run(EurekaClientApplication.class, args); + } + +} +``` + +## 4.启动项目 + +#### 4.1 进入注册中心控制台,查看服务注册情况 + +![eureka](D:\spring-samples-for-all\pictures\eureka.png) \ No newline at end of file