アリババで働くことができることは、多くの開発者の目標であり夢です。開発者が面接スキルを向上させ、第一線のインターネット企業の面接を効率的にクリアできるようにするために、面接の質問は洗練されて要約され、一度に全員に提供されます。
どれだけ正しく答えられるか見てみましょう。質問の70%に答えられる場合は、Alibabaやさまざまなインターネット企業にアクセスしてスキルを試してください。
この記事は、誰もが収集して予約することをお勧めします〜
この記事は、インタビューや質問のブラッシュアップが必要な友人と共有されています。ご希望のオファーをお届けできるよう、よろしくお願いいたします。この情報には、主にJavaの基本、データ構造、jvm、マルチスレッドなどが含まれます。スペースが限られているため、以下に示すのはごく一部です。インタビューの質問については、フルバージョンが必要な友達はリンクをクリックしてジャンプして受け取ることができます:リンク:クリックするだけです!!!パスワード:CSDN
[Ali、Tmall、Antへのインタビューの質問]
対象:オープンソース、Javaコレクション、JVM、NIO、Dubbo、スパイクシステム、高同時実行性、分散、ロック、redis、MySQL、Linux、hashMap、ミドルウェアなど。
1.自己紹介と仕事の経験。
2.テクノロジーの利点は何ですか。
3.どのミドルウェアが使用されているか。
4.ワークフローエンジンを実行していません。
5.NIOの基礎となる実装。
6. JVMの基本(必ず尋ねる)、JVM GCの原則、JVMによってメモリを再利用する方法。
7.スレッドプールの原則は何ですか?
8.ロックのメカニズムがアップグレードされます。
9.ダボの原則とシリアル化などの関連する問題。
10.1つのリンクでDubboが複数の呼び出しを同時に行うにはどうすればよいですか。
11.分散トランザクションの一貫性についてのあなたの理解について教えてください。
12.システムの観点から、分散するためにどの緯度を考慮する必要があります。
13.WeChatレッドエンベロープの実現原理。
14.大規模なデータ分析を実現する方法。
15. APIインターフェース(他の人が使用するため)とSDIインターフェースの違いは何ですか。
16. Hadoop最下層(Tmall)の実装方法
17.threadLocal、スレッドプール、hashMap / hashTable / coccurentHashMapなど(Tmall)
18.スパイクシステムの設計方法について話します。
19.仮想マシンやIOなどの関連する知識ポイント。
20.Linuxコマンド。
21.数値が与えられた整数配列は、この数値に等しい配列内の2つの数値の合計を見つけて、それを出力します。私が書いた時間の複雑さは高く、O(n)が必要です。
22.n整数、m個の連続した数の最大合計を求めます。
23.オープンソーステクノロジーについてどのくらい知っていますか。
24.1000スレッドが同時に実行されています。スタックしないようにする方法。
25.並列同時消費の問題。
26.多数の同時実行性の高い状況でホットスポットやデータなどを処理する方法
27.ローカルサーバーでポートを使用可能にする方法。
28.フロー制御に関連する問題。
29.データベースTPSとは何ですか?
30.隠されたデータベースロックの原則。
31.分散ロック、Redisキャッシュ、Spring aop、システムアーキテクチャ図、MySQL機能。
32.キャッシュの内訳に対する解決策は何ですか?
33. Javaは、コレクターの関連する原則をどのように掘り下げますか。
34. Javaコレクションとは何ですか、またそれらの特徴は何ですか。
35.高同時実行シナリオ関連トピック:同時に100,000人に支払う場合、すべてが1分以内に送信されるように同時実行計画をどのように設計しますか。たとえば、同様のシナリオが提案されます。
【アリババインタビュー質問】
対象:一貫性のあるハッシュアルゴリズム、CAP、セッション、スレッドプール、リフレクションメカニズム、httpプロトコル、Java仮想マシン、分散システム、TCP / IP、OSI、スタック、ヒープ、分散システム設計など。
1. Javaイベントメカニズムの3つの部分は何ですか?それらを別々に紹介します。
2.スレッドプールを使用する理由は?
3.スレッドプールの機能は何ですか?
4.いくつかの一般的なスレッドプールとそれぞれの使用シナリオは何ですか?
5.スレッドプールにはどのような種類のワークキューがありますか?
6.無制限キューと制限付きキューを理解するにはどうすればよいですか?
7.スレッドプール内のいくつかの重要なパラメーターとプロセスの説明。
8.反射メカニズムとは何ですか?
9.反射メカニズムの役割について話します。
10.反射メカニズムにはパフォーマンスの問題がありますか?
11. httpプロトコルをどのように理解しますか?
12.httpプロトコルのワークフローについて話します。
13. httpのリクエスト送信方法は何ですか?
14. httpの200,302,403,404,500,503はどのような状態を表していますか?
15. http getとpostの違いは何ですか?
16. Cookieとセッションをどのように理解し、違いは何ですか?
17. Webキャッシングとは何ですか?利点は何ですか?
18. httpsとは何ですか?httpsはどのように機能しますか?
19. httpプロキシサーバーとは何ですか。また、その目的は何ですか。
20.仮想ホストとその実装原則とは何ですか?
21. Java仮想マシンとは何ですか?なぜそれを使用する必要がありますか?
22.Java仮想マシンのライフサイクルとアーキテクチャについて話します。
23.Javaメモリ領域について話します。
24.分散システムとは何ですか?
25.分散システムについてどのような側面を検討しますか?
26. TCP / IPプロトコルの信頼性が低いのはなぜですか?
27. OSIにはどの7層モデルがありますか?TCP / IPはどの4層モデルですか?
28. TCPプロトコルの3ウェイハンドシェイク、4ウェイウェーブプロセス。
29. TCPが接続プロトコルを確立するための3方向ハンドシェイクであるのに、接続を閉じるための4方向ハンドシェイクであるのはなぜですか。2つのハンドシェイクで接続できないのはなぜですか?
30. TCP TIME_WAIT状態がCLOSED状態に戻る前に2MSLを待機する必要があるのはなぜですか?
31. DoS、DDoS、DRDoS攻撃とは何ですか?防御する方法は?
32.Java例外階層について説明します。
33.検査例外、実行時例外の対象ではない検査例外とは何ですか?そして、説明するために例を挙げてください。
34.finallyブロックは実行されますか?
35.通常の状況では、tryブロックまたはcatchブロックでreturnステートメントが検出された場合、finallyステートメントブロックはメソッドが戻る前または後に実行されますか?
36. try、catch、finallyステートメントブロックの実行順序。
37. Java仮想マシンでは、何種類のデータに分割できますか?
38.スタックとヒープを理解する方法は?何が山にありますか?スタックには何が格納されていますか?
39.なぜヒープとスタックを区別するのですか?スタックにデータを保存することはできませんか?
40. Javaでは、プログラムの開始点でもあるスタックの開始点は何ですか?
41.基本的なタイプを山に入れてみませんか?
42. Javaでパラメーターを渡すときに値を渡すのはどうですか?または参照で渡しますか?
43. Javaにポインタの概念はありますか?
44. Javaでは、スタックサイズを設定するためにどのパラメータが使用されますか?
45.空のオブジェクトオブジェクトはどのくらいのスペースを占めますか?
46.オブジェクト参照タイプのタイプは何ですか?
47.ガベージコレクションアルゴリズムについて話します。
48.メモリの断片化の問題を解決するにはどうすればよいですか?
49.同時に存在するオブジェクトの作成とオブジェクトのリサイクルの問題をどのように解決しますか?
50.メモリの生成とライフサイクルについて話します。
51.どのような状況でガベージコレクションがトリガーされますか?
52.適切なガベージコレクションアルゴリズムを選択するにはどうすればよいですか?
53. JVMにはどの3種類のガベージコレクターがありますか?
54. JVMの最大ヒープサイズに制限はありますか?
55. JVMを調整する方法は?方法は何ですか?
56.ヒープサイズを設定するために使用されるパラメーターは何ですか?
57.スループットにはどのガベージコレクターが適していますか?応答時間は優先事項ですか?
58.メモリリークの問題を理解するにはどうすればよいですか?メモリリークを引き起こす可能性のある状況は何ですか?の解き方?
59.分散システム展開の観点から、レイヤーは何ですか?
60.ビジネスレイヤーでのデータアクセスの問題を解決するにはどうすればよいですか?
61.データベースサーバーの負担を解決するために、データベースの配布をどのように行うのですか?
62.有名なビザンチン将軍の問題は何ですか?
63.CAPの概念について話します。
64.強い一貫性、単調な一貫性、および究極の一貫性を理解するにはどうすればよいですか?
65.分散システムを設計する際に、どのような戦略を検討しますか?
66.最も一般的なデータ配布方法は何ですか?
67.一貫性のあるハッシュアルゴリズムについて話します。
68.パクソスとは何ですか?
69.リースメカニズムとは何ですか?
70.主な選択アルゴリズムを理解するにはどうすればよいですか?
[アリババインタビューの質問と回答]
1. mysqlの3つの主要なエンジンは何ですか?
mysqlで一般的に使用されるエンジンは、InnoDB、MyISAM、Memoryであり、デフォルトはInnoDBです。
InnoDB:ディスクテーブル、トランザクションのサポート、行レベルのロックのサポート、B +ツリーインデックス
ps:利点:優れたACID特性を備えています。同時実行性が高く、更新操作が多いテーブルに適しています。トランザクションテーブルを使用する必要があります。自動災害復旧が必要なテーブル。
短所:MYISAMと比較して読み取りと書き込みの効率が比較的低くなります。占有されるディスクスペースは比較的大きいです。
mysqlの4つの主要機能+4つの分離レベル:
MyISAM:ディスクテーブル、トランザクションをサポートせず、テーブルレベルのロックをサポート、B +ツリーインデックス
ps:利点:フットプリントが小さく、処理速度が速い(InnoDBと比較して)
短所:トランザクションの整合性と同時実行性をサポートしていません
MEMORY(ヒープ):メモリテーブル、トランザクションをサポートしない、テーブルレベルのロック、ハッシュインデックス、Blobをサポートしない、テキストラージタイプ
ps:利点:高速、一時データ
短所:損失後、プロジェクト全体に悪影響がないか、ほとんどない場合。
2.使用されるredisのハッシュアルゴリズムは何ですか?
Redisは、一貫性のあるハッシュアルゴリズム(衝突率が低いという利点があるMurmurHash3アルゴリズム)を使用する必要があります。Googleの改良版のcityhashは、redisで使用されるハッシュアルゴリズムでもあります。
既存の主流のビッグデータシステムはすべて、MurmurHash自体を使用するか、改良しています。
3. nosqlがsqlよりも速いのはなぜですか?
Nosqlは非リレーショナルデータベースであり、リレーショナルデータベースデータの一貫性の複雑な特性を満たす必要がないため、高速です。
SQLは強力な機能を備えたリレーショナルデータベースですが、効率にはボトルネックがあります。
4.インデックスとは何ですか?nosqlにインデックスがないのはなぜですか?nosqlにはインデックスドロップがあります
インデックスは、クラスター化インデックスと非クラスター化インデックスに分けられます。クラスター化インデックスは、データストレージの物理的な場所に従って順序付けられますが、非クラスター化インデックスは異なります。クラスター化インデックスは、複数行の取得速度を向上させることができます。非クラスター化インデックスは、単一行の取得に対して非常に高速です。
クラスター化されたインデックス:プライマリーキーがある場合、クラスター化されたインデックスはプライマリーキーに基づいて作成されます。プライマリーキーがない場合、一意で空でないインデックス列がプライマリーキーとして使用され、このテーブルのクラスター化されたインデックスになります。上記の2つが満たされない場合、 Innodbは、それ自体で仮想クラスター化インデックスを作成します
非クラスター化インデックス:非クラスター化インデックスは、複合インデックス、プレフィックスインデックス、一意のインデックスなどの補助インデックスです。
5. B +ツリーとBツリーの違いは何ですか?
Bツリーの非リーフノードは実際のレコードのポインタを格納し、B +ツリーのリーフノードは実際のレコードのポインタを格納します
B +ツリーのリーフノードは、スキャン間隔と順次検索に適したポインターで接続されています。
【アリババインタビュー体験まとめ】
要約すると、アリババグループの子会社のインタビューの質問は主に以下に焦点を当てています。
1.仮想マシン、コンカレントスレッド、分散、NIOなどの高度なJava。
2. Redisの実現原理、クラスタリング、データストレージ、永続性などのミドルウェアに関して。
3.インデックス、sql低速クエリ、および長いトランザクションのパフォーマンス最適化の側面からの、候補者のMySQLデータベースの習得などのバックエンド部分。
4.あなたが取り組んだプロジェクトは、設計からコーディング、そしてその後の環境展開まで、インタビューの焦点です。
5.ビッグデータに関連するアルゴリズムの質問をする必要があります。
6.主に、高同時性シナリオで候補者の技術的知識ポイントの習得をテストするために、セカンドキルおよび高同時性プロジェクトも必要です。
7.面接の過程では、自信が非常に重要です。わからない質問に出くわした場合でも、率直に答えることができます。面接の最後に謙虚に面接官に質問することで、面接官に謙虚さと学びたいという印象を与えることができます。
上記は、Alibaba Advanced Java Departmentによって開発された最新の118のインタビュー質問です。インタビュー質問は、技術的基礎からプロジェクトの経験、技術的幅から技術的深さまで、候補者のスキルレベルを完全に調査するために幅広くカバーしています。どんな会社とのインタビューにも参加する前に、過去を振り返り、新しいことを学ぶためにより多くの時間を費やすことをお勧めします。そうすることで、インタビューの過程でより落ち着き、オファーを受ける可能性を高めることができます。