Today, we start with a joke from the software industry.
Party A wants to build an e-commerce website. Party B’s programmer asks: “What kind of website do you want to make?” Party A says: “Just like Taobao.” The programmer asks: "Then how much do you plan to pay?" Party A thought for a moment, "50,000 yuan is about right!"
This is of course a joke to ridicule customers for not understanding their needs, but have you ever thought about why? What does Party A think is an uncomplicated system, but you find it very difficult?
Because you are not thinking about the same thing at all.
From the perspective of customers, don’t I just want a website where they can buy things? As long as the product can be put online and users can see and buy it, it will be fine. 50,000 yuan is almost enough.
But what you are thinking is, "Taobao, what a technical challenge it must be. Every year when it comes to Double 11, you have to consider various concurrent rush purchases. How many programs does Taobao have?" Member, if you want to make one for 50,000 yuan, there is no way."
If it were placed in the "Communication and Feedback" module at the front, I might talk about how the two parties should coordinate and unify their ideas. But when it comes to the "automation" module, I want to discuss this issue from another angle: how the system becomes complex. [Related recommendations:Taobao Open Platform Development Documents]
Taobao’s development history
Since we are talking about Taobao, we will use some public information. Take a look at Taobao’s technological changes. In 2013, Ziliu published a book, "Ten Years of Taobao Technology", which tells how Taobao has changed step by step.
According to the book, the first Taobao was "bought" and it was a system calledPHPAuction
. Even if I chose the highest configuration, it only cost 2,000 US dollars. about. This is a system usingLAMP
architecture, which isLinux Apache MySQL PHP
, which was a typical open source architecture at the time. Speaking ofLAMP
, I would like to recommend a free video "Building a Web Server for Production Environment on Alibaba Cloud Service". This tutorial introduces the emergence and working principle of LAMP, etc. Content, interested friends can learn about it.
Later, the development of Taobao encountered a performance bottleneck problem, and they solved it through reconstruction with new languages and new tools.
Here is a little knowledge for everyone. The founder of Facebook spent two weeks using PHP to create Facebook (I have to say that the development efficiency of PHP is really high!), Later, Facebook also encountered performance problems. At this time, a Chinese engineer named Zhao Haiping personally developed HipHop to solve the performance problem, which is the prototype of the now famousphp virtual machine hhvm
(even though it is now I am not involved in the research and development of hhvm at all, but the basic code is still used by Zhao Haiping).
When many companies develop, they will encounter performance bottlenecks. At this time, they either need to reconstruct new languages and new tools to meet performance requirements, or they can re-create a virtual machine like Facebook and Ali. But rebuilding a virtual machine requires a lot of technical reserve talent. In other words, for Facebook and Alibaba, most companies do not have this level of technical reserve. Therefore, it is practical to spend money to reconstruct it. Zhao Haiping, who built the PHP virtual machine at Facebook, is now developing taobaojvm at Alibaba.
Having said that, the development path of Alibaba Taobao over the years has been constantly creating technology and constantly adding details. The successful operation of an e-commerce platform is inseparable from the technical talents who work hard behind it; those When industry leaders encounter problems, they are also trying to find solutions and keep learning, not to mention us ordinary Internet people.
As the HR of the Ali Roundtable said, "Everyone here is a toss-up person." I admit that I deserve it. My body has never been able to guarantee that I will fight without any scruples. Although I do it every day I insist on running, but I am still not good at it. If I want to become a martial arts practitioner, I need to keep walking on the longer road. I can have the willpower.
"Insist on learning, study through study, and practice learning"
I hope everyone can adhere to these three creeds.
Course recommendation: "PHP Video Tutorial"