私は最初の Yaf から今日の PHP7 まで、オープンソースを 4 年か 5 年続けてきましたが、ますます多くのプロジェクトに参加し、私のコードを使用するユーザーが増えています。明日から始めます。 PHP7 のリリースは、私がオープンソースに取り組み始めて以来、間違いなく最も重要なマイルストーンです。今日は、少し感動させてください。
昨年の春節中に開始された PHP7 プロジェクトは、その時点で、PHP-5.5 に基づく Opcache JIT プロジェクトは、期待された結果が得られなかったため、基本的に棚上げされました。基礎的な部分が十分ではなく、JIT を十分にサポートできなかったため、2014 年 2 月頃に再構築プロジェクトが開始されました。当時は、再構築によって 30% 以上のパフォーマンスが向上し、企業に利益がもたらされるという期待がありました。将来的には、さらなる最適化のための基礎を提供します。
当時、私たちはプロジェクトに名前を付けていませんでした。ただ試しているだけでした。そのプロジェクトに取り組んでいたのは私たち 2 人だけで、私も忙しかったので、その数か月間が私にとって最も忙しい時期でした。私は Weibo で仕事をしていたので、基本的には夜の時間だけを過ごしていました。しかし幸いなことに、私と他の人の間には 5 時間の時差があるため、多くの作業を並行して行うことができます。
プロジェクトが進むにつれ、4月にはもう1名が加わり、想像以上にパフォーマンスが向上したことに驚き、5月にはほぼ作業が完了したので、この結果を発表しました。そしてこれを PHP NG プロジェクトと名付けました。
しかし、私が予想していなかったのは、コミュニティからの多くの抵抗に遭遇したということでした。なぜなら、私たちが密かに PHP NG を開発していたとき、コミュニティは主に Microsoft の学生によって開始された 64 ビット サポート プロジェクトにも取り組んでいたからです。 PHP NG がリリースされたとき、彼らは、このような大きなパッチを突然メンテナンスする方法や、64 ビット対応ブランチとマージする方法などを誰も理解していないことに疑問を抱き、PHP NG ブランチの採用に反対しました。そのとき、私はとてもイライラしていて、長引く口論でとても疲れました。結局、私はそれに対処できなかったので、私の下手な英語を気にすることはありませんでした。はメールグループの苦情メールに返信し、このパフォーマンス向上ブランチを大切にするよう全員に呼びかけました。
非常に興味深いエピソードもあります。PHP NG の支持者にはそのような争いについて非常に落ち込んでいる人もいます。ある日、一部の支持者が PHP 公式 Web サイト (http:// php. net/archive/2014.php#id2014-05-27-1 には次のように書かれています: 「インターネット上で子猫の写真を探していないとき、内部開発者はほぼ常に PHP を改善する方法を探しています。少数の開発者は、パフォーマンス重視」と主張しましたが、その日、反対派は「いいえ、PHP NG はまだ受け入れられていません」とこの記事の削除を求めてきました。幸いなことに、すでに記事が投稿されていたことを考慮すると、この記事は最終的にトップページから削除されました。記事の入り口はアーカイブに内容を保持するだけです。多くのメディアがこの間違いを感じています。
議論の末、私たちは PHP NG を受け入れるかどうかを決める投票を開始するしかありませんでした。幸いなことに、最終投票では、ほとんどの人が PHP NG プロジェクトを支持し、PHP NG に基づいて開発を開始することを決定しました。当時、PHP のバージョン番号は PHP6 を使用するか PHP7 を使用するか決定されていませんでした (後に投票で PHP7 が決定されました)。私はこの経験から「民主主義の痛み」を感じたとよく言います。この 2 年間で、さまざまな新機能が追加され、パフォーマンスが継続的に向上し、以前は無理だった多くの改善が PHP7 に追加され、PHP7 になりつつあります。下部の ZVAL の変更からスカラー型のヒントまで、最初の 30% のパフォーマンス向上から現在の 100% を超えるパフォーマンスの飛躍に至るまで、すべての変更は期待に値します。何度か不本意ながら遅れましたが、ついに今日、これらすべてを皆さんにお届けします。
私は、これまでにやったことのないことや挑戦的なことを常に感じることができて幸運だ、と思うことがあります。私は結果を目の当たりにし、報われました。また、私の幸運がより多くの人々にオープンソースへの参加を促すことができることを心から願っています。
今後も、より多くの PHPer が透明性の高い改善を享受できるよう、PHP のパフォーマンスと品質の向上に引き続き取り組んでまいります。最後に、これほど長い間オープンソースに取り組んできたことで、多くの成果を得ることができました。励ましと温かいお褒めの言葉をいただいた皆様に感謝します。
追記: 当初は PHP7 がリリースされるまで待つつもりでしたが、そのリリースに向けて勢いをつけることができると考えたので、正式な発表では時差を考慮して PHP7 をダウンロードできるようになりました。明後日、ぜひダウンロードしてみてください。