suchen
HeimBackend-EntwicklungPHP-Tutorial如何看待天猫彻底抛弃PHP?

据小道消息,天猫最近彻底抛弃用了多年的PHP,转投Node,出于什么考虑?

回复内容:

利益相关:天猫员工,天猫node核心开发者。


作为天猫php迁移node的主要推动者之一,我来回答一下这个问题。首先,解释一些疑问:关于使用范围,天猫之前php主要用于前端渲染这块业务,后台业务过去和现在一直都是Java为主,node替换的仅是前端渲染层;天猫在2015年之前,前端代码基本都跑在php系统上,直到2016年初,才彻底下线了所有的php业务。


各位可能要问了,为啥要换呢?php不是世界上最好的语言吗?php当然是世界上最好的语言,只是不适合天猫。这个得从当时的背景谈起。天猫的业务场景非常特别,每年的双11需要非常强的系统稳定性和非常高效率的开发效率。原先的php系统设计年代非常久远(9年多前),设计之初,没有现今双11这种压力高并发和高效率开发的压力,当时的前端开发体系也没有如今这般完善。可以说,到了2014年,前端还是使用这一套开发系统去撸业务,简直就是刀耕火种,效率上远远满足不了双11的海量需求。以2015年双11为例,总共上线了超过1000个活动页面,如果前端一个页面一个页面地去写,得耗费大量的人力,再算上需求变更带来的返工,耗费的时间又是一笔巨大的成本。更重要的,在php系统上系统做前端开发,前端开发人员需要同时掌握php,js和css,技术体系上存在隔离,大部分前端对php掌握程度不足,写出的页面性能非常糟糕,以天猫首页为例,php版本在25核的实体机上,只能跑出300QPS。在这样的历史背景下Node刚好能够比较好的解决上面的问题。其实早在2014年,天猫的首页就开始试点Node方案,并完美的度过了当年的双11,性能和稳定性完全满足业务的需要。同时目前前端的各种工程化方案大多基于Node平台。所以在这样的特定的历史条件下,天猫选择使用Node重构原有的PHP系统。


php和node没有谁好谁坏,php依旧是世界上最好的语言;天猫选择了Node来重构新的前端渲染系统只是各种因素的综合考量的结果,不能说最好,但肯定是最合适的。技术方案只有能够快速有效的解决业务问题,为公司创造价值,才能够活下去。

作为一个前阿里PHP工程师,我来回答一下。
  1. 阿里是Java的技术文化,绝大部分业务部门后台系统是Java实现的。PHP在天猫也只是做一些前端展现层的工作,俗称套页面。呵呵,毕竟这方面PHP比Java好用太多。这个团队比起Java来说规模非常小,在早期业务复杂多变的时期,这些PHP工程师们立下了汗马功劳。多少脏活累活都干了。
  2. 更准确的说PHP做的是后端中的前端,浏览器前端当然还是JavaScript的天下。本来关系紧密的工作还分成2个团队,增加了大量沟通的成本。
  3. 套页面嘛本来也不是什么有技术含量的工作,被node.js抢了去也是好事情。这样前端的团队多了一块蛋糕,浏览器前端与HTML展现层(套页面)的工作一个团队负责,少了很多沟通的成本。而退下来PHP工程师直接转去做空间更大的Java后台开发,双赢的局面。
天猫的PHP转Node的案例实际上只是在它这个场景下最有利的选型,其他公司如果不是类似的情况就别效仿了,避免带来不必要的麻烦。 普及信息: 主流一定没有node,后端都是java,前后端通过网关mtop连接,因为高并发场景java是阿里体系的不二选择

利益相关,为双十一贡献过的码农 能做出这个决定,说明他们的运维水平很高,而工程师在整个项目实施的过程影响力很强。

在次一些的公司里,通常运维一听你要用什么什么技术,两手一摊,系统不敢升到新的啊,xx组件要用旧的啊,不会写监控啊,意思就是运维只管硬件呗?nnd。 事实证明没有最好的语言,只有最适合的语言。 只是把渲染層從PHP換成Node.js,配套內部的斑馬係統,可以快速的將模塊搭建成頁面。至於負載高QPS、設備探測,則由CDN來負責。
大部分的情況下,前端渲染層面更多落在渲染輸出而不是計算,因此使用Node.js更加符合天貓的業務場景。 作为一个入行php1年的phper,发表下看法。当我看到这个消息的时候,我开始有了点担心,担心未来的就业会不会很糟糕,其实感觉今年php的就业形势不如去年,但是看了上面的评论,我还是先把php给学好,然后再学其他语言,就算php就业形势一直很好,一个打算长久干程序的码农,也不可能一辈子只搞一种语言。所以关于这个事情,我觉得没必要太在意天猫的行为,他只是做了适合他的事情而已。加油,小码农! 阿里抛弃PHP多年了好不 至于转投Node 纯属误导观众 Node只是渲染层 后台还是Java并且长期是Java统治 天猫不是JAVA为主么? 前台语言应该也应该不止PHP一种才对 哪来的小道消息... 还是那句老话,三观不同,早晚分手。
PHP是世界上最美的语言。而阿里的网站那么丑。
Stellungnahme
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Der aktuelle Status von PHP: Ein Blick auf WebentwicklungstrendsDer aktuelle Status von PHP: Ein Blick auf WebentwicklungstrendsApr 13, 2025 am 12:20 AM

PHP bleibt in der modernen Webentwicklung wichtig, insbesondere in Content-Management- und E-Commerce-Plattformen. 1) PHP hat ein reichhaltiges Ökosystem und eine starke Rahmenunterstützung wie Laravel und Symfony. 2) Die Leistungsoptimierung kann durch OPCACHE und NGINX erreicht werden. 3) Php8.0 führt den JIT -Compiler ein, um die Leistung zu verbessern. 4) Cloud-native Anwendungen werden über Docker und Kubernetes bereitgestellt, um die Flexibilität und Skalierbarkeit zu verbessern.

Php gegen andere Sprachen: Ein VergleichPhp gegen andere Sprachen: Ein VergleichApr 13, 2025 am 12:19 AM

PHP eignet sich für die Webentwicklung, insbesondere für die schnelle Entwicklung und Verarbeitung dynamischer Inhalte, ist jedoch nicht gut in Anwendungen auf Datenwissenschaft und Unternehmensebene. Im Vergleich zu Python hat PHP mehr Vorteile in der Webentwicklung, ist aber nicht so gut wie Python im Bereich der Datenwissenschaft. Im Vergleich zu Java wird PHP in Anwendungen auf Unternehmensebene schlechter, ist jedoch flexibler in der Webentwicklung. Im Vergleich zu JavaScript ist PHP in der Back-End-Entwicklung präziser, ist jedoch in der Front-End-Entwicklung nicht so gut wie JavaScript.

PHP vs. Python: Kernmerkmale und FunktionenPHP vs. Python: Kernmerkmale und FunktionenApr 13, 2025 am 12:16 AM

PHP und Python haben jeweils ihre eigenen Vorteile und eignen sich für verschiedene Szenarien. 1.PHP ist für die Webentwicklung geeignet und bietet integrierte Webserver und reichhaltige Funktionsbibliotheken. 2. Python eignet sich für Datenwissenschaft und maschinelles Lernen mit prägnanter Syntax und einer leistungsstarken Standardbibliothek. Bei der Auswahl sollte anhand der Projektanforderungen festgelegt werden.

PHP: Eine Schlüsselsprache für die WebentwicklungPHP: Eine Schlüsselsprache für die WebentwicklungApr 13, 2025 am 12:08 AM

PHP ist eine Skriptsprache, die auf der Serverseite weit verbreitet ist und insbesondere für die Webentwicklung geeignet ist. 1.PHP kann HTML einbetten, HTTP -Anforderungen und Antworten verarbeiten und eine Vielzahl von Datenbanken unterstützt. 2.PHP wird verwendet, um dynamische Webinhalte, Prozessformdaten, Zugriffsdatenbanken usw. mit starker Community -Unterstützung und Open -Source -Ressourcen zu generieren. 3. PHP ist eine interpretierte Sprache, und der Ausführungsprozess umfasst lexikalische Analyse, grammatikalische Analyse, Zusammenstellung und Ausführung. 4.PHP kann mit MySQL für erweiterte Anwendungen wie Benutzerregistrierungssysteme kombiniert werden. 5. Beim Debuggen von PHP können Sie Funktionen wie error_reporting () und var_dump () verwenden. 6. Optimieren Sie den PHP-Code, um Caching-Mechanismen zu verwenden, Datenbankabfragen zu optimieren und integrierte Funktionen zu verwenden. 7

PHP: Die Grundlage vieler WebsitesPHP: Die Grundlage vieler WebsitesApr 13, 2025 am 12:07 AM

Die Gründe, warum PHP für viele Websites der bevorzugte Technologie -Stack ist, umfassen die Benutzerfreundlichkeit, die starke Unterstützung der Community und die weit verbreitete Verwendung. 1) Einfach zu erlernen und zu bedienen, geeignet für Anfänger. 2) eine riesige Entwicklergemeinschaft und eine reichhaltige Ressourcen haben. 3) in WordPress, Drupal und anderen Plattformen häufig verwendet. 4) Integrieren Sie eng in Webserver, um die Entwicklung der Entwicklung zu vereinfachen.

Jenseits des Hype: Beurteilung der Rolle von PHP heute heuteJenseits des Hype: Beurteilung der Rolle von PHP heute heuteApr 12, 2025 am 12:17 AM

PHP bleibt ein leistungsstarkes und weit verbreitetes Tool in der modernen Programmierung, insbesondere im Bereich der Webentwicklung. 1) PHP ist einfach zu bedienen und nahtlos in Datenbanken integriert und für viele Entwickler die erste Wahl. 2) Es unterstützt die Erzeugung der dynamischen Inhalte und die objektorientierte Programmierung, die für die schnelle Erstellung und Wartung von Websites geeignet sind. 3) Die Leistung von PHP kann verbessert werden, indem Datenbankabfragen zwischengespeichert und optimiert werden, und die umfangreiche Community und sein reiches Ökosystem machen es im heutigen Technologiestack immer noch wichtig.

Was sind schwache Referenzen in PHP und wann sind sie nützlich?Was sind schwache Referenzen in PHP und wann sind sie nützlich?Apr 12, 2025 am 12:13 AM

In PHP werden schwache Referenzen in der WeaPreference -Klasse implementiert und verhindern nicht, dass der Müllsammler Objekte zurückerobern. Schwache Referenzen eignen sich für Szenarien wie Caching -Systeme und Event -Hörer. Es ist zu beachten, dass es das Überleben von Objekten nicht garantieren kann und dass die Müllsammlung möglicherweise verzögert wird.

Erklären Sie die __invoke magische Methode in PHP.Erklären Sie die __invoke magische Methode in PHP.Apr 12, 2025 am 12:07 AM

Mit der \ _ \ _ -Invoke -Methode können Objekte wie Funktionen bezeichnet werden. 1. Definieren Sie die Methode \ _ \ _, damit das Objekt aufgerufen werden kann. 2. Bei Verwendung der Syntax $ OBJ (...) wird PHP die Methode \ _ \ _ aufrufen. 3.. Geeignet für Szenarien wie Protokollierung und Taschenrechner, Verbesserung der Codeflexibilität und Lesbarkeit.

See all articles

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
3 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Wie man alles in Myrise freischaltet
4 Wochen vorBy尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows

MinGW – Minimalistisches GNU für Windows

Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

WebStorm-Mac-Version

WebStorm-Mac-Version

Nützliche JavaScript-Entwicklungstools

SecLists

SecLists

SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.

Dreamweaver Mac

Dreamweaver Mac

Visuelle Webentwicklungstools

Sicherer Prüfungsbrowser

Sicherer Prüfungsbrowser

Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.