Can Blockchain Industry Become a Paradise for Developers
1. Blockchain Industry
Considering the blockchain as a decentralized database is the most straightforward explanation. The stability of the data stored in this database is very strong, it is not easy to be tampered with, and the security is very high, because the storage is encrypted. From the storage process of the Bitcoin network, it can be seen that the security and reliability are very high. Bitcoin was born on January 3, 2009, it is about eight or nine years now. It runs very smoothly. There have been no data loss or some particularly large problems, except that there is a small impact in the middle of the hard fork, the overall operation is relatively stable.
Distributed Storage Data
The concept of distribution has not been proposed recently, and we have been using distributed for a long time. The database servers of some large websites are basically distributed deployment. The data storage used by Baidu is also distributed. The main method is one master and two backups. One is mainly used for storage, and the other two are used as backups. If there is a problem with one server, the two backups will synchronize the data of the main server, so that the data can be consistent.
Data Sharding Technology Solves TPS
This concurrency problem in centralized applications is solved by clustering.
What is a cluster? The concept of a cluster is that multiple servers form an overall network to handle concurrency. That is to say, I have multiple windows to process all user requests at the same time, so that the traffic on each network is not so much, which means the throughput is not so much, and the overall throughput can be maintained to a very high level.
Alipay is one of the most used tools for payment, and Alipay’s concurrency can be 300,000 transaction per second. As a large platform, its TPS must be hundreds of thousands of times to be able to solve daily use.
Decentralized applications have not reached such a level. Ethereum, EOS and Bitcoin, their TPS are not really high, so they have no way to solve the daily use. EOS’s current TPS is basically 4,000 times per second. It can handle about 400 million transactions one day. From the EOS network congestion incident, we can draw a conclusion that four thousand TPS is far from a normal daily use. After countless stress tests, MAI came to the conclusion that reducing nodes like EOS, or adding storage for a single block like Bitcoin, can only temporarily increase some TPS, which can not fundamentally solve the concurrency problem.
How does MAI solve this problem? We must break through this single channel processing of data. The technology used in the MAI public chain is the database sharding technology.
Using the sharding technique, the entire blockchain network can be divided into several groups. Each team manages its own internal nodes separately. Each group is called a piece. This is equivalent to having several independent blockchains running at the same time. Because these pieces can process transactions at the same time, it is equivalent to changing the original single processing mode to a separate parallel processing mode. As the number of nodes increases, more and more concurrent processes can be processed.
For example, if there is a supermarket, it has a checkout counter (like the processing way of EOS and Bitcoin), it can only receive one transaction at a time, and these transactions are processed once and for all, synchronized once and for all. After processing the one transaction, the next transaction can be synchronized. In this case, the speed of its processing will always have a bottleneck.
If we break this routine, we set up multiple checkout counters, that is, the sharding technique is equivalent to multiple checkout counters. These checkout counters work at the same time to process transactions, so the concurrency of transaction processing will increase exponentially. In the future, with the increasing number of nodes in the MAI public chain, we will have more and more fragments. Our TPS can evolve with the development of the public chain, rather than stagnation at a bottleneck. In this way, TPS will no longer be a hindrance to MAI. MAI can run more DAPPs at the same time. The MAI public chain is a project that can be fully landed.
2. Developer
For developers, they can actively participate in the development and maintenance of the public network, and also develop more DAPPs. Bitcoin was developed in the C++ language. Ethereum was developed in C++ language early, and it was replaced with the GO language later. Another project, Fabric Hyperledger, which was also developed in the GO language.
Blockchain is a programming idea that can be implemented in any programming language, such as C++, JAVA, Solididy, Python and GO language. What language should MAI choose as the main development language? After the comparative analysis of MAI, the Go language was finally used as the main development language of MAI public chain.
Why we use the GO language?
The GO language was officially named in September 2007, and its first official version was released in March 2012. The GO language was developed by Ken Thompson, the father of Unix. He has a very high status in the history of the computer industry. The GO language is a relatively new language. After six years, it has become the best programming language in 2016. It has ranked ninth in the TIOBE language rankings in May 2018.
Everyone is generally optimistic about the GO language. It has certain characteristics, mainly used to solve distributed computing, it is an emerging language in the field of cloud computing. The blockchain is a typical distributed data storage system. It is a perfect match with the GO language, which is recognized by everyone in the industry.
Among the many programming languages, the Go language is far ahead of compile and run. It provides a very rich standard library, which makes learning costs lower than Java.
From the latest recruitment statistics, the salary of technology related to decentralization development is about 30 to 40% higher than the salary of technology engaged in centralized development. This shows us that the centralized application has become saturated during the next ten years. If you participate in or engage in the development of these industries, the prospects are not very clear. For decentralized development, there are still relatively few technologies in this area. This should be a great opportunity for developers.
2018 was recognized as the first year of the public chain, and 2019 was called a first year of DAPP. In the past decade, centralized applications have always dominated the world. Will decentralized applications become the leader in the next decade? Will it lead the next decade of Internet development? let us wait and see.
MAI Telegram (English): https://t.me/MaiEN8888
MAI Telegram (Chinese): https://t.me/MAI888888
MAI Twitter: https://twitter.com/MaiPublicChain
MAI Reddit: https://new.reddit.com/user/MAI_AI
MAI FACEBOOK: https://www.facebook.com/MaiPublicChain/