- Tram Ho
Author: Nghia Minh Le
When saying “PHP is bad to build big system”, I know right away there will be dozens of people jumping into the comment backwards. Each person has a point of view, but there are many arguments that you have not really thought through.
Some argue that I have not used much PHP yet, TIKI is the largest PHP system in this Vietnam land. Because there is no big business like TIKI in Vietnam but also using the system in PHP. Millions of lines of php code. Only services using php related to products, my team’s sellers also come to hundreds of thousands of lines of code, dozens of services, hundreds of background workers.
Arguments for big guys like Facebook, Youtube … blabla. So, do you ask which part it is used for, is it the main stream for all things, from the front end to the backend, from service to background worker? Most Facebook backend used C ++, Youtube could not write streamming with PHP … Alibaba, Taobao TQ backend all Java. Facebook itself uses PHP, they also rewrite the compiler HHVM. So how much does your company do C on a large scale? Or no one.
Linguistic reasoning is not bad only for bad people. This may be true in certain contexts, but when scaling to the limit and still fiddling with that language, you have problems with your qualifications and attitudes. You do not understand the limits in terms of expertise and you conservatively hesitate to change. A simple PHP does not have a connection pool, when traffic is high, the number of connections to the db is uncontrollably skyrocketed, making db overload always. What are you trying to handle, struggling tricky cache this cache cache? Or do you do enterprise software, need high stability, but the data type of scratchy PHP, much when a field changes its type to dozens of processing worker backgrounds. Each small bug increases the cost of maintaining the system. Many handle threading languages other than one note, PHP scripts then clone dozens of workers to run. Handling concurrency, context switching, everything must be hooked into a certain stateful service because of stateless php.
I have been doing .NET for nearly 8 years, then switched to PHP for 3 years, doing both Python for binlog processing of data, I feel comfortable with no problems. Then when I needed, I also switched to Java to write the entire stream of realtime stream processing data for indexing product. I do not love to hate any language, have an assessment, as needed, comfortably switch from one language to another. But what I find difficult is why people are so prejudiced. I think most are conservative, afraid to innovate and without critical thinking.
Source : Facebook