マイクロサービスのデバッグは作業者にとって困難に思えるかもしれませんが、適切なツールと戦略を導入することで作業が楽になります。 情報アーキテクチャの成長により、多くの組織がクラウド サービスを導入し、時間の経過とともに成長してきました。マイクロサービスはこの点で先頭に立っており、さまざまなアプリケーションを独立して展開可能なサービスとして設計する手法として急速に人気が高まっています。 O'Reilly の調査では、回答者の 50% 以上が、組織内の新規開発プロジェクトの 50% 以上でマイクロサービスが使用されていると回答しました。 シングルチップ システムでは、モジュール内の 1 つのエラーが原因でアプリケーション全体が失敗する可能性があります。独立したモジュールを使用すると、開発者は独立したモジュールへの影響を心配することなく、カスタマイズ可能なコードを編集および展開する柔軟性が高まります。 ただし、このアプローチでは、エラーが誤って発生した場合に特有の課題が生じます。クラウドでのマイクロサービスのデバッグは、情報アーキテクチャの複雑さと、開発フェーズから運用フェーズへの移行により、困難な作業になる可能性があります。 いくつかの課題と、それらをシームレスに対処する方法について見てみましょう。 マイクロサービスのデバッグの課題(1)追跡と観察が不十分 マイクロサービス要件の増加に伴い、インフラストラクチャの複雑さも増しています。各クラウド コンポーネント、モジュール、サーバーレス呼び出しでは、インフラストラクチャの複雑さが隠れていることが多く、DevOps チームや運用チームが出力に基づいてマイクロサービスの内部状態を追跡および観察することが困難になります。独立して実行されるマイクロサービスでは、非同期モジュールに存在するユーザー要求を追跡することが困難であり、エラーの連鎖複製につながる可能性があります。これは、相互に検出して対話するサービスがこれらのバグの影響を受ける可能性があることも意味します。これらの要因により、バグやエラーの根本原因を特定することは開発者にとって困難な作業になります。 (2)複雑な環境下での状態監視 多くのマイクロサービスが集まってシステムを構築すると、それらのステータスの監視が複雑になります。システムにマイクロサービス コンポーネントが追加されるにつれて、各モジュールが独立して動作する複雑なサービス メッシュが進化します。これにより、他のモジュールの動作に影響を与えることなく、いつでも任意のモジュールが故障する可能性も生じます。 開発者は、特定のマイクロサービス内のエラーをデバッグするのが難しいと感じるかもしれません。これらはそれぞれ異なるプログラミング言語でコーディングでき、独自のログ記録機能を備えており、他のコンポーネントからほとんど独立しています。 (3)開発から生産への移行は予測不可能である可能性がある コードを開発環境から本番環境に移行する場合、パフォーマンスや状態のエラーも予測できません。統合および単体テストを行った後でも、分散サーバー間で何千ものリクエストを処理するときにコードがどのように実行されるかを予測することはできません。コードが適切に拡張されなかったり、データベースがリクエストを処理できなかったりすると、開発者がシステム内の潜在的なバグを検出することはほぼ不可能になります。 クラウドでマイクロサービスをデバッグする方法ここでは、組織が以下の課題に対処するのに役立つ、マイクロサービス固有のデバッグ アプローチをいくつか紹介します。 (1)非侵入型デバッグオプション 従来のデバッグ方法とは異なり、サードパーティのツールを使用すると、DevOps チームはサービスを中断または一時停止してデバッグ プロセスの実行に影響を与えないブレークポイントを設定できます。これらの方法は非侵入的であり、開発者はグローバル変数とスタック トレースを表示できるため、エラーをより効果的に監視および検出できます。また、開発者はコードを停止したりコードベースを再デプロイしたりすることなく、発生する可能性のある問題をテストすることもできます。 (2)可観測性向上ツール 多数のマイクロサービスを持つシステムでは、リクエストを追跡するのが困難になります。この問題の解決策として、可観測性のためのカスタム プラットフォームを構築することが考えられるかもしれませんが、開発プロセス中に多くの時間とリソースが消費されます。 幸いなことに、多くの最新のサードパーティ ツールはリクエストを追跡するように設計されています。マイクロサービスに広範な可観測性を提供します。これらのツールは、分散コンピューティング機能やサーバーレス コンピューティング機能など、多くの機能を提供します。 たとえば、Thundra のようなツールを使用すると、組織は運用中のインフラストラクチャを通過するユーザー リクエストを監視し、開発者がコーディング環境を完全に可視化し、エラーの原因を特定して、迅速にデバッグできるようになります。 (3)自律例外追跡 システムにとって、まず認識すべきことは、エラーを見つけることは難しい作業だということです。システムは、発生した異常を自動的に追跡し、うるう年のバグ、ブラウザのバージョン固有のバグ、奇妙なスタック オーバーフローなどの繰り返し発生するパターンや破壊的な動作をシステムが識別できるようにする必要があります。 ただし、これらのエラーを見つけることは戦いの半分にしか過ぎません。また、システムでは、エラーがいつ、どのような条件で発生したかを調べるために、変数とログを追跡する必要があります。これにより、開発者はバグを排除するための最も効果的なソリューションを見つけることができます。包括的な監視により、運用時のデバッグ プロセスが大幅に簡素化されます。 クラウドでのデバッグは難しいことではありません現代のマイクロサービスでは、デバッグは誰にとっても非常に複雑なプロセスです。ユーザーリクエストを追跡し、コードのスケーラビリティを予測する機能は複雑です。ただし、最新のツールを使用すると、開発者はエラーを簡単に監視、検出、解決できるようになります。 迅速にデプロイ可能なマイクロサービス アーキテクチャを設計し、適切なツールセットを使用すると、開発者によるデバッグがはるかに簡単になります。 |
>>: 新たな勢い、新たなチャンス: SaaS ソフトウェア プロバイダー Zoho が 25 周年戦略をアップグレード
タオバオアフィリエイトは、初期の広告スペースモデルから現在の洗練されたコンテンツプレゼンテーションま...
中国新聞社、北京、7月16日(記者:石燕)世界貿易機関が16日夜発表した、電子決済をめぐる米国と中国...
電子商取引企業間の「戦い」は、3C家電分野から美容・化粧品分野にまで拡大している。 2013年、美容...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っています「人がいる...
inceptionhosting は評判が良く、VPS の品質が保証されているサービス プロバイダー...
3月28日、Youmi.comの創設者である王立文氏は、2012年の第1回中国リーダーシップ年次大会...
iwstack.com は prometeus.net のブランドで、クラウド ホスティング、クラウ...
さまざまなインターネットビジネスをめぐる大企業間の「絞め殺し戦争」に慣れてしまった外の世界は、それほ...
最近、freewww というロシアの小さな会社 (adman computer room を使用) ...
2017年、中国はイノベーションにおいて度々成果を上げ、国際的に主導的な科学技術上の重要な成果が続々...
2018年最もホットなプロジェクト:テレマーケティングロボットがあなたの参加を待っていますインターネ...
キーワードの競争の激しさを判断することは、優れた SEO の基礎です。個人のウェブマスターにとっては...
ギャングの最近の写真Aiming.com-KoKo:今週もMiyouとの週一回のインタビューの時間で...
Sharktech は、オランダのアムステルダム データ センターに設置され、デフォルトで 40Gb...
ロンドンオリンピックは間違いなくこの夏最も注目を集めるイベントの一つであり、世界中の注目がロンドンに...