一般に公開テンセント、Huawei社は、アリ... 7 Javaのバックエンドのインタビュー体験!

  インタビューはとてもなじみのない物事が良くちょうど書かないで、履歴書の主な焦点を依頼することですように感じます。プロジェクトとインフラが重要であり、基礎の全体的な枠組みがCYC2018 GitHubの上のブログを参照することができ、分類は非常に広いですが、自分で本を読むために綿密な研究や、デモ書き込み。最高のプロジェクトは困難を持って、私たちは自分自身の思考プロセスと問題解決を反映することができます。プラン+ LeetCode 200バーに関する安全面を証明するアルゴリズム。投票10+会社、このインタビューおそらく他のいくつかの書き込みまたは結果がブラッシングしていません。

 01 テンセント

サイド:

  1. 異常、スロー可能、例外、エラーについてのトーク

  2. try-キャッチ

  3. 手書きシングルトン - 非常に奇妙な、GG

  4. 揮発性、アクション、下、ロックプリフィックス命令、スニッフィングメカニズムマルチCPU、マルチプロセッサにおけるキャッシュ・コヒーレンシ・プロトコル

  5. 同期

  6. JVMのメモリ部門、世代ヒープメモリ

  7. Redisの、ソースコード、

  8. スプリング豆プロセスの例。 - なじみのない場所では、最大書き込みません。

  9. AOP

  10. Redisのはどのように行う、その後、個人が十分なメモリノードRedisの時間でない場合には、シングルサインオンを実現するために使用しますか?クラスタリング、Redisのクラスタ

  11. 比較部分底面

 02 華為

サイド:

  1. 自己紹介

  2. 可用性、パフォーマンス、スケーラビリティ、アップグレードを予測する方法

  3. nginxのは、リバースプロキシ、どの層プロキシの方向を達成する方法ですか?アプリケーション層

  4. nginxの構成で実現するために、HTTPプロトコルを使用してネットワークを含む、HTTPSプロトコル外のサービスを提供する方法

  5. ファクターネットワークを設計するとき、あなたが考慮する必要があります

  6. 仮想ネットワーク

 03 打ちバイト

  1. 自己紹介

  2. シングルサインオン

  3. JVMのメモリ部門、なぜべきでヒープメモリ世代リサイクル、異なるライフサイクル

  4. Redisの、マスター・スレーブ、センチネル、クラスタリング、分散ロック。

  5. オブジェクトタイプのRedisの、基礎となるデータ構造、基準Redisの設計と実装に対応する各オブジェクト・タイプ。

    1. 文字列、リスト、ハッシュ、設定、たSortedSet。

    2. 各オブジェクトデータ構造を有する少なくとも2、SDS、LinkedListは、ziplist、INTSET、ziplist、skiplist

  6. ISNは、TCPプロトコルはなぜ乱数列開始すべき - メッセージの衝突を防ぐためのセキュリティを、会話に取り残さ

 04 細切りアルゴリズム

  1. 930055300は、対応する数字に変換しました

  2. n個の所定の値の長さは、配列の0からN-1の範囲であり、その後重複要素の問題現れるがあるかどうかを決定します。

  3. leetcode 42雨水収集問題

 05 多くを戦うために

サイド:

  1. 自己紹介、Redisの、分散ロック、redlockアルゴリズム、飼育係分散ロック、分散ロックの問題

  2. ランダム選択アルゴリズムの手書きの変種

 

二つの顔:

  1. ページフォルトを説明し、仮想メモリ

  2. JVMのメモリゾーニング、世代ヒープ、なぜ世代別ガベージコレクションアルゴリズム、ガベージコレクタ

  3. Linuxプロセス、パイプ、名前付きパイプ、ソケット、共有メモリ、メッセージキューの間の通信

  4. どのように具体的なシナリオの下でのプロセス間の効率的な通信を実現し、ストレージに関連する質問をします。

  5. MySQLのインデックス型、基礎となるデータ構造

  6. リンクリストの手書き1組の挿入、削除、検索方法

 

HR:

  1. なぜ、あなたの主要な変更を

  2. 他の企業が提供していないがあり、

  3. キャリアプランニング

  4. あなた自身が、なぜ私たちはあなたを雇う必要があり、ギャップに比べて専門的な技術教育を回すために検討してください555

  5. 学ぶためにどのように学習するプロセス

 06 中国招商銀行

電話再開顔:

  1. 自己紹介

  2. トランザクションACIDの特性、データベースのデッドロックシナリオが発生します

  3. 4つの基本的な特性、非共有、保持し、待って、ノンプリエンプティブ、円形待ち​​をデッドロック

  4. デッドロックの回避デッドロックの防止

  5. スレッドの状態、新しい、準備、実行している、待って、ブロックされた、終了

  6. 異なる睡眠との間に差が開催されたように、ロックを解除します、待って、モニター

  7. JDKリエントラントロック、AQSの基礎となる、ロックを読んで、抽象キュー同期メカニズム

  8. 楽観と悲観的ロックロック、概念的には、CAS、アイドリング、ABA問題の欠点でJDKクラス。pauseコマンド、AtomicStampedReference

  9. 話サーブレット、サーブレット、INIT、サービス、破壊にweb.xmlの設定パスのマッピング

  10. Tomcatコンテナは、2つの主要なプロセス、コネクタおよびコンテキストコンテナを見てみることができます。オブジェクトリクエストとレスポンスへのソケットから完成した構成

  11. SpringMVCディスパッチャ・サーブレット要求の解析処理

  12. Redisの紹介、キャッシュなどのシステムの役割、分散サーバセッション

  13. Redisのパフォーマンス、可用性、センチネル+からマスターコピーは、ネットワーク上のキャッシュアクセスのRedis消費しました。

  14. Redisのトランザクション、分散トランザクション、2PC、テーブルやその他のローカルニュース、3PC

 07 アリババ

サイド:

  1. 自己紹介プロジェクト

  2. プロジェクトの最大の成果、例えばRedisの可用性のために、進化から、システムの可用性を向上させるために、プロジェクトの進展を強調し、

  3. 分散ロック(プロジェクト)、redlock、永続メカニズム、マスター・スレーブレプリケーション・プロセス、Redisのは、話すことを知っています

  4. 問題を解決する分散セッションRedisの、シングルサインオン、セッションの一貫性、実現する方法を説明します

  5. IOCのインスタンス化プロセス、原則、

  6. AOP、JDKプロキシ、プロキシ、InvocationHandlerです

  7. 循環リンクリストは空分析しています

  8. 中および非再帰再帰後、前、木、シーケンスをトラバース

  9. OS P / Vセマフォクラス、

  10. CAS、AQS達成

  11. Javaのを学ぶためにどのように、どの書籍、フォーラムを参照してください。

  12. パズルソフトドリンクの問題、ソーダのボトルのための2つのボトル、1元ソーダ質問のボトルは購入することができますどのように多くのボトル、(単にボトルを飲むためにボトルを借りてようやく読み、そして)

     

二つの顔:

  1. 自己紹介

  2. 学校では、(のビジネス・プロセス・アーキテクチャを記述する)のプロジェクトに関与し、学習

  3. hostsファイル

  4. 楽観的ロック、悲観的ロック、例えば、方法によって、CASは、揮発性は、同期することができ

  5. トランザクションは、分散トランザクションは、どのように分散トランザクション、2フェーズ・コミット(プロセス)を実装します

  6. JVMヒープ分割方式エリア、

  7. 実行さにSystem.gc()GC機構がトリガされ、FGC、リサイクル、そして世代リサイクルする方法

  8. カトン周期系、問題、合成GCログ、YGC、FGC、世代のサイズを調整することを検索する方法、還元時間FGC

  9. FGCの原因

 

三辺:

  1. 自己紹介、学習プロセスおよび解決するためにどのように困難なプロジェクト、

  2. システムの可用性、パフォーマンス、拡張性、柔軟性など、LVS、プロキシ、クラスタリング、非同期、キャッシュを、リバースなどを改善する方法

  3. システム設計のオープン、チケットクエリシステムは、最短時間のため、最短のオーバーヘッドは、12306に類似の列車チケットシステムを解決しました。

  4. ブックを参照することができ、ウェブサイトのトラフィックのインフラと新技術の何百万、数百、

 

4:

  1. 自己紹介

  2. 、困難をプロセスを学びます -

  3. 差の作用は、キーワードと静的メソッドと並行性制御の一般的な方法、monitorenter、モニターの異なるオブジェクトによってmonitorexitを同期

  4. サーバーのCPU使用率、それは、Javaの場合ようにスナップショット分析jstack、jmapは、jhatとスレッディング、、、トップ位置決めプロセスのトラブルシューティングを行う方法、高いです

  5. パズル

  6. 赤黒木の長所と短所

  7. ダイナミックプロキシAOP

  1. HR側:

  1. 学習プロセスに自分自身を紹介

  2. なぜあなたはプロのターンすることを選択しました

  3. プロジェクトは困難に遭遇しました、

  4. 部門の理解

  5. 個人のキャリア開発、選択した都市、キャリアの方向、他の企業のオファーはありません

 

 

ここでは、自分の小さな自己研究であるとインタビュープロセスの準備を、私はあなたが仕事を変える他の人を助けることができると思います。

 

これは大体学ぶための次の側面です。

  • コンピュータの基本:メーターネットワーク、OS、アルゴリズムとデータ構造が精通している必要があり、その組成原則、コンパイラ理論、そして、より良い見えました

  • 言語の基本:一部のJava言語機能、マルチスレッド、JVM

  • データベース:基本的な概念、SQL、データベース設計など

  • ウェブベース:サーブレット、JSP、HTTPプロトコル、クッキー、セッション、などあなたがデモを書くために、独自のサーブレットを使用することができることが理解されます

  • Webフレームワーク:SpringMVC、春、MyBatisの、練習、プロジェクト学習で、より深く、その後、最初に使用されます。SpringCloud、SpringBootなども学ぶことができます

  • ミドルウェア:Redisの、メッセージキューまたこれらを見ることができます

  • 開発ツール:Mavenの、Gitは、など

  • システム設計:可用性、拡張性、拡張性、セキュリティこれらの領域の同時確保考慮のシステムを改善する方法。

 

彼らの計画を変更する勉強基本的にしながら、自分自身がでおおよそ上記のプロセスは、非常に計画されていない、学んでいます。

 

インタビューの準備と読書:

 

インタビューはこのようバックインタビューの質問を締結したりする前に、一般的なアドバイスや通常のコーディングよりも、多くの読書、より多くの思考、より多くの概要は、解決策を知っている、なぜなら問題の本当の理解を行う必要があるため、顔に依存しませんこのプログラムは、単に答えをバックオフではありません。概要は、リークいっぱいクイズの一種として、自分自身で直面しているのではなく、試験、または平時における努力の蓄積を暗唱する必要があります。

 

少しアドバイスを読みます:

 

あなたが一度に見ていないいくつかの段階で本を読めば、その蓄積された他の領域かもしれません十分ではありません、それはでの詳細な分析に行く自分のジンXiaxinにすることができ、我々は自分自身を感じるの種類を決定する必要があります。例えば、私は彼らのほとんどは不可解理解していない、それは非常に苦痛だった、「ヘッドファーストJavaは」ただの「Javaプログラミングのアイデア」を参照して読み出し開始します。

 

しかし、その後のJavaがある程度コーディング使用した後に、Javaのマルチスレッドのいくつかを理解している後に、それは以前よりもはるかに優れているとき、「Javaプログラミングのアイデア」を読み始めました。しかし、見ての「Java並行プログラミングの芸術、」私たちは理解していない、我々は瞑想で読むタフなものを、かじるする必要があります。最も重要な感覚は、ブログ、要約、常に繰り返しを見て、読んで、実践し続けることです。 

 

 

 

 

転載します。https://mp.weixin.qq.com/s/MIgdbabIJrX64h0IWPEIHg

おすすめ

転載: www.cnblogs.com/hxun/p/11239481.html