私はビジネスについてお話しましょう:
事前受注は、トークンやその他のリスク管理レビューにいくつかの情報を送信する必要があります。注文は、物理と仮想の二つの独立したAPIインタフェースのオーダーです。
ThreadLocalのスレッドトークン情報、共有変数である背景に達しダボ尋のRpcContext暗黙の移動によって。トークン送ら舞台裏リスク管理レビューを取得します。
問題についての講演、そこに注文のトークンの種類を送信するために多くの仮想オンライン注文をして、と繰り返し率は比較的高いいます。
理由:仮想受注誤っては、ThreadLocalのスレッド共有変数にトークンを設定しないでください。バックトークンの取得の結果が、受注のスレッドトークン-種類セットで左に連れて行くとき。Tomcatのスレッドプール多重化するので、高繰り返し率の場合はそれが表示されます。
プロセスは、実質的に次のように
難しさの分析:
トークンは機密情報であるため、生産環境が頻繁な再起動へのログ、テスト環境に印刷することはできません、スレッド変数の初期化順序の多くは物理的ではない、トークンが空で取得する仮想ためです。生産には問題を再現することはできません。
関連する問題、またはそれ以上の知識:
1、Tomcatのスレッドモデル
2、スレッドの共有変数
3、ダボ間サービス質量参加