【面接の質問6】

1.GCのプロセス。

1. 最初のステップは、初回をマークすることです。つまり、GCroot オブジェクトから下の呼び出しチェーンを確認し、参照されていないオブジェクトをガベージとしてマークします。この方法は到達可能性分析です。gcroot オブジェクトは仮想オブジェクトからのものです。マシン スタックとローカル メソッド スタック、オブジェクト、メソッド領域の静的変数オブジェクト、およびメソッド領域の定数オブジェクト。
2. 2 番目のステップでは、2 回目のマークを付け、オブジェクトの終了メソッドの参照オブジェクトが最初のマークの参照チェーン上にあるかどうかを確認し、参照がある場合はオブジェクトのリサイクルを中止します。
3. リサイクル操作では、新世代はコピー アルゴリズムを使用し、旧世代はマーク アンド クリア アルゴリズムまたはマーク ソート方式を使用してガベージをリサイクルします。

2. デュアルトークンメカニズム

デュアル トークン メカニズムは、アクティブ ユーザーの頻繁なログインを解決するために設計されています。ユーザーがログインすると、2 つのトークン (1 つはアクセス トークン、もう 1 つはリフレッシュ トークン) が返されます。アクセス トークンの有効期間は通常 30 分以内で、アクセストークンの有効期間は通常 1 日または 2 日です。検証プロセスは次のとおりです。 1. サーバーはアクセストークンが有効であることを検証し、解放し、無効な場合はリフレッシュトークンを検証します。 2. リフレッシュトークンが有効期限内であることを確認します
。有効期間とは、ユーザーが少なくともこの日または 2 日間アクティブであることを意味し、アクセス トークンとリフレッシュ トークンをクライアントに更新します。
3. このようにして、ユーザーが 1 日以内にアクティブになった場合は、再度ログインする必要はありません。
4. 両方のトークンが無効な場合は、ユーザーが 1 ~ 2 日間アクティブになっていないことが証明されるため、再度ログインする必要があります。

3. スプリングゲートウェイの原理

1. springgateway の下部で通信する spring webflux フレームワークは、サービス呼び出しの転送に netty のリアクター モデルを使用します。
2. マルチ CPU シナリオでは、高い同時実行性により、サービス転送にマスター/スレーブ リアクター マルチスレッド モデルが使用されます。

おすすめ

転載: blog.csdn.net/qq_34526237/article/details/129011762