Heim  >  Artikel  >  Datenbank  >  Kann Redis Hotspot-Daten zwischenspeichern?

Kann Redis Hotspot-Daten zwischenspeichern?

(*-*)浩
(*-*)浩Original
2019-11-23 10:32:142839Durchsuche

Kann Redis Hotspot-Daten zwischenspeichern?

Für Hot Data (Daten, die oft abgefragt, aber nicht oft geändert oder gelöscht werden) ist die Verwendung des Redis-Cache die erste Wahl. Die Leistung von Redis ist sehr gut.

Da Redis eine In-Memory-Datenbank ist und die von ihr belegten Ressourcen sehr wertvoll sind, ist es notwendig, so wenig Redis-Daten wie möglich zu speichern. (Empfohlenes Lernen: Redis-Video-Tutorial)

Sie können den Gültigkeitszeitraum des Caches festlegen, der normalerweise einen Tag beträgt, und auf diese Weise an die tatsächliche Situation angepasst werden um den Cache zu löschen. Daten, die nicht häufig verwendet werden.

Der Code kann wie folgt eingestellt werden:

Ablauf beim Speichern von Redis-Daten festlegen und Ablauf beim Abrufen zurücksetzen.

Wenn die Daten nicht innerhalb der Ablaufzeit abgerufen und zurückgesetzt werden, werden die Redis-Daten gelöscht.

	public TbItem getTbItemByid(Long itemid) {
		
		//添加redis缓存
		Jedis jedis =  null;
		try {
			if(itemid != null){
			    jedis = jedisPool.getResource();
				String jedisRes = jedis.get(ITEM_INFO_KEY+":"+itemid+":BASE");
				if(StringUtils.isNotBlank(jedisRes)){
					
					//取redis数据的时候,重新设置expire
					jedis.expire(ITEM_INFO_KEY+":"+itemid+":BASE", ITEM_INFO_KEY_EXPIRE);
					return JsonUtils.jsonToPojo(jedisRes, TbItem.class);
					
				}
				
			}
			
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			//关闭jedis,其实是还给连接池
			jedis.close();
		}
		
		TbItem tbItem = itemMapper.selectByPrimaryKey(itemid);
		
		try {
			if(tbItem!=null){
			    jedis = jedisPool.getResource();
				jedis.set(ITEM_INFO_KEY+":"+itemid+":BASE", JsonUtils.objectToJson(tbItem));
				//存储redis数据的时候设置expire
				jedis.expire(ITEM_INFO_KEY+":"+itemid+":BASE", ITEM_INFO_KEY_EXPIRE);
			}
		} catch (Exception e) {
			e.printStackTrace();
		}finally{
			//关闭jedis,其实是还给连接池
			jedis.close();
		}
		
		return tbItem;
	}

Weitere technische Artikel zum Thema Redis finden Sie in der Spalte Einführung in das Redis-Datenbanknutzungs-Tutorial, um mehr zu erfahren!

Das obige ist der detaillierte Inhalt vonKann Redis Hotspot-Daten zwischenspeichern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn