Hello everyone, I am Glacier ~~
Recently, a lot of friends asked me to update some Zookeeper articles. Recently, I sorted out the Zookeeper knowledge points summarized in my previous work process, and planned to write a “Master Zookeeper series”, hoping to help friends better understand and master Zookeeper.
Today is the beginning of the Mastering Zookeeper series. Let’s start with a brief introduction.
Why Learn Zookeeper?
So, let’s get right to the point. Many of you are probably asking the question: Why study Zookeeper?
Zookeeper is an open source distributed collaborative service system, widely used in the industry, although in recent years there are Consul, ETCD, Nacos and other distributed collaborative systems, but Zookeeper is still the most mainstream distributed collaborative service system. Zookeeper is also a very successful software system. From the initial design and implementation of Zookeeper in accordance with the expected requirements to the present, the external API of Zookeeper has been applied in a wider range of fields under the premise of basically unchanged. By learning Zookeeper, Friends can be familiar with the successful design and research and development ideas in Zookeeper, and improve their own system design level. In addition, Zookeeper is developed in Java language. By learning Zookeeper, students can also accumulate practical experience in developing system level software using Java.
In addition, Zookeeper can be used in a wide range of scenarios, such as: In the field of big data, mainstream big data analysis platforms such as Hadoop cluster, Storm cluster, Kafka cluster, Spark cluster, Flink cluster, and Flume cluster are recommended to use Zookeeper as a distributed collaborative service in the cluster environment. In the field of distributed and microservices, frameworks and technologies such as Dubbo, SpringCloud, distributed locking, distributed serial number service and RPC service can also be implemented through Zookeeper.
Many large factories in the interview process, also require in-depth mastery of Zookeeper technology, so it is necessary to learn Zookeeper well.
Is Zookeeper difficult?
To be honest, most technical people can pick up Zookeeper quickly, but most are limited to making simple modifications and customizations based on existing Examples of Zookeeper collaboration services. If you want to have the ability to design Zookeeper collaborative services for your own business scenarios, you need to have a deep understanding of the internal working principles of Zookeeper and do a lot of accumulation and summary of collaborative service design. Understanding the inner workings of Zookeeper requires learning a great deal about computer theory, including distributed systems, database systems, and operating systems. It takes a lot of time to find and learn these things.
In the upcoming “Mastering Zookeeper” series, we will introduce the theoretical computer knowledge needed to learn Zookeeper, and help students quickly establish an understanding of the internal principles and mechanisms of Zookeeper.
Zookeeper: What are the benefits?
In the Master Zookeeper series, we first introduce the basics of Zookeeper, then the advanced principles and source code analysis. When introducing the basics, I will introduce some practical examples in combination with code, and I will also introduce some basic concepts of distributed systems. The high-level content mainly introduces the internal principles of Zookeeper and related source code implementation. There will also be a simple comparison between Zookeeper and ETCD to help you better understand and master Zookeeper.
In addition to mastering the skills of Zookeeper itself, Glacier will also teach you the following:
- How do I design a local data node
- How do nodes communicate in a distributed environment
- How do I design an RPC subsystem from 0 to 1
- How do I use the data consistency protocol to ensure high data availability
- How to choose between data consistency and system performance
These design concepts are involved in almost every distributed system. Mastering these distributed systems can help you better understand the architecture design of distributed systems, and you can also apply these design concepts to the system you design and develop.
How much do I need to learn from Zookeeper?
How much do I need to learn about Zookeeper? This problem friends should still be more concerned about, to put it simply, in the big factory, you will simply use Zookeeper is not good, you have to understand the working principle of Zookeeper and the underlying source mechanism. In a previous post, I said that big factories are demanding technology, and they are not being difficult. But big factory user magnitude is very large, business volume is very high, if you do not have a deep understanding of the principle and source code mechanism, once the online production environment due to high concurrency, large traffic and other scenarios some occasional system problems, you may be half a day to locate the problem, or even a face muddlehead looked at the problem repeatedly. Therefore, in order to enter the big factory, it is necessary to have a deep understanding of the principles and source mechanism of Zookeeper.
What are the Zookeeper series updates?
With all that said, what’s the latest in the Zookeeper series?
In general, the topic will be updated in six sections, as shown below.
In the following, I will mainly introduce the categories according to the diagram, of course, each part may be written one or more articles.
Well, that’s all for today, I’m Glacier, and I’ll see you next time