ホームページ >バックエンド開発 >PHPの問題 >上級 PHP プログラマーは何を学ぶべきですか?

上級 PHP プログラマーは何を学ぶべきですか?

(*-*)浩
(*-*)浩オリジナル
2019-10-16 09:45:383237ブラウズ

シニア PHP プログラマー

上級 PHP プログラマーは何を学ぶべきですか?

キー ポイント: 基本的な LNMP プログラムに加えて、特定の方向または分野にはディープラーニングがあります。 (詳細なディメンション開発) (推奨される学習: PHP ビデオ チュートリアル )

目標: 基本的な PHP ビジネス開発を完了することに加えて、最も詳細かつ詳細な問題を解決できるようになります。また、中規模および大規模なシステム設計および開発作業を独立して設計して完了することができ、特定の技術的方向性を独立して保持して深く掘り下げることができ、この分野では比較的専門的です。 (たとえば、MySQL、Nginx、PHP、Redis など、あらゆる方向の詳細な調査)

Linux:

に加えて、 Linux の第 2 段階の機能 通常の操作、パフォーマンスの監視と追跡に加えて、シェルの観点から、多くの高度で複雑なコマンド (watch/tcpdump/starce/ldd/ar など) を使用して作業を完了することもできます。スクリプトに加えて、バックアップ、自動処理、モニタリングなどを含む多くのシェル タスクの完了を支援する、より複雑なシェル スクリプト (500 行以上) をすでに作成できます。また、awk/sed/perl などのアプリケーションにもすでに習熟しています。さまざまな複雑な形式のデータを自由に操作、制御、処理、テキスト統計、分析できる;

Linux の内部機構、カーネル モジュールの読み込みの基本処理、起動時のエラー処理などをある程度理解し、また理解しているNFS、ディスク管理などのその他の関連事項;

Nginx:

Nginx は操作に非常に熟練しており、より詳細な操作を実行できます。監視、パフォーマンスの最適化、複雑な問題処理などの Nginx の保守作業、個人の興味に応じて、より多くの側面を主にソース コードを読むことから始めて、Nginx の動作原理の詳細な研究に焦点を当てることも検討できます、特定のマスター/ワーカーの動作メカニズム、Nginx の内部イベント処理、メモリ管理など;

同時に Nginx を学ぶこともできます 拡張機能の開発では、独自の機能の一部をカスタマイズできますプライベート拡張機能; 同時に、Nginx Lua をある程度理解して、より良いモデルを作成するために組み合わせて適用できるかどうかを確認できます。この段階での要件は、Nginx の原理を深く理解することです。 、そして、Nginx 開発者の方向の詳細なプロフェッショナルになることを検討できます。

MySQL/MongoDB:

第 2 段階に基づいて、MySQL アプリケーションに関しては、以前の基本的な SQL 最適化に加えて、いくつかの複雑な操作も完了できます。たとえば、大規模なデータ バッチのインポートとエクスポート、テーブル構造の変更、またはオンラインの大規模データ バッチに対するインデックス フィールドの追加や削除などの高リスク操作は、インストールと構成に加えて、さまざまな問題の追跡、マスターとスレーブの同期遅延問題の解決、コンピュータ ルーム間でのデータ同期ソリューション、MySQL の高可用性アーキテクチャなど、より複雑な MySQL の問題を処理できます。

はよく知られています。 MySQL アプリケーション レベルに精通しており、トランザクション メカニズム (分離レベル、ロックなど) などの MySQL の中核となる主要テクノロジに精通しており、トリガー、パーティション、およびその他のテクノロジについて一定の理解と応用を持っています。

MySQL パフォーマンスの場合、ディスク最適化 (SSD への SAS 移行)、サーバー最適化 (メモリ、サーバー独自の構成)、その他のコア パフォーマンス最適化オプション (innodb_log_buffer_size/back_log/table_open_cache /thread_cache_size/innodb_lock_wait_timeout など)、接続プールなどソフトウェア選択アプリケーションを使用し、show * (show status/show profile) などの操作ステートメントを深く理解し、多数の部分的なパフォーマンス問題のトレースを完了できる;

災害復旧と復元、Binlog の深い理解、ホットおよびコールド バックアップ、マルチ IDC バックアップなどの MySQL バックアップ テクノロジ;

MySQL の原則に関して、より多くの知識が必要です。 MySQL の動作メカニズムに関するソース コードをいくつか読んでください。たとえば、マスターとスレーブの同期 (レプリケーション) 技術のソース コードを学習したり、特定のストレージ エンジン (MyISAM/Innodb/TokuDB) のソース コードを学習して理解したりするなど、 if 条件が許せば、CSV エンジンを参照して独自のシンプルなストレージ エンジンを開発し、データを保存し、MySQL についての理解を深めることができます。

このプロセスで、興味があれば、開発することも検討できます。 DBAの方向へ。 MongoDB レベルでは、たとえば、書き込みを減らし読み取りを増やす場合に、オンラインで MongoDB の適用を開始したり、オンラインでデータ分析や処理操作を実行したりすることを検討できます。特定のシナリオは作業に基づいていますが、中心となるのは次のとおりです。 RMDBS をより深く理解する NoSQL とは異なるシナリオのアプリケーションについては、条件や関心が許せば、MongoDB の動作メカニズムについてさらに詳しく学び始めることができます。

以上が上級 PHP プログラマーは何を学ぶべきですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。