<commit_before>---
title: Caching - Serve pra que?
description: >-
  Vamos entender o que é caching e detalhes importantes pra não fazer o uso
  indevido dessa técnica no desenvolvimento de software
date: '2020-09-19 10:01:00'
image: ''
category: iniciante
background: '#B31917'
---
## O que é caching?

O cache é um componente de software/hardware que permite que uma informação que você já acessou seja recuperada de forma mais eficiente. Ele é usado em alguns casos para acelerar a velocidade que um dado é recuperado em outros para aliviar a carga sobre determinados componentes. Já vamos falar mais disso.

Vamos pensar num exemplo que não é de programação: **Supermercado**.

Você precisa fazer o almoço, não tem nada em casa, então você vai até o supermercado, compra algumas coisas pra cozinhar, volta pra casa e faz o almoço. Beleza;

Dai você precisa fazer a janta. Você vai ao supermercado de novo? Provavelmente não, porque você deve ter feito **_cache_** das compras na sua geladeira. 

Como assim? 

Quando você foi no supermercado, você guardou ingredientes na sua geladeira para **usar depois, de maneira mais rápida**.

Supondo que no almoço você tenha gastado 2h indo até o supermercado, quando você precisou fazer a janta, deve ter gastado no máximo 5min indo até a geladeira para pegar os ingredientes. Percebe como o **_cache_** permitiu que o acesso aos seus igredientes seja muito mais rápido? Imagine como seria complicado se você tivesse que ir até o supermercado toda vez que precisa-se fazer comida?

Esse mesmo conceito se aplica para quando você faz cache de páginas web (HTTP caching), cache de requisições no banco de dados(database caching), cache de memória(memory caching) e muitos outros lugares. 
<commit_msg>Update Posts “2020-09-19-caching-serve-pra-que”<commit_after>---
title: Caching - Serve pra que?
description: >-
  Vamos entender o que é caching e detalhes importantes pra não fazer o uso
  indevido dessa técnica no desenvolvimento de software
date: '2020-09-20 06:01:00'
image: ''
category: iniciante
background: '#B31917'
---
## O que é caching?

O cache é um componente de software/hardware que permite que uma informação que você já acessou seja recuperada de forma mais eficiente. Ele é usado em alguns casos para acelerar a velocidade que um dado é recuperado em outros para aliviar a carga sobre determinados componentes. Já vamos falar mais disso.

Vamos pensar num exemplo que não é de programação: **Supermercado**.

Você precisa fazer o almoço, não tem nada em casa, então você vai até o supermercado, compra algumas coisas pra cozinhar, volta pra casa e faz o almoço. Beleza;

Dai você precisa fazer a janta. Você vai ao supermercado de novo? Provavelmente não, porque você deve ter feito **_cache_** das compras na sua geladeira. 

Como assim? 

Quando você foi no supermercado, você guardou ingredientes na sua geladeira para **usar depois, de maneira mais rápida**.

Supondo que no almoço você tenha gastado 2h indo até o supermercado, quando você precisou fazer a janta, deve ter gastado no máximo 5min indo até a geladeira para pegar os ingredientes. Percebe como o **_cache_** permitiu que o acesso aos seus igredientes seja muito mais rápido? Imagine como seria complicado se você tivesse que ir até o supermercado toda vez que precisa-se fazer comida?

Esse mesmo conceito se aplica para quando você faz cache de páginas web (HTTP caching), cache de requisições no banco de dados(database caching), cache de memória(memory caching) e muitos outros lugares. 

{'fraction_non_alphanumeric': 0.049943246311010214, 'fraction_numerical': 0.014188422247446084, 'mean_word_length': 4.551181102362205, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '4216991', 'n_tokens_mistral': 1203, 'n_tokens_neox': 1101, 'n_words': 544}