2019年10月27日のヘッドライン面接の準備
履歴書
2019.06 - 現在上海Huawei社開発エンジニア
インターンシップ部門:5G開発
プロジェクト:Web開発、運用・保守開発、データ処理
2019.06これまでHuawei社のインターンシップ
のPython + Djangoの+ Javascriptを+ nginxの+のRabbitMQ + ELK
Pythonの開発サイトごとのプロセス監視システム、プロセス、プロセスを使用して、Djangoフレームワークに基づいて異常の記録異常自動回復は、電子メールアラートを送信し、Webインターフェイスを表示し、管理します。これは、部門のWeb安定ことを保証するために、独立した設計とオンラインの全体の枠組みを完了しました。
データ処理・解析、および完全なWebプレゼンスの内部でPythonのファイルを使用します。
2019.06 - 現在、サイトごとのプロセス監視システム開発エンジニア
図1に示すように、ベースのDjangoフレームワークPythonの開発サイトベースのプロセスモニタリングシステム;
2、アラームメッセージ及びSMS通知メッセージキューを送信するためのRabbitMQを使用して、サブプロセス+ SSH接続されたマシン・チェック・プロセスの状態、異常な自動回復を使用して記録された異常なプロセスを達成pymysql使用して、
3プロセスを表示し、管理するためにはJavaScript、jQueryの、echartsや他の発展途上のWebインターフェイスを使用して。4、部門のWeb安定することを保証するために、ライン上の独立した自分自身で設計され、行われ、全体のフレームワーク。2018.12から2019.03 Huawei社のクラウドフィードバックシステム開発エンジニア
1、フレームビューの春ブーツ+ MyBatisの+ Redisの+ RESTfulな技術に基づくフィードバックシステム。2、私はIDEA開発ツール、Gitの共同開発使用して、後端部の内部プロジェクトを担当してい
たログイン認証を達成するために3、リリース、削除、コメントやその他の機能を。
Linuxは、JavaScriptのページの開発に精通しているオペレーティング精通のPython、Javaのに精通し、固体の基礎となるデータ構造アルゴリズムを持っている、;:ITスキル
ジョブ関連スキル:理解のHadoop、Redisのを理解し、理解、機械学習、深い学習。
CET6:520グッド英語読解力
レディ
- Djangoフレームワークについての講演
- プロセス監視システムについての講演
実行生産サービスは維持するために、多くの重要なプロセスに依存しています。例えば、消費者、スクリプトデータの分析、サイトの応答性、データベースの健全性などをrabbit_mq。これらのプロセスは、異なるマシンでなく、膨大な数に分散されています。一緒に、これらのプロセスを監視するために、我々は簡単な監視システムを開発しました。フロントエンドインタフェースを介してサービス関連情報を設定し、すべてのプロセスのステータスは、フロントエンドを介して見ることができます。異常なパケットがメッセージに基づいて送信されますがある場合は、異常自動回復を設定した場合、それがサービスを自動的に復元します。
基本原理:SSHは、ping、接続、urlopen、rabbit_mqメッセージキュー
不十分:機能はシンプルですが、安定した動作が。これはまた、マシンの数は、監視システムは、多くの問題を管理することが可能となります場合は特に、多くの欠陥を持っています。
最適化:C / Sモード、情報を報告するためのクライアント・マシンのオープンソースのフレームワーク、サーバー集約監視を学ぶことができます。
- Pythonのファイル・データ解析
生成されたファイル、高周波統計解析機能のいくつかのいくつかのために5Gモジュール。
RabbitMQの和kafaka
nginxの
[X] nginxの負荷分散アルゴリズムに関連
[X]原則
[x]は高い同時実行でnginxの効率的な処理を行う方法は?
nginxのは、既にワーカープロセスとCPU結合、内部ワーカー・プロセスの数は糸ループを効率的に要求を処理含まれ、それは効率に寄与しないが、これは十分ではない、上記。
プロのプログラマーとして、私たちは脳開いた穴を見ることができます:BIO / NIO / AIO、非同期/同期ブロッキング/ノンブロッキング...
あなたが知っている、非常に多くの要求をジャグリング、いくつかの要求がIOを発生する必要があり、それを待っているならば、それは労働者の処理速度が遅くなります、長い時間がかかることがあります。
nginxのは、それはOKで、その後のepollキューを置く場合、プロセスが非同期である、複数のイベントが用意されている監視することができますが、Linuxのファイルディスクリプタ、イベント駆動型のメカニズムに基づいてファイルディスクリプタモデルのモデルを使用しています。からのepollキューワーカー単にループ処理
ジャワ
- []読み書きロックhttps://www.cnblogs.com/DarrenChan/p/8619476.html
- []ハッシュテーブル、ハッシュマップ、のConcurrentHashMap
- []睡眠との差を待ちます
- []インターフェイスと抽象クラス区分
- []コレクションは、LinkedListの膨張差のArrayList
- []ときSTWは、すべてのガベージコレクタはそれをSTWを持つことになります
- []文字列str =新しい文字列(「ABC」)オブジェクト・ジェネレータの動作は、いくつか有しています
- []パブリック・プライベートの区別を保護しました
- []ファイナル、最終的には違いは?最終的には、パラメータが行う方法で使用することができますか?
- []のRuntimeException以外のRuntimeException?各のいくつかの例?ファイルが読み込まれ、何も異常があるだろう時に書くとしましょうか?
- []どのように直列化を達成するには?ネイティブのJava直列化メソッド、どのような形式の配列に加えて?
[]のJava IO(シリアライズ、BIO、NIO、AIO)
春のブートベース
- 原則のどのような春、
- IOCと
- AOP、
- 総務、
- Beanの複数の関係、
- SpringMVCプロセス
繰り返します
- [X]、分散ロックの原則Redisの実装について話します
- [X] Redisのキャッシュの有効期限が切れどのくらいの時間、保存されているどのようなデータを達成するために
- [X]分散ロックに加えて、そこのRedis達成する方法:ZK
- プロジェクトで使用する方法[X]のRedis、どのような特性は、
- [x]の実現には、どのようなRedisのに加えて、ロックを分散しましたか?
- キャッシングハードドライブ、なぜキャッシュの利点と比較して、[X]欠点
- どのようなデータキャッシュ[X] Redisの店舗/どのような形式のデータを保持しています
- [X] Redisの永続
- [X] Redisのキャッシュコヒーレンシ
- Hadoopの
- []のMapReduce
- []シャッフル
- []データ・スキュー
- どのように制御し、reducetaskの[]ナンバーmaptask
- []のResourceManager、ノードマネージャ、ApplicationManagerの等MRAppMaster
- [] HDFS
- []名前ノードとデータノードどのようにデータ交換
- 特定の記憶場所に格納されている[]データノードどのデータ
- []データノードは、(バックアップ)を復元する方法を、各データノードは、複数のコピーを持って、あなたはそれを悪い変更することができます
- []
- []糸
- []どのようにHDFSデータを失うことはないことが保証されて?
- [] MR詳細なプロセス(RPCを言った、最初から、細部に注意してください)
- [] YARNのフォールトトレランス
- []のMapReduce
- 飼育係
- [] ZK?それを理解し、分散ロックの原理を実装するか分からないのですが、サービスの登録と発見を実装する方法を理解します
- []高可用性を確保する方法をZK
- []可用性ZKの原則の実現は何ですか
ストリーム処理フレームワーク
- デザインパターン
- シングルトン
- 一貫性のハッシュアルゴリズム
巣箱
- パーティションおよびサブバレル
アルゴリズム
非再帰的なバイナリツリートラバーサルシーケンス
リバースリスト(O(1))
バブルソート
最長増加部分列
最長共通部分
設計原理をログに記録するマイクロチャンネルスキャンコードhttps://www.jianshu.com/p/047acc4190cb
01バックパック
最長共通部分
バイナリシリアライズとデシリアライズ
縮小前のシーケンス先行順走査バイナリーツリー構成
LRUアルゴリズム
シングルチェーン奇数ビット増分は、さえソート降順ビット
(バイナリ検索ツリーに類似マトリクス内の数字は()があるかどうかを見つけるために二次元マトリックス、左から右へと昇順に、順に上から下へ、)マトリックスバイナリサーチ
内部配列反復要求中継区間(1,2,3,1,2,3は1,2,3を求めます)
そして、N個のビットがある場合は、バイナリツリーパス
バイナリツリーの最長パス
メモリカウンタ流量制限によって実装
有名人の問題:
链接:https://www.nowcoder.com/discuss/115824 所有人都认识TA,但是TA不认识任何其他人 a [i] [j] = 1, i 认识 j a [i] [j] = 0, i 不认识 j a [i] [i] 置空 给定n*n的二维数组,有多少个名人?具体都是谁?
リスト内のすべての重複要素を削除します。
文字のほとんどの繰り返し数の指標値を求める、文字列の文字列strを入力し
、例えば
入力:「aabcbcbc」
出力:2(b、cのすべてが3回登場しますが、B cの前で)
シーンの質問:
- 長い接続、メッセージキューの静的リソース割り当て:オンラインゲームは100カードを保証するものではありませ
- キビを購入するにはどうすればよいです
- 公平性を確保するために赤い封筒ランダムアルゴリズムをつかみます
- マイクロブロギング高並行性の応答
- 電気爬虫類の複数のデータは、保存するためにどのように、どのように同じ製品に安いのURLを検索します
- 水4リットルを注ぎ方法5リットルのドラム、3リットルのドラムには、無制限に使用することができます
- 機能的なデザインの作品は注文を配布するには?
- オーディオブックは、自動的にオーディオキャプションのシナリオベースの質問、オーディオファイルの数が多い、非人間が行うことができ、音声認識キャプションファイルのマッチングを生成するために、音声と字幕同じ時間でなければなりません字幕ファイルと一致して、どのように設計するには?
- リーグゲームH5ランキング、リアルタイムの更新、どのように?
- 杭州G20の画像プロジェクトは、杭州は、あなたがどのくらい欲しい推定窓を清掃、窓を清掃する必要がありますか?
データベース:
インデックス:
バランスのとれたツリー、BとB +ツリーのツリーhttps://www.cnblogs.com/aspwebchh/p/6652855.html
集合インデックスは(主キーはバランスのとれたツリーを生成し、次に探し)、探索の一般的なステップは、再び特定情報に従って見つかった対応するIDフィールドとIDに応じて見えることです。索引付けの目的は、マルチidフィールドに応じて省略することができる特定の情報を見つけるためにインデックスを確立する目的を発見するためのIDを促進することです。例えば:私は、これらの二つのフィールドに応じてインデックス付け、名前エイミーの得点結果を確認したい:<この方法が呼び出される被覆インデックス >
create index name_and_score on student(name, score); select score from student where name='小王';
BとB +ツリーの木の違い
データベースのトランザクション分離レベル
MySQLとのコントラストはHBase
MySQLデータベースのデフォルトのストレージエンジン、利点は何ですか
その他:
- epollを
https://www.nowcoder.com/discuss/271862?type=2
データベースインフラストラクチャ
•リレーショナルおよび非リレーショナルデータベースとの差(それぞれのメリット)
•一般的なSQL文(DDL、DML、DCL、TCL)
•データベースの種類は、区別(内部結合、外部結合、クロス結合、自然結合、自己結合)に参加するシーンに注意を払うと書かれたSQL文を適用します
•データベースインデックスのタイプ
•クラスタ化インデックスと非クラスタ化インデックスの差(コンテンツを格納するリーフノード)
•一意のインデックスおよび主キー索引を区別
•長所と短所インデックスの、インデックスを使用する際に、インデックス(フォーカス)を使用しないとき
•基本となる実装(B +木、なぜ赤黒ツリー、Bツリーを使用しない)インデックス
•BとB +ツリーの木実現
•インデックス最も左のプレフィックス問題
•MySQLの最適化(高周波、インデックスの最適化、パフォーマンスの最適化)
•データベースエンジンのレポート、機能やInnoDBのとのMyISAMの違い
•ACIDのデータベーストランザクション(4つの特性は、原子妥当性と一貫性、独立として、徹底的に説明し、理解できなければならない、貧しい人々の問題が発生する可能性があります)
•設定したデータベース分離問題(汚れは、非反復可能読み取り、失われた変更読み取り、ファントムリード)異なる表示されます
•分離レベル、MySQLとOracleデータベースの分離レベル、どのようなもの
•データベース接続プールの役割
•MySQLのテーブルスペースの仕方、自分の特性
•分散トランザクション
•データベースのパラダイム
•ロックのデータタイプ、ロック方法
•役割とビューの使用(削除する方法、など)
•サブライブラリーのサブテーブル、マスター・スレーブ複製、別の読み取りと書き込み。(私は、全体で来ていないではないでしょう)
•プロジェクトを使用する方法、データベースを使用しています
•MemcacheのとRedisのを理解します
ビッグデータと分散
•Hadoopのフレームワーク、構造および個々のコンポーネントの役割の下で
•BASE原理、CAP原理
•処理アルゴリズムの筏の一貫性
•TIDB原則
の•のHBaseストレージ原理
•HDFSの動作原理
•Hiveの理解
•スパーク理解
•馴染みのデザインパターン(シングルトン、簡単な工場、オブザーバーモードなど)を導入
•(モードと遅延モードを飢え)シングルトン、スレッドセーフなバージョンを書きます
•MVCデザインパターン