Hi everyone I hope you are fine and learning every day. So in the previous blog, we learned about RabbitMq and learned how we can send messages from applications from one to another. If you have not read that blog till now then you can read it using this link.
Today we are going to learn about a new topic in this blog which is going to help you in storing the data in a much better and more efficient way. We are going to learn about Cache and Cache Memory and how Cache is a better way to store data. Let’s know about what it Cache Memory before going ahead.
A cache is a reserved storage location that collects temporary data to help websites, browsers, and apps load faster. Whether it’s a computer, laptop or phone, web browser, or app, you’ll find some variety of a cache.
A cache makes it easy to quickly retrieve data, which in turn helps devices run faster. It acts like a memory bank, making it easy to access data locally instead of redownloading it every time you visit a website or open an app.
What is Cache Memory?
Cache memory is a small-sized type of volatile computer memory that provides high-speed data access to a processor and stores frequently used computer programs, applications, and data.
Cache memory is a better way to store data, provides faster data storage and access by storing instances of programs and data routinely accessed by the processor. Thus, when a processor requests data that already has an instance in the cache memory, it does not need to go to the main memory or the hard disk to fetch the data.
In simple words, cache memory is a temporary memory that stores the data once, and when the user needs that data user can access that cache memory instead of getting into the main memory again and again. This helps in making the application run faster and in an efficient way.
Example of using a Cache Memory
Let’s see an example where we can make use of cache memory and make our work easier. Suppose we want to fetch data from an API and need that data to validate another API data. So in this case we will hit the third API every time we do the validation of this API. This process of hitting the third API and fetching the data, again and again, will make our application slow.
So in such case, we will use the Cache memory, here we will use the Cache method to get data from the third API once, once the cache memory gets the data, we can use the same memory data to validate the API instead of hitting the third API again. The second thing is if the user thinks the data has been changed or updated on the third API then the user can use another getOrLoad method to load the cache memory with the updated data. Now, do you think RAM and Cache memory is the same? confused?
Difference between RAM and Cache
1. Random Access Memory (RAM) :
Random Access Memory (RAM) is used to store the programs and data being used by the CPU in real time. The data on the random access memory can be read, written, and erased any number of times. It is a volatile memory. There are two types of RAM Static RAM, or (SRAM), and Dynamic RAM, or (DRAM).
2. Cache Memory :
The cache is a smaller and fast memory component in the computer which is inserted between the CPU and the main memory. To make this arrangement effective. The cache needs to be much faster than the main memory. This approach is more economical than the use of fast memory devices to implement the entire main memory.
Let’s check out some Advantages and Disadvantages of Cache Memory
The advantages of cache memory are as follows −
- It is faster than the main memory.
- It consumes less access time as compared to main memory.
- It stores the program that can be executed within a short period of time.
- The data stored here is temporary.
The disadvantages of cache memory are as follows −
- Cache memory comes with limited storage capacity.
- Cache memory is costly.
In this blog, we have gone through the basics of Cache Memory ie: What is Cache, and how Cache is a better way to store data, some examples, advantages, and disadvantages of using Cache memory. In the next coming, we will explore more and see what different methods Cache provides us to work more efficiently with our Application.
Thanks for Reading. Keep learning…