北京のシニアPHPプログラマーのインタビューのための30の質問

ここに画像の説明を挿入

面接の質問のコレクション:

1. SESSIONはサーバーのどこに保存されますか?
2.サーバーはどのようにしてクライアントのCookieを取得しますか?
3。セッション共有を実現する方法、および共有の原則は何ですか?
4. LVSを構築するプロセスの概要と、ファイル共有の原則を教えてください。
5.データはネットワーク共有サーバーからサーバーにアップロードされていますか?複数の?同期を実現する方法は?
6。知っているデータベース設計パラダイムを教えてください。一般的に使用されるモデリングツールは何ですか?(Mysqlモデリングツール)
7。プロジェクトマネージャーの場合、プロジェクトチームの日常業務をどのように管理しますか?
8.マスタースレーブデータベースを構成するための基本的な条件は何ですか。また、構成する必要があるものは何ですか。
9.一般的に使用するコントローラーのバージョンを教えてください。SVNで構成する必要のある構成ファイル
10.プロジェクトを実行する前にLVSは何に注意する必要がありますか、またはどのような問題が発生しますか?
11.ecshopに違反するフィールド冗長性があるのはなぜですか。デザインパターン?、なぜこれをしたのか教えてください。
12.一般的なmysql最適化方法、可能な限り多くのことを言い
ますか?13。memcacheの原則は何ですか?2Mの値で保存できますか?
14。キューとは何ですか?排他ロック、Myisamデッドロックを解決する方法は?
15.mysqlの共通ストレージエンジンを教えてください。メモリストレージエンジンの特徴は?
16. 5000を超えるデータを最速で挿入するには
どうすればよいですか?17。オープンソースフレームワークをいくつ使用しましたか?
18. ecshopショッピングカート情報はどこに保存されますか?
19. PHPによって生成されるページキャッシングの原則
20.あなたが知っているキャッシングテクノロジーは何ですか、それらを別々に簡単に紹介します

1. SESSIONはサーバーのどこに保存されますか?
回答:php.iniで指定されており、指定されたディレクトリ、メモリ、またはデータベースのファイルに保存できます。

2.
サーバーはどのようにしてクライアントのCookieを取得しますか?回答:サーバーはヘッダー情報を含むCookieを取得し、要求を処理するたびに元に戻すことができます。

3.セッション共有を実現する方法と共有の原則は何ですか?
回答:マスタースレーブデータベースを構成し、マスターデータベースにSESSIONを格納します。一般的な方法は、各サーバーにMEMCAHCEをインストールし、各MEMCACHEにSESSIONを格納することです。

4. LVSを構築するプロセスの概要と、ファイル共有の原則を教えてください。
5.データはネットワーク共有サーバーからサーバーにアップロードされていますか?複数の?同期を実現する方法は?

6.あなたが知っているデータベース設計パラダイムを教えてください。一般的に使用されるモデリングツールは何ですか?
Mysqlモデリングツール)回答:1NF:すべてのレコードは原子性を満たし、分割できません。2NF:すべてのレコードは一意性を満たしている必要があります。3NF:フィールドは冗長ではありません。アンチスリーパラダイムが必要な場合もあります。一般的に使用されるモデリングツール:PhpMyAdmin、navicat mysqlの場合、DOSコマンドライン。

7.プロジェクトマネージャーの場合、プロジェクトチームの日常業務をどのように管理しますか?
回答:なし

8.マスタースレーブデータベースを構成するための基本的な条件は何ですか。また、構成する必要があるものは何ですか。
回答:基本条件:2つ以上のデータベースサーバー、
構成プロセス:1。マスターサーバーとスレーブサーバーのbin-logをそれぞれ開きます。スレーブサーバー+リレーログ
2.マスターサーバーに対応するアカウントを作成し、要件に従って承認します。
3.独自のスレーブサーバーを使用する作成したアカウントをマスターサーバーに接続して、バイナリファイルを読み取り、分析後に同期します。
構成項目:マスター:log-bin = mysql-bin; server-id = num(int); binlog- format = mixed / statement / row /
slave:log_bin = mysql-bin; server-id = num(int)// only; Relay_log = mysql-relay-bin; log_slave_updates = 1; relay_only = 1;

9.一般的に使用するバージョン管理者に
SVNで構成する必要のある構成ファイルを伝えますA:SVN、GIT、CVS;構成ファイル:mod_authz_svn.so mod_dav_svn.soサーバーモジュールに移動し、ロード、アクセス許可の構成、ユーザーの割り当て;

10.プロジェクトを実行する前にLVSが注意を払うべき重要事項、またはどのような問題が発生しますか?

11.ecshopにデザインパターンに違反するフィールド冗長性があるのはなぜですか。理由を教えてください。
回答:状況によっては、反3パラダイムによって効率が向上するので、そうしてください。

12.一般的なmysql最適化方法、可能な限り多くのことを言いますか?
回答:SQLステートメントの最適化、ストレージの最適化、データベースの構成、サーバーの構成

13. memcacheの原則は何ですか?2M値で保存できますか?
回答:C / Sモードを使用すると、合意は通常のテキストであり、データはlibeventメカニズムに基づいてメモリで処理されます。memcacheは最大1MBのデータしか保存できず、memcacheはビッグデータを保存するために生まれたわけではありませんが、値を複数の値に圧縮または分割し、保存する前にそれらを複数のキーに割り当てることを検討できます!

14.キューとは何ですか?排他ロック、Myisamデッドロックを解決する方法は?
回答:MYisamはデフォルトでテーブルレベルのロックであるため、単一のテーブルを同時に操作する複数のアクションはキュー内でのみ実行できます。
排他ロックは書き込みロックとも呼ばれ、SQL実行中に他の要求を除外するための書き込みロックです。 、実行後に自動的に解放されます。
デッドロックの解決:最初にデッドロックのスレッド番号を見つけてから、スレッドIDを強制終了します。

15.mysqlの共通ストレージエンジンを教えてください。メモリストレージエンジンの特徴は?
回答:Myisam、InnoDB、メモリ、およびメモリは、テーブルをメモリに格納することを特徴としています。これは数倍高速であり、再起動後にデータが失われます。

16. 5000を超えるデータを最速で挿入するにはどうすればよいですか?
回答:最初にデータファイルを生成し、SQLステートメントでインポートします

17.オープンソースフレームワークをいくつ使用しましたか?
回答:TP / CI / ZF / YII

18. ecshopショッピングカート情報はどこに保存されますか?
回答:order_info; order_goods; order_action;

19. PHPによって生成されるページキャッシュの原則
A:キャッシュされたコンテンツをOBキャッシュに入れ、プログラムキャッシュの最後に置き、OBキャッシュが終了するか、スクリプトが実行された後に戻ります。

20.あなたが知っているキャッシングテクノロジーは何ですか?簡単な紹介がそれぞれ与えられています
A:Obキャッシュ、テンプレートテクノロジーによる書き込みファイルタイプキャッシュ; memcache; redis; redisとmemcacheの最も重要な違いは、データがメモリ内にあるだけではないということです、だけでなく、ディスクにファイルを生成します。再起動しても、データをロードできます。

21. HTTPプロトコルの原則、全二重とは何ですか、半二重とは何ですか?
回答:HTTPプロトコルはステートレスプロトコルであり、率直に言って、要求と応答であり、全二重は要求と応答を同時に指します。半二重とは、単一の実行を指します。

22. ucenterコミュニケーションの原則は?
回答:アプリケーションがログインすると、同期ログインアプリケーションに送信されたコールバックファイルがバックグラウンドでポーリングされます。コールバックファイルがユーザーIDを受信すると、Cookieまたはセッションが生成され、ログインモードになります。

23. Memcachedの原則
回答:Memcachedは、デーモンとして1つ以上のサーバーで実行され、クライアントの接続操作の受信を待機します。クライアントは、さまざまな言語(PHPなど)で記述できます。PHPおよび他のクライアントがmemcachedサービスとの接続を確立した後、次はオブジェクトにアクセスします。アクセスされた各オブジェクトには一意の識別子キーがあり、アクセス操作はこのキーを介して実行され、memcachedに保存されます。のオブジェクトは実際にキャッシュファイルに保存されないメモリ。これが、memcachedが非常に効率的かつ高速である理由です。

24. JSフレームワークをいくつ使用しましたか?長所と短所を説明する例を挙げてください
A:jQuery、prototype、dojo、ext、YUI;
jQuery:誰もできない強力なDOMノードクエリ、アニメーション操作は便利です; DOMパッケージングは​​とても良いです!高バージョンと低バージョンの互換性は非常に優れています。
プロトタイプ:以前のjSライブラリ、プロトタイプチェーンに基づくajaxのサポートの向上、オブジェクト指向は非常に強力な
dojo:動的機能を備えたWEBページの作成が容易です
。ext:強力なUI操作リストのトップ;
YUI:強力なクラスライブラリ。多くのメソッドを提供します。

25. AJAXの使用を測定する方法(AJAXを使用する場合)
回答:AJAXは、更新テクノロジーなしと呼ばれ、一般的に使用されるシナリオ:フォームの検証、ユーザーの評価、クリック。サーバーと対話する必要がある限り使用できます。リアルタイムで;

26.プッシュテクノロジーとは何ですか?その実装原理は何ですか?
回答:プッシュテクノロジーはCOMETとも呼ばれます。これは、クライアントが要求したときにサーバーで長い接続が一時停止されることを意味します。サーバーに新しいデータがあると、そのデータが返されます。すぐにクライアントに。それは良いことです。

27.垂直検索とは何ですか?Sphinxの単語セグメンテーションの原則は何ですか?
回答:垂直検索とは、特定の範囲内で検索するコンテキストを指します。検索面はますます洗練され、ますます広範になることはありません。スフィンクスの単語セグメンテーションの原則:テキストを各ドキュメントの複数の単語に分割します。データソースオブジェクトはインデックスを作成し、インデックステーブルをメモリに保存します。

28. Sphinxでのha_sphinx.soの使用法は何ですか?
回答:sphinxストレージモジュール。

29. PHPはどのように配列をマージしますか?
回答:array_mergn; array_mergn_recursive;

30.回答:PHPはファイルをより速く読み取りますか、それともmysqlデータをより速く読み取りますか?どうして?
回答:通常の状況では、ファイルの読み取り「データベースの読み取り。さまざまな状況では、速度が逆になります。たとえば、データベース内のデータ量が非常に少なく、同じディレクトリに多数のファイルがある場合、データベースの読み取りはファイルを読み取るよりも大きい。

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/liuxingjiaoyu/article/details/112571759
おすすめ