远程连接redis连接池总是报错

springboot连接redis 项目启动
服务器上redis是开着的 也能连上

redis.conf中绑定本地id也删除了

就是用这个连接池的时候报错

控制台报如下错误:

org.springframework.data.redis.RedisConnectionFailureException: Cannot get Jedis connection; nested exception is redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:204)
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.getConnection(JedisConnectionFactory.java:348)
    at org.springframework.data.redis.core.RedisConnectionUtils.doGetConnection(RedisConnectionUtils.java:129)
    at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:92)
    at org.springframework.data.redis.core.RedisConnectionUtils.getConnection(RedisConnectionUtils.java:79)
    at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:194)
    at org.springframework.data.redis.core.RedisTemplate.execute(RedisTemplate.java:169)
    at org.springframework.data.redis.core.AbstractOperations.execute(AbstractOperations.java:91)
    at org.springframework.data.redis.core.DefaultValueOperations.set(DefaultValueOperations.java:169)
    at com.how2java.test.TestRedisOne.testRedisOne(TestRedisOne.java:82)
    at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
    at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
    at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
    at java.lang.reflect.Method.invoke(Method.java:498)
    at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:50)
    at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
    at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:47)
    at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
    at org.springframework.test.context.junit4.statements.RunBeforeTestMethodCallbacks.evaluate(RunBeforeTestMethodCallbacks.java:75)
    at org.springframework.test.context.junit4.statements.RunAfterTestMethodCallbacks.evaluate(RunAfterTestMethodCallbacks.java:86)
    at org.springframework.test.context.junit4.statements.SpringRepeat.evaluate(SpringRepeat.java:84)
    at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:325)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:252)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.runChild(SpringJUnit4ClassRunner.java:94)
    at org.junit.runners.ParentRunner$3.run(ParentRunner.java:290)
    at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:71)
    at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:288)
    at org.junit.runners.ParentRunner.access$000(ParentRunner.java:58)
    at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:268)
    at org.springframework.test.context.junit4.statements.RunBeforeTestClassCallbacks.evaluate(RunBeforeTestClassCallbacks.java:61)
    at org.springframework.test.context.junit4.statements.RunAfterTestClassCallbacks.evaluate(RunAfterTestClassCallbacks.java:70)
    at org.junit.runners.ParentRunner.run(ParentRunner.java:363)
    at org.springframework.test.context.junit4.SpringJUnit4ClassRunner.run(SpringJUnit4ClassRunner.java:191)
    at org.eclipse.jdt.internal.junit4.runner.JUnit4TestReference.run(JUnit4TestReference.java:50)
    at org.eclipse.jdt.internal.junit.runner.TestExecution.run(TestExecution.java:38)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:459)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.runTests(RemoteTestRunner.java:675)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.run(RemoteTestRunner.java:382)
    at org.eclipse.jdt.internal.junit.runner.RemoteTestRunner.main(RemoteTestRunner.java:192)
    Caused by: redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool
    at redis.clients.util.Pool.getResource(Pool.java:53)
    at redis.clients.jedis.JedisPool.getResource(JedisPool.java:226)
    at redis.clients.jedis.JedisPool.getResource(JedisPool.java:16)
    at org.springframework.data.redis.connection.jedis.JedisConnectionFactory.fetchJedisConnector(JedisConnectionFactory.java:194)
    ... 38 more


Caused by: redis.clients.jedis.exceptions.JedisConnectionException: java.net.SocketTimeoutException: connect timed out
    at redis.clients.jedis.Connection.connect(Connection.java:207)
    at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:93)
    at redis.clients.jedis.BinaryJedis.connect(BinaryJedis.java:1767)
    at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:106)
    at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:888)
    at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:432)
    at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:361)
    at redis.clients.util.Pool.getResource(Pool.java:49)
    ... 41 more


Caused by: java.net.SocketTimeoutException: connect timed out
    at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method)
    at java.net.DualStackPlainSocketImpl.socketConnect(DualStackPlainSocketImpl.java:85)
    at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:350)
    at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
    at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
    at java.net.PlainSocketImpl.connect(PlainSocketImpl.java:172)
    at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
    at java.net.Socket.connect(Socket.java:589)
    at redis.clients.jedis.Connection.connect(Connection.java:184)
    ... 48 more


package com.how2java.springboot.web;

import java.util.Date;






import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.how2java.redis.RedisClient;
import com.how2java.springboot.pojo.JsonData;
import com.how2java.springboot.pojo.UserPojo;
import com.how2java.utils.JsonUtils;



@RestController
@RequestMapping("/api/v1/redis")
public class RedisTestController {


    //得到redis封装类
    @Autowired
    private RedisClient redis;

    //添加字符串
    @GetMapping(value="add")
    public Object add(){

        redis.set("username", "xddddddd");
        return JsonData.buildSuccess();

    }

    //通过key值得到value字符串
    @GetMapping(value="get")
    public Object get(){

        String value = redis.get("username");
        return JsonData.buildSuccess(value);

    }

    //将对象通过工具类转成String类型,存入redis中
    @GetMapping(value="save_user")
    public Object saveUser(){
        UserPojo user = new UserPojo(1, "abc", "11", new Date());
        String userStr = JsonUtils.obj2String(user);
        boolean flag = redis.set("base:user:11", userStr);
        return JsonData.buildSuccess(flag);

    }

    //通过key值得到value值,让后将value转为对象
    @GetMapping(value="find_user")
    public Object findUser(){

        String userStr = redis.get("base:user:11");
        UserPojo user = JsonUtils.string2Obj(userStr, UserPojo.class);
        return JsonData.buildSuccess(user);

    }        
}

application.propertites

##REDIS (RedisProperties)
spring.redis.host=39.105.35.139
spring.redis.port=6397
spring.redis.pool.max-idle=200
spring.redis.pool.min-idle=200
spring.redis.pool.max-active=2000
spring.redis.pool.max-wait=1000
spring.redis.timeout=3000
spring.redis.database=0
spring.redis.password=
package com.how2java.redis;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.redis.core.StringRedisTemplate;
import org.springframework.stereotype.Component;

/**
 * 功能描述:redis工具类
 * 对于redisTpl.opsForValue().set(key, value)进行了一次封装,不然每次都要这样保存值
 * 而封装后只需:new RedisClient().set(key,value);
 */
@Component
public class RedisClient {

    @Autowired
    private StringRedisTemplate redisTpl; //jdbcTemplate    

     // 功能描述:设置key-value到redis中    
    public boolean set(String key ,String value){
        try{
            redisTpl.opsForValue().set(key, value);
            return true;
        }catch(Exception e){
            e.printStackTrace();
            return false;
        }    
    }        

     // 功能描述:通过key获取缓存里面的值
    public String get(String key){
        return redisTpl.opsForValue().get(key);
    }        
}


package com.how2java.utils;

import java.io.IOException;

import org.springframework.util.StringUtils;

import com.fasterxml.jackson.databind.ObjectMapper;

/**
 * 字符串转对象,对象转字符串的工具类
 * 因为StringRedisTemplate的opsForValue()方法需要key,value都需要String类型,所以当value值存入对象的时候
 * 先转成字符串后存入。
 */
public class JsonUtils {

    private static ObjectMapper objectMapper = new ObjectMapper();

    //对象转字符串
    public static <T> String obj2String(T obj){
        if (obj == null){
            return null;
        }
        try {
            return obj instanceof String ? (String) obj : objectMapper.writeValueAsString(obj);
        } catch (Exception e) {
            e.printStackTrace();
            return null;
        }
    }

    //字符串转对象
    public static <T> T string2Obj(String str,Class<T> clazz){
        if (StringUtils.isEmpty(str) || clazz == null){
            return null;
        }
        try {
            return clazz.equals(String.class)? (T) str :objectMapper.readValue(str,clazz);
        } catch (IOException e) {
            e.printStackTrace();
            return null;
        }
    }
}


package com.how2java.springboot.pojo;

import java.io.Serializable;

/**
 * 这是后端向前端响应的一个包装类
 * 一般后端向前端传值会有三个属性
 * 1:响应状态
 * 2:如果响应成功,把数据放入
 * 3: 描述,响应成功描述,或者失败的描述
 */
public class JsonData implements Serializable {


    private static final long serialVersionUID = 1L;

    private Integer code; // 状态码 0 表示成功,1表示处理中,-1表示失败
    private Object data; // 数据
    private String msg;// 描述

    public JsonData() {
    }

    public JsonData(Integer code, Object data, String msg) {
        this.code = code;
        this.data = data;
        this.msg = msg;
    }

    // 成功,只返回成功状态码
    public static JsonData buildSuccess() {
        return new JsonData(0, null, null);
    }

    // 成功,传入状态码和数据
    public static JsonData buildSuccess(Object data) {
        return new JsonData(0, data, null);
    }

    // 失败,传入描述信息
    public static JsonData buildError(String msg) {
        return new JsonData(-1, null, msg);
    }

    // 失败,传入描述信息,状态码
    public static JsonData buildError(String msg, Integer code) {
        return new JsonData(code, null, msg);
    }

    // 成功,传入数据,及描述信息
    public static JsonData buildSuccess(Object data, String msg) {
        return new JsonData(0, data, msg);
    }

    // 成功,传入数据,及状态码
    public static JsonData buildSuccess(Object data, int code) {
        return new JsonData(code, data, null);
    }

    public Integer getCode() {
        return code;
    }

    public void setCode(Integer code) {
        this.code = code;
    }

    public Object getData() {
        return data;
    }

    public void setData(Object data) {
        this.data = data;
    }

    public String getMsg() {
        return msg;
    }

    public void setMsg(String msg) {
        this.msg = msg;
    }

    public static long getSerialversionuid() {
        return serialVersionUID;
    }

    @Override
    public String toString() {
        return "JsonData [code=" + code + ", data=" + data + ", msg=" + msg
                + "]";
    }

    //提供get和set方法,和toString方法
}

package com.how2java.springboot.pojo;

import java.util.Date;



public class UserPojo {
    private int age;

    private String pwd;

    private String phone;

    private Date createTime;

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public String getPwd() {
        return pwd;
    }

    public void setPwd(String pwd) {
        this.pwd = pwd;
    }

    public String getPhone() {
        return phone;
    }

    public void setPhone(String phone) {
        this.phone = phone;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }
     public UserPojo() {
            super();
        }

        public UserPojo(int age, String pwd, String phone, Date date) {
            super();
            this.age = age;
            this.pwd = pwd;
            this.phone = phone;
            this.createTime = date;
        }
}


2个回答

在项目中使用redis做缓存,当运行一段时间后就会出现如下错误:Could not get a resource from the pool,然后在看具体的异常信息就是JedisPool中获取不到jedis对象,也就是说连接池中没有可用的jedis。

自己的第一反应就是把最大链接数(setMaxTotal)调大一些,刚开始设置了100、后来200、在后来2000都不行

然后上网一搜发现大家的回答也都是修改最大连接数,如下demo就是网上一篇博客的解释:

1、产生原因:客户端去redis服务器拿连接(代码描述的是租用对象borrowObject)的时候,池中无可用连接,即池中所有连接被占用,且在等待时候设定的超时时间后还没拿到时,报出此异常。

2、解决办法:调整JedisPoolConfig中maxActive为适合自己系统的阀值。

转自 https://blog.csdn.net/QH_JAVA/article/details/54669973

连接超时,如果是云端的服务器的话;这个会跟平时的虚拟机有待不一样;
1.修改redis.conf文件,将 bind 127.0.0.1这一行注释掉,或是将127.0.0.1修改为0.0.0.0
(redis默认只支持本地连接,修改为0.0.0.0时,这样就可以支持外机连接了)
2.修改redis.conf文件,将protected-mode yes 改为no
(解除保护模式,也是DENIED Redis is running in protected mode because protected mode is enabled问题的解决)
要是云的服务机还需要将服务器安全设置里面打开需要的端口
3.重启redis服务

weixin_40001125
localhost-9527 回复qq_39634344: 你设置Redis里面有密码吗?本人之前是因为密码的原因
7 个月之前 回复
qq_39634344
qq_39634344 但是还是不行啊 还是报这个错误
7 个月之前 回复
qq_39634344
qq_39634344 我已经把bind 127.0.0.1注释掉了 也将protected-mode yes 改为no 云服务器开放了6379
7 个月之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
redis远程连接报错(Too many Cluster redirections)
最近搭建redis集群环境,一直在报Too many Cluster redirections的错误。 具体信息如下: 1、redis集群搭建在同一台阿里云的ECS服务器上,使用端口为7001~7006,三主三从; 2、ECS安全策略以及ubuntu内部防火墙均已经开通; 3、redis配置文件中bind的是网卡的实际IP(非公网IP),运行集群脚本也是用的网卡的实际IP; 4、从ECS上通过内网IP和公网IP都可以连接redis集群,从本地可以通过Redis DesktopManager连接集群并成功读写; 5、用JedisCluster操作Redis则报错(Too many Cluster redirections); 6、搜索过这个问题的报错解决方法,基本都是因为bind了127.0.0.1,但是我已经bind了网卡的IP了,启动集群也用的是网卡IP。 请各位大神帮忙看看还有什么原因会导致这个问题,我悬赏分没有了,还请大神们施舍答案,谢谢。 java代码: JedisPoolConfig poolConfig = new JedisPoolConfig(); // 最大连接数 poolConfig.setMaxTotal(1); // 最大空闲数 poolConfig.setMaxIdle(1); // 最大允许等待时间,如果超过这个时间还未获取到连接,则会报JedisException异常: // Could not get a resource from the pool poolConfig.setMaxWaitMillis(1000); Set<HostAndPort> nodes = new LinkedHashSet<HostAndPort>(); nodes.add(new HostAndPort("x.x.x.x", 7001)); nodes.add(new HostAndPort("x.x.x.x", 7002)); nodes.add(new HostAndPort("x.x.x.x", 7003)); nodes.add(new HostAndPort("x.x.x.x", 7004)); nodes.add(new HostAndPort("x.x.x.x", 7005)); nodes.add(new HostAndPort("x.x.x.x", 7006)); JedisCluster cluster = new JedisCluster(nodes, poolConfig); String name = cluster.get("name"); System.out.println(name); cluster.set("age", "18"); System.out.println(cluster.get("age")); try { cluster.close(); } catch (Exception e) { e.printStackTrace(); }
旧redis宕机后,sentinel推选出新redis,端口为6380或其他。但程序连接配置文件的端口还是6379,程序配置文件应该怎么动态获取redis端口来连接redis?
程序连接redis的配置文件应该怎么动态获取redis端口来连接redis?
连接redis集群报错提示 ERR unknown command 'SENTINEL'?
Java 连接redis集群报错提示 ERR unknown command 'SENTINEL'?怎么解决呢! 连接集群的代码在这里https://github.com/warmbreeze/sharded-jedis-sentinel-pool Exception in thread "main" redis.clients.jedis.exceptions.JedisDataException: ERR unknown command 'SENTINEL' at redis.clients.jedis.Protocol.processError(Protocol.java:117) at redis.clients.jedis.Protocol.process(Protocol.java:151) at redis.clients.jedis.Protocol.read(Protocol.java:205) at redis.clients.jedis.Connection.readProtocolWithCheckingBroken(Connection.java:297) at redis.clients.jedis.Connection.getRawObjectMultiBulkReply(Connection.java:242) at redis.clients.jedis.Connection.getObjectMultiBulkReply(Connection.java:248) at redis.clients.jedis.Jedis.sentinelGetMasterAddrByName(Jedis.java:2824) at com.cloud.utils.redis.ShardedJedisSentinelPool.initSentinels(ShardedJedisSentinelPool.java:166) at com.cloud.utils.redis.ShardedJedisSentinelPool.<init>(ShardedJedisSentinelPool.java:92) at com.cloud.utils.redis.ShardedJedisSentinelPool.<init>(ShardedJedisSentinelPool.java:75) at ShardedJedisSentinelPoolTest.main(ShardedJedisSentinelPoolTest.java:31)
求 java Redis 连接池 工具类
谁有我一个 java Redis 连接池的工具类, 最好附上一些真删改查的小例子
redis desktop manage 连接redis时连不上
![![图片说明](https://img-ask.csdn.net/upload/201708/16/1502874106_115522.png)图片说明](https://img-ask.csdn.net/upload/201708/16/1502874099_63750.png)redis desktop manage 连接redis时 我用测试链接按钮能连上 但是实际去连的时候 就连不上了
Redis无法获取连接异常
最近搞缓存,所以折腾了一下redis,用jedis连接redis,发现在64位windows下运行一段时间就报错了Accepting client connection: accept: Unknown error, 然后jedis就一直连接超时是服务器停了。重启一下redis就又能连接上了。redis配置的日志级别是debug,也没抛其他错误,看了连接数也就我一个。纠结啊。。。。
asp.net连接redis集群MOVED错误
asp.net用ServiceStack.Redis连接redis集群出现MOVED错误
nodejs连接redis,经常掉线,然后重新连接,报错:Redis connection lost and command aborted. It might have been processed.
``` UnhandledPromiseRejectionWarning: AbortError: Redis connection lost and command aborted. It might have been processed. at RedisClient.flush_and_error (C:\workspace\MainData\node_modules\redis\index.js:362:23) at RedisClient.connection_gone (C:\workspace\MainData\node_modules\redis\index.js:664:14) at RedisClient.on_error (C:\workspace\MainData\node_modules\redis\index.js:410:10) at Socket.<anonymous> (C:\workspace\MainData\node_modules\redis\index.js:279:14) at Socket.emit (events.js:198:13) at emitErrorNT (internal/streams/destroy.js:91:8) at emitErrorAndCloseNT (internal/streams/destroy.js:59:3) at process._tickCallback (internal/process/next_tick.js:63:19) (node:8088) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 1) (node:8088) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code. (node:8088) UnhandledPromiseRejectionWarning: AbortError: Redis connection lost and command aborted. It might have been processed. at RedisClient.flush_and_error (C:\workspace\MainData\node_modules\redis\index.js:362:23) at RedisClient.connection_gone (C:\workspace\MainData\node_modules\redis\index.js:664:14) at RedisClient.on_error (C:\workspace\MainData\node_modules\redis\index.js:410:10) at Socket.<anonymous> (C:\workspace\MainData\node_modules\redis\index.js:279:14) at Socket.emit (events.js:198:13) at emitErrorNT (internal/streams/destroy.js:91:8) at emitErrorAndCloseNT (internal/streams/destroy.js:59:3) at process._tickCallback (internal/process/next_tick.js:63:19) (node:8088) UnhandledPromiseRejectionWarning: Unhandled promise rejection. This error originated either by throwing inside of an async function without a catch block, or by rejecting a promise which was not handled with .catch(). (rejection id: 2) ```
远程连接问题,别人连不上,只有我能连上。
为什么办公室只有本人一台电脑能远程连接服务器,其他同事连接不了?远程软件是xshell,中午大家都能脸上,我通过远程下载了redis后大家都掉线了。只有我在线
linux ps命令查看哪些ip连接了redis
linux ps命令查看哪些ip连接了redis; linux ps命令查看哪些ip连接了redis; linux ps命令查看哪些ip连接了redis;
redis连接问题,连接不到redis server
第一次使用redis在linux中,在防火墙里面添加6379端口后 还不能连接redis server,求大神帮忙![图片说明](https://img-ask.csdn.net/upload/201709/13/1505264674_522612.png)
HttpServletRequest request .getSession() 报错,报错内容是获取不到Redis连接
HttpServletRequest request .getSession() 报错,报错内容是获取不到Redis连接,但是操作Redis没有任何问题。(框架是Spring + SpringMVC) 报错语句,如图 ![图片说明](https://img-ask.csdn.net/upload/201909/11/1568170120_204317.png) 报错详情,如图 ![图片说明](https://img-ask.csdn.net/upload/201909/11/1568170222_638268.png) 报错内容: java.util.NoSuchElementException: Unable to validate object [redis.clients.jedis.util.Pool.getResource(Pool.java:53), redis.clients.jedis.JedisPool.getResource(JedisPool.java:234), redis.clients.jedis.JedisPool.getResource(JedisPool.java:15), tomcat.request.session.data.cache.impl.redis.RedisManager.setnx(RedisManager.java:51), tomcat.request.session.data.cache.impl.redis.RedisCache.setnx(RedisCache.java:36), tomcat.request.session.redis.SessionManager.createSession(SessionManager.java:100), tomcat.request.session.redis.SessionManager.createSession(SessionManager.java:28), org.apache.catalina.connector.Request.doGetSession(Request.java:2981), org.apache.catalina.connector.Request.getSession(Request.java:2374), org.apache.catalina.connector.RequestFacade.getSession(RequestFacade.java:908), sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43), java.lang.reflect.Method.invoke(Method.java:498), org.springframework.beans.factory.support.AutowireUtils$ObjectFactoryDelegatingInvocationHandler.invoke(AutowireUtils.java:307), com.sun.proxy.$Proxy105.getSession(Unknown Source), com.dsh.live.login.controller.LoginController.userLogin(LoginController.java:64), sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method), sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62), sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43), java.lang.reflect.Method.invoke(Method.java:498), org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:222), org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:137), org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:110), org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandlerMethod(RequestMappingHandlerAdapter.java:814), org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:737), org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:85), org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:959), org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:893), org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:969), org.springframework.web.servlet.FrameworkServlet.doPost(FrameworkServlet.java:871), javax.servlet.http.HttpServlet.service(HttpServlet.java:660), org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:845), javax.servlet.http.HttpServlet.service(HttpServlet.java:741), org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:231), org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.apache.tomcat.websocket.server.WsFilter.doFilter(WsFilter.java:53), org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193), org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.springframework.web.filter.CharacterEncodingFilter.doFilterInternal(CharacterEncodingFilter.java:121), org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107), org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:193), org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:166), org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:199), org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:96), tomcat.request.session.redis.SessionHandlerValve.invoke(SessionHandlerValve.java:29), org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:137), org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:81), org.apache.catalina.valves.AbstractAccessLogValve.invoke(AbstractAccessLogValve.java:651), org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:87), org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:342), org.apache.coyote.http11.Http11Processor.service(Http11Processor.java:409), org.apache.coyote.AbstractProcessorLight.process(AbstractProcessorLight.java:66), org.apache.coyote.AbstractProtocol$ConnectionHandler.process(AbstractProtocol.java:754), org.apache.tomcat.util.net.NioEndpoint$SocketProcessor.doRun(NioEndpoint.java:1376), org.apache.tomcat.util.net.SocketProcessorBase.run(SocketProcessorBase.java:49), java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1142), java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617), org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61), java.lang.Thread.run(Thread.java:745)]
Redis BGSAVE 异常报错
Redis 2.6 运行一段时间之后会报错:Background saving terminated by signal 10,之后dump.rdb会被清空。此时内存和硬盘都有空间。求大神指点!
spring-data-redis 集成sentinel的时候报错
spring-data-redis 集成sentinel的时候报错:: Bean property 'sentinels' is not writable or has an invalid setter method. Does the parameter type of the setter match the return type of the getter? 很急,有没有大神解答一下!非常感谢!!!
redis配置密码,客户端报错
没有使用密码认证的情况下客户端连redis服务器都是正常的。使用密码配置会就提示错误了 在redis 服务端修改/etc/redis.conf requirepass myRedis 重启服务 sudo service redis restart 客户端是使用JedisPool ,其中参数password 就是myRedis 使用的是new JedisPool(config, host, Integer.parseInt(port), Integer.parseInt(timeout), password); 当我从池中获取一个Jedis的时候就会报错; Jedis jedis = jedisPool.getResource(); 具体报错的地方在以下。 redis.clients.jedis.Connection 类的 socket.connect(new InetSocketAddress(host, port), timeout);就会报 Could not get a resource from the pool public void connect() { if (!isConnected()) { try { socket = new Socket(); //->@wjw_add socket.setReuseAddress(true); socket.setKeepAlive(true); //Will monitor the TCP connection is valid socket.setTcpNoDelay(true); //Socket buffer Whetherclosed, to ensure timely delivery of data socket.setSoLinger(true,0); //Control calls close () method, the underlying socket is closed immediately //<-@wjw_add socket.connect(new InetSocketAddress(host, port), timeout); socket.setSoTimeout(timeout); outputStream = new RedisOutputStream(socket.getOutputStream()); inputStream = new RedisInputStream(socket.getInputStream()); } catch (IOException ex) { throw new JedisConnectionException(ex); } } } redis.clients.jedis.exceptions.JedisConnectionException: Could not get a resource from the pool at redis.clients.util.Pool.getResource(Pool.java:42) Caused by: redis.clients.jedis.exceptions.JedisConnectionException: java.net.ConnectException: Connection refused: connect at redis.clients.jedis.Connection.connect(Connection.java:137) at redis.clients.jedis.BinaryClient.connect(BinaryClient.java:65) at redis.clients.jedis.BinaryJedis.connect(BinaryJedis.java:1706) at redis.clients.jedis.JedisFactory.makeObject(JedisFactory.java:65) at org.apache.commons.pool2.impl.GenericObjectPool.create(GenericObjectPool.java:819) at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:429) at org.apache.commons.pool2.impl.GenericObjectPool.borrowObject(GenericObjectPool.java:360) at redis.clients.util.Pool.getResource(Pool.java:40) ... 2 more Caused by: java.net.ConnectException: Connection refused: connect at java.net.DualStackPlainSocketImpl.waitForConnect(Native Method) at java.net.DualStackPlainSocketImpl.socketConnect(Unknown Source) at java.net.AbstractPlainSocketImpl.doConnect(Unknown Source) at java.net.AbstractPlainSocketImpl.connectToAddress(Unknown Source) at java.net.AbstractPlainSocketImpl.connect(Unknown Source) at java.net.PlainSocketImpl.connect(Unknown Source) at java.net.SocksSocketImpl.connect(Unknown Source) at java.net.Socket.connect(Unknown Source) at redis.clients.jedis.Connection.connect(Connection.java:132) ... 9 more
php连接redis扩展,无返回
PHP版本: ![PHP版本](https://img-ask.csdn.net/upload/201811/01/1541037169_300351.png) 安装的redis扩展: ![图片说明](https://img-ask.csdn.net/upload/201811/01/1541037209_645728.png) redis打开: ![图片说明](https://img-ask.csdn.net/upload/201811/01/1541037241_322558.png) 测试代码: ![图片说明](https://img-ask.csdn.net/upload/201811/01/1541037260_286381.png) 浏览器显示: ![图片说明](https://img-ask.csdn.net/upload/201811/01/1541037276_23540.png) 根据浏览器的显示来看,实例化Redis有返回值,但是连接redis出错了,请问哪里出现了问题?
连接redis报错Can't connect to master: redis://172.17.111.181:7033 with slot ranges: [[10923-16383]]
1.环境:<br> springboot2 + redisson3.8.2 + redis4.0.2集群模式 2.redisson采用yml配置 如下: ``` clusterServersConfig: idleConnectionTimeout: 10000 pingTimeout: 1000 connectTimeout: 10000 timeout: 3000 retryAttempts: 3 retryInterval: 1500 failedSlaveReconnectionInterval: 3000 failedSlaveCheckInterval: 3000 password: null subscriptionsPerConnection: 5 clientName: null loadBalancer: !<org.redisson.connection.balancer.RoundRobinLoadBalancer> {} slaveSubscriptionConnectionMinimumIdleSize: 1 slaveSubscriptionConnectionPoolSize: 10 slaveConnectionMinimumIdleSize: 3 slaveConnectionPoolSize: 7 masterConnectionMinimumIdleSize: 3 masterConnectionPoolSize: 7 readMode: "MASTER_SLAVE" nodeAddresses: - "redis://39.106.*.*:7033" - "redis://39.106.*.*:7032" - "redis://39.106.*.*:7031" - "redis://39.106.*.*:7034" - "redis://39.106.*.*:7035" - "redis://39.106.*.*:7036" scanInterval: 1000 threads: 0 nettyThreads: 0 codec: !<org.redisson.codec.JsonJacksonCodec> {} transportMode: "NIO" ``` **3. 链接时报错信息** ``` 2019-07-30 12:26:31.142 INFO 8592 --- [isson-netty-1-5] o.r.cluster.ClusterConnectionManager : slaves: [redis://39.106.*.*:7034] added for slot ranges: [[0-5460]] 2019-07-30 12:26:31.142 INFO 8592 --- [isson-netty-1-4] o.r.cluster.ClusterConnectionManager : slaves: [redis://172.17.111.181:7035] added for slot ranges: [[5461-10922]] 2019-07-30 12:26:31.179 INFO 8592 --- [isson-netty-1-3] o.r.c.pool.MasterPubSubConnectionPool : 1 connections initialized for 39.106.*.*/39.106.*.*:7032 2019-07-30 12:26:31.179 INFO 8592 --- [isson-netty-1-1] o.r.c.pool.MasterPubSubConnectionPool : 1 connections initialized for 39.106.*.*/39.106.*.*:7031 2019-07-30 12:26:31.186 INFO 8592 --- [isson-netty-1-5] o.r.cluster.ClusterConnectionManager : master: redis://39.106.*.*:7032 added for slot ranges: [[5461-10922]] 2019-07-30 12:26:31.186 INFO 8592 --- [isson-netty-1-5] o.r.c.pool.MasterConnectionPool : 3 connections initialized for 39.106.*.*/39.106.*.*:7032 2019-07-30 12:26:31.187 INFO 8592 --- [isson-netty-1-8] o.r.cluster.ClusterConnectionManager : master: redis://39.106.*.*:7031 added for slot ranges: [[0-5460]] 2019-07-30 12:26:31.187 INFO 8592 --- [isson-netty-1-8] o.r.c.pool.MasterConnectionPool : 3 connections initialized for 39.106.*.*/39.106.*.*:7031 2019-07-30 12:26:31.208 INFO 8592 --- [isson-netty-1-2] o.r.c.pool.PubSubConnectionPool : 1 connections initialized for 39.106.*.*/39.106.*.*:7034 2019-07-30 12:26:31.209 INFO 8592 --- [isson-netty-1-3] o.r.connection.pool.SlaveConnectionPool : 3 connections initialized for 39.106.*.*/39.106.*.*:7034 2019-07-30 12:26:41.063 ERROR 8592 --- [isson-netty-1-7] o.r.cluster.ClusterConnectionManager : Can't connect to master: redis://172.17.111.181:7033 with slot ranges: [[10923-16383]] 2019-07-30 12:26:43.264 WARN 8592 --- [ main] o.s.w.c.s.GenericWebApplicationContext : Exception encountered during context initialization - cancelling refresh attempt: org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'redisClusterService': Unsatisfied dependency expressed through field 'redissonClient'; nested exception is org.springframework.beans.factory.BeanCreationException: Error creating bean with name 'redisson' defined in class path resource [com/qiriver/tools/monkey/distributed/redis/RedisConfiguration.class]: Bean instantiation via factory method failed; nested exception is org.springframework.beans.BeanInstantiationException: Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redisson' threw exception; nested exception is org.redisson.client.RedisConnectionException: Not all slots are covered! Only 10923 slots are avaliable 2019-07-30 12:26:43.264 INFO 8592 --- [ main] j.LocalContainerEntityManagerFactoryBean : Closing JPA EntityManagerFactory for persistence unit 'default' ``` **7031 7032 7033 是主节点 连接不上的节点是yml配置中第一个节点。如果将7031放在配置第一行,报错将会是连不上第一个节点** *.*是我服务器的ip 有谁遇到过这个问题吗
Spring+SpringMVC+mybatis+redis集成redis配置报错
![![图片说明](https://img-ask.csdn.net/upload/201709/04/1504534531_421110.png)图片说明](https://img-ask.csdn.net/upload/201709/04/1504534523_793419.png) ``` properties配置 #Redis config redis.host=127.0.0.1 redis.port=6379 redis.password=testRedis redis.maxIdle=100 redis.maxWait=1000 redis.testOnBorrow=true redis.timeout=100000 ``` ``` <!--xml配置文件--> <!-- jedis pool配置 --> <bean id="poolConfig" class="redis.clients.jedis.JedisPoolConfig"> <!-- 最大空闲时间 --> <property name="maxIdle" value="${redis.maxIdle}" /> <!-- 最大等待毫秒数--> <property name="maxWaitMillis" value="${redis.maxWait}" /> <!-- 连接有效性验证 --> <property name="testOnBorrow" value="${redis.testOnBorrow}" /> </bean> <!-- redis服务器中心 --> <bean id="connectionFactory" class="org.springframework.data.redis.connection.jedis.JedisConnectionFactory"> <property name="port" value="${redis.port}" /> <!-- redis端口 --> <property name="hostName" value="${redis.host}" /> <!-- redis密码 <property name="password" value="${redis.password}" /> --> <!-- 超时时间 --> <property name="timeout" value="${redis.timeout}"></property> <property name="poolConfig" ref="poolConfig" /> </bean> <!-- redis客户端模板 --> <bean id="redisTemplate" class="org.springframework.data.redis.core.RedisTemplate"> <!-- 注入连接工厂 --> <property name="connectionFactory" ref="connectionFactory" /> <!-- 配置key序列化类 --> <property name="keySerializer"> <bean class="org.springframework.data.redis.serializer.StringRedisSerializer" /> </property> <!-- 配置value序列化类 --> <property name="valueSerializer"> <bean class="org.springframework.data.redis.serializer.JdkSerializationRedisSerializer" /> </property> </bean> ```
redisTemplate调用插入到redis中sadd报错
我想在项目中加入redis,直接用jedis调用插入到redis的string,set,hmset是没有问题的,但是用spring-data-redis的redisTemplate就会出现问题,奇怪的是只能插入value是string类型的里面,而set和hmset等其他的类型就会报错,报出的错误为: java.lang.NoSuchMethodError:redis.Jedis.sadd([B[[B)Ljava/lang/Long; 在jedis jar包里明明有这个方法啊 不知道是什么原因,有碰到这个问题的吗?谢谢啦 用的版本:spring-data-redis-1.1.0.REALEASE.jar 和jedis-2.0.0.jar
130 个相见恨晚的超实用网站,一次性分享出来
相见恨晚的超实用网站 持续更新中。。。
我花了一夜用数据结构给女朋友写个H5走迷宫游戏
起因 又到深夜了,我按照以往在csdn和公众号写着数据结构!这占用了我大量的时间!我的超越妹妹严重缺乏陪伴而 怨气满满! 而女朋友时常埋怨,认为数据结构这么抽象难懂的东西没啥作用,常会问道:天天写这玩意,有啥作用。而我答道:能干事情多了,比如写个迷宫小游戏啥的! 当我码完字准备睡觉时:写不好别睡觉! 分析 如果用数据结构与算法造出东西来呢? ...
对计算机专业来说学历真的重要吗?
我本科学校是渣渣二本,研究生学校是985,现在毕业五年,校招笔试、面试,社招面试参加了两年了,就我个人的经历来说下这个问题。 这篇文章很长,但绝对是精华,相信我,读完以后,你会知道学历不好的解决方案,记得帮我点赞哦。 先说结论,无论赞不赞同,它本质就是这样:对于技术类工作而言,学历五年以内非常重要,但有办法弥补。五年以后,不重要。 目录: 张雪峰讲述的事实 我看到的事实 为什么会这样 ...
字节跳动视频编解码面经
三四月份投了字节跳动的实习(图形图像岗位),然后hr打电话过来问了一下会不会opengl,c++,shador,当时只会一点c++,其他两个都不会,也就直接被拒了。 七月初内推了字节跳动的提前批,因为内推没有具体的岗位,hr又打电话问要不要考虑一下图形图像岗,我说实习投过这个岗位不合适,不会opengl和shador,然后hr就说秋招更看重基础。我当时想着能进去就不错了,管他哪个岗呢,就同意了面试...
win10系统安装教程(U盘PE+UEFI安装)
一、准备工作 u盘,电脑一台,win10原版镜像(msdn官网) 二、下载wepe工具箱 极力推荐微pe(微pe官方下载) 下载64位的win10 pe,使用工具箱制作启动U盘打开软件, 选择安装到U盘(按照操作无需更改) 三、重启进入pe系统 1、关机后,将U盘插入电脑 2、按下电源后,按住F12进入启动项选择(技嘉主板是F12) 选择需要启...
程序员必须掌握的核心算法有哪些?
由于我之前一直强调数据结构以及算法学习的重要性,所以就有一些读者经常问我,数据结构与算法应该要学习到哪个程度呢?,说实话,这个问题我不知道要怎么回答你,主要取决于你想学习到哪些程度,不过针对这个问题,我稍微总结一下我学过的算法知识点,以及我觉得值得学习的算法。这些算法与数据结构的学习大多数是零散的,并没有一本把他们全部覆盖的书籍。下面是我觉得值得学习的一些算法以及数据结构,当然,我也会整理一些看过...
Python——画一棵漂亮的樱花树(不同种樱花+玫瑰+圣诞树喔)
最近翻到一篇知乎,上面有不少用Python(大多是turtle库)绘制的树图,感觉很漂亮,我整理了一下,挑了一些我觉得不错的代码分享给大家(这些我都测试过,确实可以生成) one 樱花树 动态生成樱花 效果图(这个是动态的): 实现代码 import turtle as T import random import time # 画樱花的躯干(60,t) def Tree(branch, ...
大学四年自学走来,这些私藏的实用工具/学习网站我贡献出来了
大学四年,看课本是不可能一直看课本的了,对于学习,特别是自学,善于搜索网上的一些资源来辅助,还是非常有必要的,下面我就把这几年私藏的各种资源,网站贡献出来给你们。主要有:电子书搜索、实用工具、在线视频学习网站、非视频学习网站、软件下载、面试/求职必备网站。 注意:文中提到的所有资源,文末我都给你整理好了,你们只管拿去,如果觉得不错,转发、分享就是最大的支持了。 一、电子书搜索 对于大部分程序员...
《奇巧淫技》系列-python!!每天早上八点自动发送天气预报邮件到QQ邮箱
将代码部署服务器,每日早上定时获取到天气数据,并发送到邮箱。 也可以说是一个小人工智障。 思路可以运用在不同地方,主要介绍的是思路。
致 Python 初学者
欢迎来到“Python进阶”专栏!来到这里的每一位同学,应该大致上学习了很多 Python 的基础知识,正在努力成长的过程中。在此期间,一定遇到了很多的困惑,对未来的学习方向感到迷茫。我非常理解你们所面临的处境。我从2007年开始接触 python 这门编程语言,从2009年开始单一使用 python 应对所有的开发工作,直至今天。回顾自己的学习过程,也曾经遇到过无数的困难,也曾经迷茫过、困惑过。开办这个专栏,正是为了帮助像我当年一样困惑的 Python 初学者走出困境、快速成长。希望我的经验能真正帮到你
Ol4网格生成以及优化
概述 先描述一下大致场景:以0.05为单元格大小生成网格,并在地图上绘制,绘制的时候需要区分海陆。本文以此需求为契机,简单描述一下该需求的实现以及如何来优化。 效果 实现 优化前 var source = new ol.source.Vector({ features: [] }); var vector = new ol.layer.Vector({ source...
11月19日科技资讯|华为明日发布鸿蒙整体战略;京东宣告全面向技术转型;Kotlin 1.3.60 发布
「极客头条」—— 技术人员的新闻圈! CSDN 的读者朋友们早上好哇,「极客头条」来啦,快来看今天都有哪些值得我们技术人关注的重要新闻吧。扫描上方二维码进入 CSDN App 可以收听御姐萌妹 Style 的人工版音频哟。 一分钟速览新闻点! 6G 专家组成员:速率是 5G 的 10 至 100 倍,预计 2030 年商用 雷军:很多人多次劝我放弃WPS,能坚持下来并不是纯粹的商业决定 ...
C语言魔塔游戏
很早就很想写这个,今天终于写完了。 游戏截图: 编译环境: VS2017 游戏需要一些图片,如果有想要的或者对游戏有什么看法的可以加我的QQ 2985486630 讨论,如果暂时没有回应,可以在博客下方留言,到时候我会看到。 下面我来介绍一下游戏的主要功能和实现方式 首先是玩家的定义,使用结构体,这个名字是可以自己改变的 struct gamerole { char n...
iOS Bug 太多,苹果终于坐不住了!
开源的 Android 和闭源的 iOS,作为用户的你,更偏向哪一个呢? 整理 | 屠敏 出品 | CSDN(ID:CSDNnews) 毋庸置疑,当前移动设备操作系统市场中,Android 和 iOS 作为两大阵营,在相互竞争的同时不断演进。不过一直以来,开源的 Android 吸引了无数的手机厂商涌入其中,为其生态带来了百花齐放的盛景,但和神秘且闭源的 iOS 系统相比,不少网友...
Python语言高频重点汇总
Python语言高频重点汇总 GitHub面试宝典仓库 回到首页 目录: Python语言高频重点汇总 目录: 1. 函数-传参 2. 元类 3. @staticmethod和@classmethod两个装饰器 4. 类属性和实例属性 5. Python的自省 6. 列表、集合、字典推导式 7. Python中单下划线和双下划线 8. 格式化字符串中的%和format 9. 迭代器和生成器 10...
究竟你适不适合买Mac?
我清晰的记得,刚买的macbook pro回到家,开机后第一件事情,就是上了淘宝网,花了500元钱,找了一个上门维修电脑的师傅,上门给我装了一个windows系统。。。。。。 表砍我。。。 当时买mac的初衷,只是想要个固态硬盘的笔记本,用来运行一些复杂的扑克软件。而看了当时所有的SSD笔记本后,最终决定,还是买个好(xiong)看(da)的。 已经有好几个朋友问我mba怎么样了,所以今天尽量客观...
Python爬虫爬取淘宝,京东商品信息
小编是一个理科生,不善长说一些废话。简单介绍下原理然后直接上代码。 使用的工具(Python+pycharm2019.3+selenium+xpath+chromedriver)其中要使用pycharm也可以私聊我selenium是一个框架可以通过pip下载 pip installselenium -ihttps://pypi.tuna.tsinghua.edu.cn/simple/ ...
程序员写了一个新手都写不出的低级bug,被骂惨了。
这种新手都不会范的错,居然被一个工作好几年的小伙子写出来,差点被当场开除了。
Java工作4年来应聘要16K最后没要,细节如下。。。
前奏: 今天2B哥和大家分享一位前几天面试的一位应聘者,工作4年26岁,统招本科。 以下就是他的简历和面试情况。 基本情况: 专业技能: 1、&nbsp;熟悉Sping了解SpringMVC、SpringBoot、Mybatis等框架、了解SpringCloud微服务 2、&nbsp;熟悉常用项目管理工具:SVN、GIT、MAVEN、Jenkins 3、&nbsp;熟悉Nginx、tomca...
2020年,冯唐49岁:我给20、30岁IT职场年轻人的建议
点击“技术领导力”关注∆每天早上8:30推送 作者|Mr.K 编辑| Emma 来源|技术领导力(ID:jishulingdaoli) 前天的推文《冯唐:职场人35岁以后,方法论比经验重要》,收到了不少读者的反馈,觉得挺受启发。其实,冯唐写了不少关于职场方面的文章,都挺不错的。可惜大家只记住了“春风十里不如你”、“如何避免成为油腻腻的中年人”等不那么正经的文章。 本文整理了冯...
程序员该看的几部电影
1、骇客帝国(1999) 概念:在线/离线,递归,循环,矩阵等 剧情简介: 不久的将来,网络黑客尼奥对这个看似正常的现实世界产生了怀疑。 他结识了黑客崔妮蒂,并见到了黑客组织的首领墨菲斯。 墨菲斯告诉他,现实世界其实是由一个名叫“母体”的计算机人工智能系统控制,人们就像他们饲养的动物,没有自由和思想,而尼奥就是能够拯救人类的救世主。 可是,救赎之路从来都不会一帆风顺,到底哪里才是真实的世界?如何...
蓝桥杯知识点汇总:基础知识和常用算法
文章目录基础语法部分:算法竞赛常用API:算法部分数据结构部分 此系列包含蓝桥杯绝大部分所考察的知识点,以及真题题解~ 基础语法部分: 备战蓝桥杯java(一):一般输入输出 和 快速输入输(BufferedReader&amp;BufferedWrite) 备战蓝桥杯java(二):java编程规范和常用数据类型 备战蓝桥杯java(三):常用功能符以及循环结构和分支结构 备战蓝桥杯java(四...
作为一个程序员,CPU的这些硬核知识你必须会!
CPU对每个程序员来说,是个既熟悉又陌生的东西? 如果你只知道CPU是中央处理器的话,那可能对你并没有什么用,那么作为程序员的我们,必须要搞懂的就是CPU这家伙是如何运行的,尤其要搞懂它里面的寄存器是怎么一回事,因为这将让你从底层明白程序的运行机制。 随我一起,来好好认识下CPU这货吧 把CPU掰开来看 对于CPU来说,我们首先就要搞明白它是怎么回事,也就是它的内部构造,当然,CPU那么牛的一个东...
@程序员,如何花式构建线程?
作者 |曾建责编 | 郭芮出品 | CSDN(ID:CSDNnews)在项目和业务的开发中,我们难免要经常使用线程来进行业务处理,使用线程可以保证我们的业务在相互处理之间可以保证原子性...
破14亿,Python分析我国存在哪些人口危机!
一、背景 二、爬取数据 三、数据分析 1、总人口 2、男女人口比例 3、人口城镇化 4、人口增长率 5、人口老化(抚养比) 6、各省人口 7、世界人口 四、遇到的问题 遇到的问题 1、数据分页,需要获取从1949-2018年数据,观察到有近20年参数:LAST20,由此推测获取近70年的参数可设置为:LAST70 2、2019年数据没有放上去,可以手动添加上去 3、将数据进行 行列转换 4、列名...
实现简单的轮播图(单张图片、多张图片)
前言 刚学js没多久,这篇博客就当做记录了,以后还会完善的,希望大佬们多多指点。ps:下面出现的都是直接闪动,没有滑动效果的轮播图。 单张图片的替换 · ...
强烈推荐10本程序员在家读的书
很遗憾,这个春节注定是刻骨铭心的,新型冠状病毒让每个人的神经都是紧绷的。那些处在武汉的白衣天使们,尤其值得我们的尊敬。而我们这些窝在家里的程序员,能不外出就不外出,就是对社会做出的最大的贡献。 有些读者私下问我,窝了几天,有点颓丧,能否推荐几本书在家里看看。我花了一天的时间,挑选了 10 本我最喜欢的书,你可以挑选感兴趣的来读一读。读书不仅可以平复恐惧的压力,还可以对未来充满希望,毕竟苦难终将会...
Linux自学篇——linux命令英文全称及解释
man: Manual 意思是手册,可以用这个命令查询其他命令的用法。 pwd:Print working directory 意思是密码。 su:Swith user 切换用户,切换到root用户 cd:Change directory 切换目录 ls:List files 列出目录下的文件 ps:Process Status 进程状态 mkdir:Make directory ...
Python实战:抓肺炎疫情实时数据,画2019-nCoV疫情地图
今天,群里白垩老师问如何用python画武汉肺炎疫情地图。白垩老师是研究海洋生态与地球生物的学者,国家重点实验室成员,于不惑之年学习python,实为我等学习楷模。先前我并没有关注武汉肺炎的具体数据,也没有画过类似的数据分布图。于是就拿了两个小时,专门研究了一下,遂成此文。
疫情数据接口api
返回json示例 { "errcode":0,//0标识接口正常 "data":{ "date":"2020-01-30 07:47:23",//实时更新时间 "diagnosed":7736,//确诊人数 "suspect":12167,//疑是病例人数 "death":170,//死亡人数 "cur...
相关热词 c#导入fbx c#中屏蔽键盘某个键 c#正态概率密度 c#和数据库登陆界面设计 c# 高斯消去法 c# codedom c#读取cad文件文本 c# 控制全局鼠标移动 c# temp 目录 bytes初始化 c#
立即提问