Lucene is a tool for text analysis. It uses an analyzer to split the text into tokens and process them. An analyzer has three parts: char filters, tokenizer, and token filters. They can do different things with the text, such as remove HTML tags, find synonyms, or make ngrams.
Cache stampede is a common issue for large scale applications that use caching to improve performance. It happens when multiple requests try to regenerate the same cache item at the same time, causing a high load on the database. In this blog post, I will explain what causes cache stampede and how to prevent it using various solutions such as optimizing queries, locking, pre-populating the cache, and probabilistic early expiration. You will also learn about some real-world examples of cache stampede and how they were resolved.
DRY stands for Don’t Repeat Yourself, which basically means to avoid writing duplicate code. If you find a block of code that is repeated multiple places, consider using abstraction or moving the code to a separate method. Similarly, if you use a hard-coded value more than once, try making it a constant. This can be applied to every area of software development including database, unit tests, build systems, and documentation.
Here is my personal journey of learning React.js and Node.js as a backend developer. I have outlined in this post everything I used to master these technologies in a short time.