プログラマーに関しては、自分のスキルを向上させるためのプロジェクトを行うことに加えて、彼らの専門的なスキルを向上させる方法もあります。見て!本!
- 編集者は、Java Advanced Architect’s Roadのコア知識をまとめました。これは、インタビュアーがインタビュー中に尋ねなければならない知識ポイントでもあります。この章には、基本的な知識、Javaコレクション、JVMなどの多くの知識ポイントも含まれています。スレッドの同時実行性、春の原則、マイクロサービス、NettyおよびRPC、日記、設計パターン、データベース、分散キャッシュ、データ構造など。
詳細が多すぎるため、編集されているのはナレッジポイントの一部の章のみです。大まかな紹介では、各章の内容がより詳細になっています。以下はチャプターリストです。見出しが長いため、カタログの詳細な説明を1つずつ記載することはできません。記事の最後に、以下のすべてのチャプターの詳細な説明があります。
JAVAの基本
- JAVAの異常な分類と治療
- 異常分類
- 例外処理
- スローとスローの違い
- JAVAリフレクション
- 動的言語
- リフレクションメカニズムの概念(クラスのすべての属性とメソッドは実行状態で認識されています)
- JavaリフレクションAPI
- リフレクションを使用する手順(クラスオブジェクトを取得し、オブジェクトメソッドを呼び出す)
- Classオブジェクトを取得する3つの方法
- オブジェクトを作成する2つの方法
- JAVA注釈
- JAVAインナークラス
- JAVAジェネリック
- JAVAシリアル化(再利用可能なJavaオブジェクトの作成)
- JAVAコピー
JAVAコレクション
- インターフェイスの継承と実装
- リスト
- ArrayList(配列)
- ベクトル(配列の実装、スレッドの同期)
- LinkList(リンクリスト)
- セットする
- HashSet(ハッシュテーブル)
- TreeSet(バイナリツリー)
- LinkHashSet(HashSet + LinkedHashMap)
- 地図
- HashMap(配列+リンクリスト+赤黒ツリー)
- JAVA7の実装
- JAVA8の実装
- ConcurrentHashMap
- セグメント
- スレッドの安全性(セグメントはReentrantLockを継承してロックします)
- 並列処理(デフォルトは16)
- HashTable(スレッドの安全性)
- TreeMap(ソート可能)
- LinkHashMap(レコードの挿入順序)
JAVAマルチスレッド同時実行
- JAVAコンカレントナレッジベース
- JAVAスレッドの実装/作成方法
- 4種類のスレッドプール
- スレッドのライフサイクル(状態)
- スレッドを終了する4つの方法
- 睡眠と待機の違い
- 開始と実行の違い
- JAVA背景スレッド
- JAVAロック
- 基本的なスレッド方式
- スレッドコンテキストスイッチ
- 同期とデッドロック
- スレッドプールの原理
- JAVAブロッキングキューの原則
- CyclicBarrier、CountDownLatch、Semaphoreの使用法
- volatileキーワードの役割(可変の可視性、並べ替えの禁止)
- 2つのスレッド間でデータを共有する方法
- ThreadLocalロール(スレッドローカルストレージ)
- 同期とReentrantLockの違い
- ConcurrentHashMap
- Javaで使用されるスレッドスケジューリング
- プロセススケジューリングアルゴリズム
- CASとは(比較および交換-楽観的なロックメカニズム-ロックスピン)
- AQS(Abstract Queue Synchronizer)とは
JVM
- 糸
- JVMメモリ領域
- JVMランタイムメモリ
- ガベージコレクションとアルゴリズム
- JAVAの4つの参照タイプ
- GC世代別収集アルゴリズムVSパーティション収集アルゴリズム
- GCガベージコレクター
- JAVA IO / NIO
- JVMクラスのロードメカニズム
春の原則
- 春の特徴
- 軽量
- 制御の反転
- 面と向かって
- 容器
- フレームコレクション
- スプリングコアコンポーネント
- 春の共通モジュール
- 春のメインパッケージ
- 春の一般的な注釈
- 春のIOCの原則
- 春のAPO原則
- 春のMVCの原則
- スプリングブーツの原理
- JPAの原則
- Mybatisキャッシュ
- Tomcatアーキテクチャ
マイクロサービス
- サービス登録の発見
- クライアント登録(動物園管理人)
- サードパーティの登録(独立したサービスレジストラ)
- クライアントの発見
- サーバーの検出
- 領事
- ユーレカ
- SmartStack
- その他
- APIゲートウェイ
- 転送をリクエストする
- 応答のマージ
- プロトコル変換
- データ変換
- 安全証明書
- 構成センター
- 動物園管理人構成センター
- 構成センターのデータ分類
- イベントスケジューリング(kafka)
- サービス追跡(スタータースルース)
- サービスヒューズ(Hystrix)
- Hystrixサーキットブレーカーメカニズム
- API管理
Netty与RPC
- ネティの原理
- ネットの高性能
- 多重通信
- 非同期通信NIO
- ゼロコピー(DIRECT BUFFERSはオフヒープダイレクトメモリを使用します)
- メモリプール(メモリプールに基づくバッファ再利用メカニズム)
- 効率的なリアクタースレッディングモデル
- ロックフリー設計、スレッドバインディング
- 高性能シリアル化フレームワーク
- NettyRPCの実装
- キーテクノロジー
- コアプロセス
- メッセージコーデック
- コミュニケーションプロセス
- RMIの実装
- 実装手順
- プロトクロルバッファー
- リサイクル
分散キャッシュ
- 雪崩をキャッシュする
- キャッシュの浸透
- キャッシュのウォームアップ
- キャッシュの更新
- キャッシュの劣化
インターネット
- 7層ネットワークアーキテクチャ
- TCP / IPの原則
- ネットワークアクセスレイヤー
- インターネットレイヤー
- トランスポートレイヤー(Tramsportレイヤー-TCP / UDP)
- アプリケーションレイヤー
- TCPスリーウェイハンドシェイク/ 4ウェーブハンド
- HTTPの原則
- 送信プロセス
- HTTPステータス
- HTTPS
- CDNの原則
- 流通サービスシステム
- 負荷分散システム
- マネジメントシステム
ログ
- Slf4j
- Log4j
- LogBack
- ログバックの利点
- ELK
動物園の飼育係
- 動物園の飼育係の概念
- 動物園の飼育係の役割
- 盟主
- フォロワー
- 観察者
- ZAB契約
- トランザクション番号Zxid(トランザクション要求カウンター+エポック)
- 時代
- Zabプロトコルには、リカバリモード(一次選択)とブロードキャストモード(同期)の2つのモードがあります。
- ZAB合意4段階
- リーダー選挙(選挙段階-準リーダーを選出)
- ZABプロトコルのJAVA実装(FLE-検出フェーズと同期は回復フェーズ(回復フェーズ)にマージされます)
- 投票メカニズム
- Zookeeperの動作原理(アトミックブロードキャスト)
- Znodeには4種類のディレクトリノードがあります
カフカ
- カフカのコンセプト
- Kafkaデータストレージの設計
- パーティションのデータファイル(オフセット、メッセージサイズ、データ)
- データファイルのセグメンテーション(シーケンシャル読み取りおよび書き込み、セグメントコマンド、バイナリ検索)
- データファイルインデックス(セグメントインデックス、スパースストレージ)
- プロデューサーデザイン
- 負荷分散(パーティションは異なるブローカーに均等に分散されます)
- バッチ送信
- 圧縮(GZIPまたはSnappy)
- 消費者デザイン
- 消費者グループ
RabbitMQ
- RabbitMQの概念
- RabbitMQアーキテクチャ
- 交換タイプ
Hbase
- Hbaseのコンセプト
- 柱状ストレージ
- Hbaseコアコンセプト
- Hbaseコアアーキテクチャ
- Hbase書き込みロジック
- HBaseとCassandra
- MongoDB
- MongoDBのコンセプト
- MongoDBの機能
カサンドラ
- カサンドラのコンセプト
- データ・モデル
- Cassandraの一貫したハッシュと仮想ノード
- ゴシッププロトコル
- データの複製
- データ書き込みリクエストおよびコーディネーター
- データ読み取り要求とバックグラウンド修復
- データストレージ(CommitLog、MemTable、SSTable)
- セカンダリインデックス(インデックスを作成する値の概要に対してRowKeyが生成されます)
- データの読み取りと書き込み
デザインパターン
- 設計原則
- ファクトリーメソッドパターン
- 抽象的な工場パターン
- シングルトンモード
- ビルダーモード
- プロトタイプモード
- アダプターモード
- デコレータモード
- エージェンシーモデル
- 外観モード
- ブリッジモード
- コンビネーションモード
- フライウェイトモデル
- 戦略モード
- テンプレートメソッドパターン
- オブザーバーモード
- 反復サブパターン
- 責任連鎖モデル
- コマンドモード
- メモモード
負荷分散
- レイヤー4の負荷分散とレイヤー7の負荷分散
- 負荷分散アルゴリズム/戦略
- LVS
- 生き続ける
- Nginxリバースプロキシロードバランシング
- HAProxy
データベース
- ストレージエンジン
- インデックス
- データベースの3つのパラダイム
- データベースはトランザクションです
- 保存されたプロシージャ(特定の関数のSQLステートメントのセット)
- トリガー(自動的に実行できるプログラム)
- データベース同時実行戦略
- データベースロック
- Redisに基づく分散ロック
- 分類表
- 二段階コミット契約
- 3段階のコミット契約
- 柔軟な取引
- キャップ
コンセンサスアルゴリズム
- パクソス
- オーツ麦
- ラフト
- NWR
- ゴシップ
- 一貫性ハッシュ
- 一貫性のあるハッシュ機能
- 一貫性ハッシュの原則
JAVAアルゴリズム
- バイナリ検索
- バブルソートアルゴリズム
- 挿入ソートアルゴリズム
- クイックソートアルゴリズム
- ヒルソーティングアルゴリズム
- マージソートアルゴリズム
- バケットソートアルゴリズム
- 基本ソートアルゴリズム
- 剪定アルゴリズム
- バックトラッキングアルゴリズム
- 最短パスアルゴリズム
- 最大サブアレイアルゴリズム
- 最長の共通サブシーケンスアルゴリズム
- 最小スパニングツリーアルゴリズム
データ構造
- スタック
- キュー
- リンク
- ハッシュ表
- ソートされたバイナリツリー
- 赤黒の木
- B-TREE
- ビットマップ
暗号化アルゴリズム
- AES
- RSA
- CRC
- MD5
Hadoop
- Hadoopのコンセプト
- HDFS
- クライアント
- NameNode
- セカンダリNameNode
- DataNode
- MapReduce
- JobTracker
- TaskTracker
- 仕事
- タスク実行プロセスを削減
- HadoopMapReduceジョブのライフサイクル
- ジョブの送信と初期化
- タスクのスケジューリングと監視。
- タスク動作環境の準備
- タスクの実行
- 宿題が完了しました
スパーク
- スパークコンセプト
- コアアーキテクチャ
- コアコンポーネント
- SPARKプログラミングモデル
- SPARK計算モデル
- SPARK操作プロセス
- SPARKRDDプロセス
- SPARK RDD
嵐
- ストームコンセプト
- クラスターアーキテクチャ
- ニンバス(スーパーバイザーへのマスターコード配布)
- スーパーバイザー(スレーブ-ワーカープロセスの開始と終了を管理します)
- ワーカー(コンポーネントロジックを具体的に処理するプロセス)
- 仕事
- ZooKeeper
- プログラミングモデル(注ぎ口->タプル->ボルト)
- オポロジー操作
- ストームストリーミングのグループ化
- ResourceManager
- NodeManager
- ApplicationMaster
- YARN操作プロセス
機械学習
- 決定ツリー
- ランダムフォレストアルゴリズム
- ロジスティック回帰
- SVM
- ナイーブベイズ
- K最近傍アルゴリズム
- K-meansアルゴリズム
- Adaboostアルゴリズム
- ニューラルネットワーク
- マルコフ
クラウドコンピューティング
- SaaS
- PaaS
- IaaS
- Docker
- Openstack
- 名前空間
- プロセス(CLONE_NEWPIDによって実装されるプロセス分離)
- Libnetworkとネットワークの分離
- リソースの分離とCGroups
- ミラーリングとUnionFS
- ストレージドライバー
スペースの制限のため、編集者、私は知識の説明のいくつかのイラストを切り取るためにここにいます、必要なプログラムエイプ(元)は写真で取得する方法を見ることができます:
無料のアーキテクチャ学習資料を入手するにはどうすればよいですか?
情報取得方法: