噂によると、Tmall は最近、長年使用してきた PHP を完全に放棄し、Node に切り替えたとのことです。どのような点が考慮されていますか?
返信内容:
興味: Tmall 従業員、Tmall ノードのコア開発者。
Tmall PHP ノード移行の主要推進者の 1 人として、この質問に答えさせてください。まず、いくつかの質問について説明します。Tmall が登場する以前は、PHP は主にフロントエンド レンダリング ビジネスに使用され、バックエンド ビジネスは現在も主に Java であり、node はフロントエンド レンダリング レイヤーを置き換えるだけでした。 ; 2015 年以前の Tmall では、フロントエンド コードは基本的に PHP システム上で実行されていましたが、すべての PHP ビジネスが完全にオフラインになったのは 2016 年の初めになってからでした。
なぜ変更する必要があるのかと疑問に思われるかもしれません。 phpは世界で最高の言語ではないでしょうか?もちろん、php は世界で最高の言語ですが、Tmall には適していません。それは時代背景から始まらなければなりません。天猫のビジネス シナリオは非常に特殊で、毎年開催されるダブル 11 では、非常に強力なシステムの安定性と非常に高い開発効率が求められます。オリジナルの PHP システムは非常に前 (9 年以上前) に設計されました。設計の当初は、今日の Double 11 のような高い同時実行性と高効率の開発に対するプレッシャーはありませんでした。また、その当時のフロントエンド開発システムはありませんでした。時代は今日ほど完全ではありませんでした。 2014 年までに、フロントエンドは依然としてこの開発システムを使用してビジネスを行っていたと言えます。これは単なる焼畑農業であり、その効率はダブル 11 の膨大な需要を満たすにはほど遠いものでした。 2015 年のダブル 11 を例に挙げると、合計 1,000 を超えるイベント ページがオンラインで作成されると、需要の変化による手戻りも含めて多大な労力がかかります。 、費やされる時間は莫大になります。さらに重要なのは、PHP システムでフロントエンド開発を行う場合、フロントエンド開発者は PHP、JS、CSS を同時に習得する必要があるということです。ほとんどのフロントエンドは PHP についての十分な知識を持っていません。 、そしてそれらが作成するページのパフォーマンスは非常に悪いです。cat ホームページを例に挙げると、PHP バージョンは 25 コアの物理マシンで 300QPS しか実行できません。このような歴史的背景の下、Node は上記の問題をより適切に解決できます。実際、Tmall のホームページは 2014 年にノード ソリューションの試験運用を開始し、その年のパフォーマンスと安定性がビジネスのニーズを完全に満たしていました。同時に、現在のフロントエンド エンジニアリング ソリューションのほとんどは Node プラットフォームに基づいています。したがって、このような特定の歴史的条件の下で、Tmall は元の PHP システムを再構築するために Node を使用することを選択しました。
PHP と Node には優劣はありません。Tmall は、新しいフロントエンド レンダリング システムを再構築するために Node を選択しました。さまざまな要素を考慮すると、それが最適とは言えませんが、間違いなく最適です。ビジネス上の問題を迅速かつ効果的に解決し、企業に価値を生み出すことができる技術的ソリューションのみが生き残ることができます。
元アリババ PHP エンジニアとしてお答えします。- Alibaba は Java テクノロジー文化であり、ビジネス部門のバックエンド システムのほとんどは Java で実装されています。 PHP は、Tmall で一部のフロントエンド プレゼンテーション層の作業 (一般にネストされたページとして知られる) のみを実行します。はは、結局のところ、この点では Java よりも PHP の方がはるかに使いやすいです。このチームは Java に比べて非常に小規模でしたが、ビジネスが複雑で変化しやすかった初期の頃、これらの PHP エンジニアは多大な貢献をしてくれました。非常に多くの汚い仕事が行われてきました。
- より正確に言うと、PHP はバックエンドのフロントエンドです。もちろん、ブラウザーのフロントエンドは依然として JavaScript によって支配されています。もともと密接に関連していた作業が 2 つのチームに分かれたため、コミュニケーションコストが大幅に増加しました。
- そもそもページの作成は技術的な仕事ではないので、node.js がそれを奪ったのは良いことです。このように、フロントエンド チームは、ブラウザのフロントエンドと HTML プレゼンテーション層 (ページのセット) の作業を担当するため、通信コストが大幅に削減されます。 PHP エンジニアは退職後、より多くのスペースを確保できる Java バックグラウンド開発に直接切り替えることになり、双方にとって有利な状況になります。
利息関連、ダブル イレブン ファーマーに提供されたコード この判断ができるということは、エンジニアの運用保守レベルが非常に高く、プロジェクトの実施プロセス全体に強い影響力を持っていることを示しています。
企業によっては、運用保守担当者がどのようなテクノロジーを使用したいかを聞いて、システムを新しいものにアップグレードすることを敢えて行わず、xx 個のコンポーネントを使用する必要がある場合があります。古いものだと監視が書けない ああ、運用保守というのはハードウェアだけのことですか?ん。 最適な言語というものはなく、最適な言語があるだけであることがわかりました。 レンダリング レイヤーを PHP から Node.js に変更し、内部 Zebra システムを使用してモジュールをページにすばやく構築するだけです。高負荷 QPS とデバイス検出については、CDN が担当します。
ほとんどの場合、フロントエンドのレンダリング レベルは計算よりもレンダリング出力に重点が置かれるため、Node.js を使用する方が Tmall のビジネス シナリオに沿ったものになります。 php業界に1年いるphperとして意見を述べさせていただきます。このニュースを見たとき、私は将来の雇用状況が悪いのではないかと少し心配になりました。実際、今年のPHPの雇用状況は昨年ほど良くないように感じますが、上記のコメントを読んだ後です。 , 私はまだ、最初に PHP をしっかり学び、その後、他の言語を学びたいと思っています。たとえ PHP の雇用状況が非常に良かったとしても、プログラミングで長く働くつもりのプログラマーは、1 つの言語だけで仕事をすることはできません。人生。したがって、この件に関しては、天猫の行動にあまり注意を払う必要はないと思います。さあ、小さなコーダー! Alibaba は何年も前から PHP を放棄しており、Node への切り替えは純粋に視聴者を誤解させるものであり、バックエンドは依然として Java であり、長い間 Java によって支配されてきました。 Tmall は JAVA ベースではないでしょうか? フロントエンド言語は PHP だけではないはずです。この噂はどこから来たのでしょうか... 古いことわざにあるように、意見が異なると、遅かれ早かれ別れることになります。
PHP は世界で最も美しい言語です。そしてアリババのウェブサイトはとても醜い。

node、nvm与npm的区别:1、nodejs是项目开发时所需要的代码库,nvm是nodejs版本管理工具,npm是nodejs包管理工具;2、nodejs能够使得javascript能够脱离浏览器运行,nvm能够管理nodejs和npm的版本,npm能够管理nodejs的第三方插件。

Vercel是什么?本篇文章带大家了解一下Vercel,并介绍一下在Vercel中部署 Node 服务的方法,希望对大家有所帮助!

node怎么爬取数据?下面本篇文章给大家分享一个node爬虫实例,聊聊利用node抓取小说章节的方法,希望对大家有所帮助!

node导出模块的两种方式:1、利用exports,该方法可以通过添加属性的方式导出,并且可以导出多个成员;2、利用“module.exports”,该方法可以直接通过为“module.exports”赋值的方式导出模块,只能导出单个成员。

安装node时会自动安装npm;npm是nodejs平台默认的包管理工具,新版本的nodejs已经集成了npm,所以npm会随同nodejs一起安装,安装完成后可以利用“npm -v”命令查看是否安装成功。

node中没有包含dom和bom;bom是指浏览器对象模型,bom是指文档对象模型,而node中采用ecmascript进行编码,并且没有浏览器也没有文档,是JavaScript运行在后端的环境平台,因此node中没有包含dom和bom。

本篇文章带大家聊聊Node.js中的path模块,介绍一下path的常见使用场景、执行机制,以及常用工具函数,希望对大家有所帮助!


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

VSCode Windows 64 ビットのダウンロード
Microsoft によって発売された無料で強力な IDE エディター

MantisBT
Mantis は、製品の欠陥追跡を支援するために設計された、導入が簡単な Web ベースの欠陥追跡ツールです。 PHP、MySQL、Web サーバーが必要です。デモおよびホスティング サービスをチェックしてください。

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック



