ユーバー:千マイクロサービスに拡張する前に、あなたが知っている必要があります


背景

ユーバー(ユーバー)は、シリコンバレーのテクノロジー企業です。カリフォルニア大学ロサンゼルス校中退トラヴィスや友人カランニック・ギャレット・キャンプによって設立され、2009年にユーバー、。その同名のタクシーAPPの名声ので。ユーバーは現在、中国本土で60以上の都市を入力して、全世界70カ国以上で400以上の都市をカバーしています。

ユーバーのシニアエンジニアのMatt RanneyはgotoConference会議1000マイクロサービスのアーキテクチャに分割するために岩からユーバーアプリの歴史を共有しました。

2014は、ユーバーの従業員だけで200人は、2年後、6000人のユーバーのスタッフは、開発のスピードが非常に速いので、ユーバーはマイクロサービスの練習を始めました。

マイクロサービスを実装する前に、あなたは知っておく必要があります

マイクロサービスのメリット

マイクロサービスの利点は明白です:
チームは、独立して独立したパブリッシングソフトウェアを動作させます。
オンライン責任の独自のオンライン環境、肩の開発、運用、保守を維持するためのミッション。
私たちは、自分のチームのためのツールチェーンを選択する権利を持っています。

ユーバーツールチェーンの進化:

ユーバーの最初のバージョンは、同社の開発をアウトソーシングしています。これは、いくつかの学生の最初の滴もプロトタイプから抜け出すことを言われて、もちろん、それはすぐに試行錯誤し、迅速なテスト市場からのフィードバックをしています。そして、Pythonのからユーバーコア開発言語は、マップとデータ処理モジュールは、Java開発を使用して、行くに転じました。

ピット1:多言語

言語よりも後に、コードは同じチームの異なる機能を共有することは困難であることは、再利用することは困難です。猿言語プログラムは、障害を持っている、人口に応じて分割されます。

ピット2:すべての呼び出しは、RPCあります

すべての通信は、エクスパンションで、RPCになっているとき、問題が特に顕著です。
HTTPリクエストの戻り値は、それが何を意味するのでしょうか?
JSONは、構文解析ツールが混乱してしまうJSONで、その結果、決まったスキーマではありません。
機能よりも遅い速度を呼び出すためのRPC要求。

ピット3:運用・保守の困難

以下のようなユーバー、のような、もし、毎週15の新しいサービスをオンラインに、プラットフォーム全体の運用・保守の責任者として、それはオンラインサービスが新しく展開されたサービスを破壊する可能性が高いことを意味するので、非常に苦痛になります。質問のうち、研究開発チームは全体としてオンライン環境の深い理解が必要です。

ピット4:パフォーマンス

パフォーマンスの問題は、言語やツールに依存します。どのように私は別の言語でのパフォーマンスの問題を見ていますか?言語が表示されたプロファイリングのGoランタイムの可視化にツールをpprofた移動します。

ユーバー内部使用のためのクロス言語サービスのための彼らのパフォーマンス解析ツールを達成するため、一度内側ライン上の新しいサービスがあり、開発する必要はありません、リアルタイムの監視サービスのパフォーマンスを達成することが可能です。

ピット5:オリエンテーション

ときにいくつかの呼び出しは非常に遅い、他は正常である10マイクロサービス、全体の要求は、どのように迅速に遅いサービスを見つけるのですか?

ユーバーは、内部の追跡サービスコールの可視化を提供します。この機能は大幅に当該サービスのマイクロポジショニングの問題を軽減しました。

ピット6:ログイン

奇妙な方法、保管場所をログに記録する誰もが、方法が異なっている、統一することは困難です。多言語環境では特に顕著です。ログは無料ですので、あなたは、ELKまたは嵐とログは、新たな問題が発生します統一プロセスに来た場合、開発者は、ログデータの数が多い、これ洪水につながる、この機能を悪用します。

ピット7:ストレステスト

ストレステストは、環境性能にオンラインにする必要があり、およびユーザーエクスペリエンスを破壊することができません。そのため、システムの圧力がボトルネックに達したときに、システムの圧力をテストしたいだけなので、表示されるバグを再現するために、いくつかの遅れのダウン適切なレベルに。

ピット8:非破壊検査

このような環境にはNetflixのChaosMonkeyランダムダメージの使用などのオンライン破壊試験、オンラインサービスの信頼性試験となりますを実行します。あなたのチームは、最初は拒否しますが、何度運動後、予期しない問題オンライン開発チームに直面したときにもっと自信になります。

概要

マイクロサービスが美しく見える、本当にマイクロサービスを実装する前に、事前にこれらの問題を知っていれば、それらの多くは、隠されたピットを実現満たし、我々はあなたが決定的な瞬間に右の意思決定を助けることができます。これらのピットでユーバーワタリの外観、あなたは少しピット上のステップ多分明日。

(代わりに、ネクサスの)JFrog Artifactoryオープンソース版をダウンロードしてください:
http://www.jfrogchina.com/open-source/

:JFrog Artifactoryエンタープライズ版(無料体験版)をダウンロード
https://www.jfrog.com/artifactory/free-trial/?lang=zh-hans#High-Availability

JFrogについて
世界有数のDevOpsチームのプラットフォーム
2008年に設立され、米国、イスラエル、フランス、スペイン、北京、中国で200人の以上の従業員を擁しています。JFrogは、そのようなので、上のテンセント、グーグル、シスコ、ネットフリックス、アマゾン、アップルと同様に知られている企業を含め4,000人以上の有料顧客を持っています。ウォッチJFrogは、オリジナルの葉汁のシリコンバレーを感じます!また、ここで最高の製品を提供するだけでなく、最高の連続配信プラットフォーム・ソリューションを提供し、[email protected]お問い合わせください

おすすめ

転載: blog.51cto.com/jfrogchina/2422319