国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

SpringBoot+Redis+Nginx實(shí)現(xiàn)負(fù)載均衡以及Session緩存共享

charles_paul / 1246人閱讀

摘要:并沒有因?yàn)椴灰恢露煌褂眠B接,確實(shí)存儲(chǔ)了一個(gè),如下工程目錄實(shí)際操縱過程中遇到一個(gè)問題啟動(dòng)工程的時(shí)候報(bào)錯(cuò)解決方法對(duì)于依賴,增加了一個(gè),且版本為。啟動(dòng),未報(bào)錯(cuò),問題解決。后續(xù)有時(shí)間再研究。

1.環(huán)境信息
nginx-1.11.10
redis-latest包(redis windows版本)
springboot1.5.1.RELEASE

2.新建一個(gè)SpringBoot項(xiàng)目,參考如下鏈接:https://segmentfault.com/a/11...

3.nginx和redis解壓縮即可,并正常啟動(dòng)

4.springboot集成Redis以及springboot,需要在POM文件中增加依賴

    
    
    4.0.0

    com.example
    demo3
    0.0.1-SNAPSHOT
    jar

    demo
    Demo project for Spring Boot

    
        org.springframework.boot
        spring-boot-starter-parent
        1.5.1.RELEASE
         
    

    
        UTF-8
        UTF-8
        1.8
    

    
        
            org.springframework.boot
            spring-boot-starter
        
        
             org.springframework
             spring-context-support
             4.3.5.RELEASE
        
          
            org.springframework.boot  
            spring-boot-starter-web  
            
          
            org.springframework.session  
            spring-session-data-redis  
          
          
          org.springframework.boot  
          spring-boot-starter-redis
          1.3.8.RELEASE  
          
        
            org.springframework.boot
            spring-boot-starter-test
            test
        
      
        org.springframework.data
        spring-data-redis
     
    

    
        
            
                org.springframework.boot
                spring-boot-maven-plugin
            
        
    


    

5.新建Controller類DemoController.java

@Controller
public class DemoController {
    @Autowired  
    DemoService demoService;  
     
    @RequestMapping("testcache")
    @ResponseBody
    public String testCache(@RequestParam String key){
        String s = demoService.testCache(key);
        return s;
    }
    
    @RequestMapping("/getseansession")
    @ResponseBody
    public Map getSession(HttpServletRequest request){
        Map attributeMap = new HashMap();
        request.getSession().setAttribute("message", request.getRequestURI());
        attributeMap.put("message", request.getRequestURI());
        System.out.println("sessionID:" + request.getSession().getId());
        return attributeMap;
    }
}

6.新建Service類DemoService.java

@Service
public class DemoService {
    @Cacheable(value = "keycache")
    public String testCache(String key){
        System.out.println("testCache:" + key);
        return key;
    }
}

7.新建RedisConfig類增加@EnableRedisHttpSession注解

@Configuration  
@EnableCaching
@EnableRedisHttpSession
public class RedisConfig{
}

8.application.properties文件配置,其中為了測試ngnix負(fù)載均衡功能,本工程配置為8080端口,另一個(gè)springboot工程可以配置為別的端口,比如8088,以便啟動(dòng)兩個(gè)Server

#redis spring.redis.password=xxx
#spring.redis.database= # database name  
spring.redis.hostname=127.0.0.1 # server host
spring.redis.port=6379  
spring.redis.pool.maxActive=8  
spring.redis.pool.maxWait=-1  
spring.redis.pool.maxIdle=8  
spring.redis.pool.minIdle=0  
spring.redis.timeout=0

#tomcat port configuration
server.port=8080

可以看到啟動(dòng)了兩個(gè)Server,DemoApplication和DemoApplication(1)

9.ngnix.conf配置文件中配置負(fù)載均衡策略

upstream test {
        server localhost:8080;
        server localhost:8088;
    }
    
    server {
        listen       80;
        server_name  localhost;
        client_max_body_size 1024M;

        #charset koi8-r;

        #access_log  logs/host.access.log  main;

        #location / {
        #    root   html;
        #    index  index.html index.htm;
        #}

        location / {
            proxy_pass http://test/getseansession;
            proxy_set_header Host $host:$server_port;
        }

10.訪問http://localhost,會(huì)發(fā)現(xiàn)http請(qǐng)求交替訪問后端兩個(gè)server。且sessionID是一樣的“sessionID:ad0cbb3b-d24d-4d61-87ac-b9ddcfeccaa4”。并沒有因?yàn)閟erver不一致而sessionID不同


使用RedisClient連接Redis Server,確實(shí)存儲(chǔ)了一個(gè)sessionID,如下:

11.maven工程目錄

12.實(shí)際操縱過程中遇到一個(gè)問題:啟動(dòng)springboot工程的時(shí)候報(bào)錯(cuò)“java.lang.IllegalStateException: Cannot load configuration class: org.springframework.boot.autoconfigure.cache.RedisCacheConfiguration”

解決方法:對(duì)于spring-context-support依賴,增加了一個(gè)version,且版本為4.3.5.RELEASE。啟動(dòng),未報(bào)錯(cuò),問題解決。沒配version的時(shí)候,默認(rèn)是4.3.6.RELEASE,奇怪。后續(xù)有時(shí)間再研究。

        
             org.springframework
             spring-context-support
             4.3.5.RELEASE
        

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://specialneedsforspecialkids.com/yun/66727.html

相關(guān)文章

  • SpringBoot+Redis+Nginx實(shí)現(xiàn)負(fù)載均衡以及Session緩存共享

    摘要:并沒有因?yàn)椴灰恢露煌褂眠B接,確實(shí)存儲(chǔ)了一個(gè),如下工程目錄實(shí)際操縱過程中遇到一個(gè)問題啟動(dòng)工程的時(shí)候報(bào)錯(cuò)解決方法對(duì)于依賴,增加了一個(gè),且版本為。啟動(dòng),未報(bào)錯(cuò),問題解決。后續(xù)有時(shí)間再研究。 1.環(huán)境信息nginx-1.11.10redis-latest包(redis windows版本)springboot1.5.1.RELEASE 2.新建一個(gè)SpringBoot項(xiàng)目,參考如下鏈接:h...

    xuxueli 評(píng)論0 收藏0
  • 兩年了,我寫了這些干貨!

    摘要:開公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來越多時(shí),大家搜索起來就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章系列處理登錄請(qǐng)求前后端分離一使用完美處理權(quán)限問題前后端分離二使用完美處理權(quán)限問題前后端分離三中密碼加鹽與中異常統(tǒng)一處理 開公眾號(hào)差不多兩年了,有不少原創(chuàng)教程,當(dāng)原創(chuàng)越來越多時(shí),大家搜索起來就很不方便,因此做了一個(gè)索引幫助大家快速找到需要的文章! Spring Boo...

    huayeluoliuhen 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<