サーバーレス:「フロントエンド開発者」を「アプリケーション開発者」に移行させましょう

テクノロジーの成熟度は大規模な実践に由来します。Java分野では、Aliは独自の実践をマイクロサービステクノロジーシステムに継続的にフィードバックします。Node.js分野では、Aliは前例のないフロントエンド革命の波を引き起こし、実践をサーバーレステクノロジーシステムであり、他の多言語システムやバックエンドBaaSにも徐々に拡張されています。

 

サーバーレスクラウドR&Dプラットフォームは、Alibaba Groupのフロントエンド委員会によって開始された統合クラウドR&Dプラットフォームです。最下層は、機能コンピューティングFCに基づいています。これは、ノードサーバーレスシステム全体のR&Dポータルです。Taobao、Fliggy、ICBU、Koala、Gaode、およびエンターテイメントを請け負っています。およびその他の研究開発、配送、運用および保守作業。現在、このグループには、マーケティングガイド、ミドルオフィスとバックオフィス、業界のフロントオフィスなどの大規模なシナリオを含むがこれらに限定されない、ビジネス開発にサーバーレスクラウドR&Dプラットフォームを使用する数千人のフロントエンドおよびクライアント側のエンジニアがいます。

 

今年のDouble11の全体的な市場データから判断すると、Taoxi Node Serverlessだけのサポートトラフィックは、昨年の2KQPSピークから今年の30KQPSピークに増加しました。ピークトラフィックは約15倍に増加し、グループ全体は約5.8から増加しました。 KQPSは今年50KQPSのピークに達しました。

 

ソリューションに関しては、Koala Dartソリューションの実装や、対面ガイドが購入したモデル駆動型ソリューションなど、より多くのシナリオに合わせて機能をカスタマイズしました。運用と保守に関しては、開発を可能にするために、大規模なプロモーションと日常の状態プロセスを最適化しました。より高いQPSスケールに対応する場合、エネルギー消費は少なくとも50%削減されます。R&Dエクスペリエンス側では、ソリューションシステムを作成し、R&Dしきい値を下げ、フロントエンドの高速エントリをサポートし、R&D効率を39%向上させます。下部のサーバーレスベースでは、複数のサーバーレスプラットフォームに適合し、単一のプラットフォームの不確実性に対処するために複数のプラットフォームのリアルタイムスイッチングをサポートします。

 

この記事では、サーバーレスクラウドR&Dプラットフォームが提供する機能を紹介し、各テナントのビジネスの迅速な開発と安全な提供を保証します。

R&Dの本質


「人の連携とサービスの信頼性」には誰もが高い人件費を払っているかもしれませんが、R&Dの本質は「ビジネス機能」を提供することです。

今日、私たちは従来の「フロントエンド開発者」から「アプリケーション開発者」にゆっくりと移行しています。「実際の従量課金制」、「柔軟性」、およびその他の基本的な運用と保守に関連することを考える必要があることを除いて、回避するのは簡単ではありません。提案に加えて、「R&D効率」に関連する提案も考慮する必要があります。そのため、より効率的なコラボレーションモデル、組織関係の変化、さらにはフロントエンドの共同制作関係全体も変化しています。今日は「クラウド」について説明します。 「統合」とは、本質的に、ユーザーの視点から問題を考え、より効率的な方法でビジネス上の問題を解決することです。

 

今日、ソフトウェア開発にはますます多くのコスト管理が必要であり、単位時間あたりの生産性は、チームが効率的であるかどうかを測定するための標準に徐々になります。

 

したがって、R&Dの性質から、サーバーレスクラウドR&Dプラットフォームによって解決される提案を見てみましょう。

  • ビジネス開発を軽減し、ビジネスロジックに焦点を合わせます。

  • ビジネス開発をより速くし、生産と研究の効率を改善します。

  • インフラストラクチャを厚くし、安定性を向上させます。

サーバーレスクラウドR&Dプラットフォームアーキテクチャ図

クラウド統合開発者市場を改善し、開発者により多くの選択肢を提供し、クラウド統合R&D統合閉ループを作成してより速いビジネス配信速度を提供し、ビジネス向けの基本的なBaaSサービス機能を低コストで使用するためのサーバーレスソリューションカスタマイズ機能、およびビジネスBaaSがR&Dになりますプラットフォームのコア把握。


サーバーレスR&Dプラットフォーム


▐ サーバーレスビジネスソリューション 

私たちが定義するソリューション:特定の水平または垂直フィールドを解決し、作成、研究開発、配信、運用および保守の各段階を実行する一連の機能のコレクション。当時、ソリューションのカスタマイズ機能を定義する必要があったのはなぜですか?主な理由は、今日のクラウド統合シナリオに直面しているため、さまざまなビジネスユニットのビジネス学生がさまざまなカスタマイズニーズを持っているためです。

AE、コアラ、タオ部門など、いくつかのビジネスユニットを調査しました。初期のサーバーレスクラウドR&Dプラットフォームは、カスタム開発機能が弱く、ビジネスの需要を十分に満たすことができません。プラットフォームにある程度のオープンなカスタマイズ機能を持たせる必要があります。たとえば、R&Dパネル用のTao Departmentの低コードカスタマイズ機能、Koalaの機能指向の資産損失リスクレベル、およびアプリケーションリスクレベルのエントリ要件。

 

ただし、オープン機能には、作成、R&D、配信、運用および保守の段階が含まれます。各プロセスで提供できるカスタマイズされた機能とオープン性の程度は、収集された要件とプラットフォーム自体の管理および制御要件に基づいて、プラットフォームによって包括的に検討されます。いわゆる「人は生き、木は死ぬ」と、いくつかの重要な機能を構築した後、サーバーレスクラウドR&Dプラットフォームのオープンソリューションのカスタマイズ機能が、当時の複数のテナントの調査の下で出現しました。

上の写真は、構造化されたいくつかのカスタマイズ可能なノードと複数のシナリオの調査状況を示しています

上図の構造化された情報を通じて、ソリューションのメタデータ関連情報を定義します。例は、ミドルエンドおよびバックエンドの統合ソリューションに関連するメタデータ情報です。

{
  "name": "ICE-FaaS",
  "display_name": "Web 端一体化",
  "description": "传统 Web 一体化解决方案,解决中后台开发需求(ICE、React等),同时支撑中后台前端页面和 FaaS 的研发",
  "owner": "*",
  "generator": {
    "id": 30
  },
  "depserver": [],
  "page": {},
  "widget": {},
  "baas": {},                         
  "ide_plugin": ["midway-helper"],     
  "checkConfig": {
    "cf": true,
    "cr": true,
    "fone": true
  },                       
  "flow": {
    "id": 1                          
  },                        
  "ops": {                       
    "resource": [{
      "type": "faas"
    }, {
      "type": "assets"
    }]
  }
}

これまで、サーバーレスクラウドR&Dプラットフォームは、5つの一般的なソリューションと9つの異なるテナント向けのカスタマイズされたソリューションを含む、共同構築を通じて14のソリューションを蓄積してきました。

 

次に、3つの典型的なソリューションを紹介します。

オールインワンソリューション

統合アプリケーションソリューションは、Midway Hooksが提供する上位レベルのビジネスクラウド統合ソリューションに基づいています。サーバーレス+フック+「ゼロ」API呼び出しの助けを借りて、開発者はR&Dプロセスのビジネスロジックに注意を払うだけで、アプリケーションの配信を効率的に完了できます。 。

 

統合アプリケーションを使用すると、多くの利点があります。

 

  • 開発が簡単で、フロントエンドとバックエンドは同じ倉庫であり、シームレスな統合と統合された開発です

  • 展開が簡単で、フロントエンドとバックエンドが解放され、一緒に展開されます

  • 保守が容易なバックエンドコードは、サーバーレス展開を使用し、運用と保守の難易度が低い

開発時には、開発者が研究開発を加速するのに役立つ多くの機能も提供します。

「API呼び出しゼロ」

フックサポート

アリババでは、ミドルオフィスとバックオフィスの統合とビルディングモジュールの統合という2つのソリューションを提供しています。その中で、ミドルエンドとバックエンドの統合アプリケーションは、すでに300以上のアプリケーションを社内に導入しており、各BUのミドルエンドとバックエンドのニーズを迅速かつ効率的にサポートしています。

タオシリーズモデル駆動型ソリューション

モデルドリブンは、タオバオのショッピングガイド事業の開発過程で生まれた開発手法です。対面ガイドは、需要を補完するために多数のリコールを購入します。構成パネルを介して、モデル、データソース、およびプラグイン構成が組み合わされ、最終的にビジネス消費用のビジネスロジックコードが生成されます。

操作パネル全体の中心的な焦点は、右側のプロセスキャンバスにあります。このタイプのビジネス上の問題を解決するために、固定プロセスを使用したいと考えています。これらのロジックは、事前定義された操作パスに従います。クラウドマーケットライトアプリケーションアウトソーシング介入開発モデルでは、内部の学生が資料を生成し、モジュールを開発してビジネスフィールドを選択し、プロセスを接続するために学生を外部委託し、内部の学生が従来の開発方法と比較して、プロセス接続とモジュール統合のコストを大幅に節約できるようにします全体の効率は約10%向上します。これも革新的なコラボレーティブモデルであり、豊富な資料を経て改善の余地があります。

数据源(召回) --> 模型(补全) --> 扩展逻辑(插件)
模型驱动解决方案在淘宝很好的解决了业务问题,但是面临更多的场景需要的是更加灵活的模板定制能力,因此未来模型驱动会在灵活的模板配置化上发力、对节点物料的沉淀上建立更加完善的机制、支持Web IDE等插件,并在更多的场景上支持业务的落地,让不同的业务场景可以更加便利的建立自己的“三板斧”。

KoalaDart統合ソリューション

Koalaの大きなフロントエンドは2020年3月にFlutterアプリケーションの試行を開始しました。一部のクライアントとフロントエンドの学生はFlutterの開発に参加しました。彼らはDartに比較的精通しているため、Dart統合ソリューションの本来の目的はクライアントの学生が開発を解決できるようにすることです。効率改善の問題。Koalaは、主にNode.jsランタイムのサーバーレスソリューションを使用していました。Javaスクリプトと比較して、Dartはクライアントの学生にとっても使いやすいです。同時に、クライアントの学生は引き続きDartサーバーレスを提案しています。

機能コンピューティングFCR&Dチームの助けを借りて、KoalaはDart Runtimeのプレテストバージョンに基づいて、Koalaアプリの今日のアクティビティタブの再構築と再構築を迅速に完了し、9月末にグレースケールでリリースされました。10月中旬から下旬にかけて、ダートランタイムとDEFプラットフォームに基づいて、最終的なDEFサーバーレス作成パネルにダートピュアファンクションソリューションが表示されます。現在、FC側の基本プロセスが調整されており、ダートピュアファンクションソリューションがまもなくリリースされます。

オンラインのDartAst生成サービスに加えて、Koalaは、アプリ側のデータモデルの動的な配布、ビジネスロジックの動的な構成、Flutterの動的な試行、端末間でアプリを構築する機能など、DartServerlessソリューションに基づくより多くのビジネスシナリオを開始します。待つ。

上記の3つのソリューションに加えて、ICBUチームによって開発されたEaaSマイクロアプリケーションレベルのソリューション、およびTmall業界チームによって開発されたライトショップシーン向けのネイティブアップルト統合ソリューションなどは、ここでは紹介しません。

▐機能 安定性保証 

最初は、Nodeを使用してデータを整理する方法、Java 2パーティパッケージを呼び出す方法、Aladdinリンクを統合する方法、オンラインのバグをすばやく修正する方法など、ビジネスロジックを完成させる方法に焦点を当てました。現在、非常に多くのオンラインビジネスが存在するため、私たちの焦点は、ビジネス要件を満たす方法から、ビジネス要件を効率的かつ安定的に満たす方法に移っています。

オンラインの安定性は本質的に問題のガバナンスです。問題から始めて、次の主要なリンクに分けることができます:問題の防止、問題の発見、問題の特定、および問題の解決。

問題を未然に防ぐためには、問題発生の可能性を減らし、影響範囲を可能な限り減らし、オンラインチェックポイントをうまく活用し、対応する計画を立てる必要があります。問題を発見する際には、可能な限りフルリンク監視を実現し、合理的かつ効果的な警報配信メカニズムを実現する必要があります。ロケーションの問題に関しては、問題のロケーション時間を可能な限り短縮する必要があります。アラームのメタ情報に基づいて、機械支援分析を実行し、コンテキストを相関させて、半自動ロケーションを実現するか、より論理的なコンテキストを提供して、人工的なロケーションの問題を短縮します。時間。問題を解決するには、解決策が効果的、安全、迅速であることを確認する必要があります。

安定性保証の大幅な推進は

大規模なプロモーションシナリオでは、C側のシーンを保護する必要があります。次の安定性保証方法は、いくつかの大規模なプロモーションストレステストを受けています。同時に、プロモーションが大きいほど、全体的な安定性保証はより緊迫します。

安定性は保証されますが、上記の書類に基づいてオンラインプロセスを完了する前に、プロセスは非常に長く、最終的には戦闘マニュアルに落ち着きました。同時に、これらのコンテンツはアプリケーションに関連付けることができず、ドキュメントの隅に散らばっていました。もう一度長い」

オンラインプロセス->操作マニュアルの統合

したがって、サーバーレスR&Dプラットフォームは、長所と短所への依存->計画構成->監視とアラームサブスクリプション->シングルリンク圧力テスト->バトルマニュアル生成、すべての機能のオンラインプロセスの記録、プロセスのトレーサビリティ、およびドキュメント化から、プロセス全体を標準化することを望んでいます。沈殿する可能性があります。さらに、事前計画、圧力テスト、監視、およびその他のプロセスが半自動で行われるため、オンラインになるまでの時間が短縮されます。各プロセスノードをSOPユニットとして定義し、ビジネス特性に応じてSOPプロセスを自由にアセンブルできるようにします。

SOPプロセスを解放する

半自動化されたプロセスで作成された操作マニュアル、機能に関連するハードディスクの記録方法と操作マニュアル、自動電流制限とダウンストリームの依存関係分析、および計画の作成。たとえば、プレリリースされたトラフィック記録の再生を通じて、ダウンストリーム機能の強度を自動的に分析します。依存度が低く、依存度の高い担当者を入力することで、オンラインの問題が発生したときに、初めて担当者を見つけてトラブルシューティングを行うことができます。ユニット化のためのさまざまなテナントのニーズに応じて、プラットフォームは、ユーザーが複数のコンピュータルームと複数のユニットを展開して複数の場所を実現するのに役立ちます住む。これらは、ビジネスの大きな宣伝を容易にすることができます。

タオ部事業運営マニュアル


専門家の緊急対応

オンライン問題の位置付けが遅いという問題点を解決するために、プラットフォームは緊急応答システムも提供します。機能の成功率が低下し、アラームがトリガーされると、プラットフォームは機能と複数のダウンストリームデータ情報を自動的にプルし、エラー分析を実行し、エラーレポートプッシュをすばやく生成します。開発者を機能させるため。また、開発者がR&Dプラットフォームに戻って、フローの切断や計画の実行などの止血操作を実行するようにガイドします。たとえば、ダウンストリームサービスは、サービスAの成功率の低下に大きく依存しているため、機能自体の成功率が低下しているため、サービスAの担当者に連絡する必要があります。

▐テナントの 運用と保守 


プラットフォーム上の各テナントには、テナントの下の機能の統一された展開ルール、大規模なプロモーション制御、自作のゲートウェイ構成、コンテナクォータ、テナントプライベートソリューションなど、テナントの機能の安定性を担当する対応するテナント管理者がいます。 、このプラットフォーム用の一連の操作および保守ツールを提供します。

テナントマーケット

管理者がテナントの下の機能のサービス品質とコンテナクォータの使用状況をより適切に監視し、機能エラー率とRTブラックリストを提供し、管理者が運用と保守をより適切に実行できるように、ガバナンスの週次レポートを毎週管理者にプッシュできるようにします。そのテナントの下で機能します。

機能インベントリ

管理者は、機能ラインのバージョン、コンテナの数、ランタイムバージョン、グレーレベル、ユニットの展開ステータスなど、各機能の特定のステータスをオンラインで注意深く観察できます。また、機能の展開のバランスが取れているかどうかも観察できます。

大きなプロモーションコントロール

このプラットフォームは、大規模なプロモーションの運用および保守管理と制御機能も提供します。管理者は、テナントの下の大規模なプロモーションに参加している機能サービスをワンクリックで大規模なプロモーションに切り替え、大規模なプロモーションの容量構成やブローカー側の制限など、大規模なプロモーションの追加構成を実行できます。ゲートウェイ側の統合監視計画およびその他の機能により、プロモーションの安定性が保証されます。

いくつかの考え


サーバーレスクラウドR&Dプラットフォームは、ユーザーの順方向および逆方向プロセスの効率を向上させるために、今後も進化を続けます。L1は、ユーザーが低コストで開始できるようにし、L2は、ユーザーが低コストで研究開発を行えるようにして、フロントエンドがアプリケーションの研究開発にさらに進むことができるようにすることを望んでいます。

以下は、ユーザーのフォワードR&Dリンクの時間のかかる統計に基づくいくつかの分析です。

  • テクニカルソリューションの出力には時間がかかり、R&Dサイクル全体の5%を占めます。主な理由は、サービスマテリアルの取得が難しく、サービスの可用性の評価が困難であり、ドメインモデルが不十分であるためです。

  • FaaS全体のR&Dは25%〜30%を占めます。モデル駆動型およびその他の視覚的なオーケストレーションは、材料の準備ができたときに効率を向上させることができますが、大規模なシナリオはありません。

  • 共同デバッグには時間がかかり、全体のコストの約20%を占めます。プレリリース環境に依存しすぎています。統計によると、プロジェクトを完了するには50回の展開が必要です。

  • 圧力テストのコストは依然として存在し、プラットフォームの習熟コストは高すぎます。

もちろん、リバースリンクの監視、操作、および保守については、いくつかの分析があります。

  • アラームの分布は不正確です。基礎となるフレームワークと上位レベルのビジネスの間でアラームを区別することは不可能であるため、多くの場合、アーキテクチャチームとビジネス学生の共同介入が必要になります。

  • 故障率アラームなどの問題を特定する効率が低い場合は、基盤となるアーキテクチャの問題、ダウンストリームの問題、またはコンピュータルーム自体の問題である可能性があります。多くの場合、複数のプラットフォームを1つずつ確認する必要があります。

  • 統計またはサービス品質に関する全体的な知識の欠如。

  • オンラインの問題の80%をトラブルシューティングして解決するための標準化された手順が不足しており、問題を見つけて解決するユーザーの能力に依存しています。

やっと


半年以上の変革の後、サーバーレスクラウドR&Dプラットフォームは、エンジニアリングリンクを解決するためのシンプルなプラットフォームから、R&D、オンライン、運用および保守のための完全なライフサイクルR&Dプラットフォームに進化しました。その後の解決すべき提案は、ユーザーの低いしきい値に焦点を当てます。 。

 

サーバーレスでの実践と調査が業界の他の企業にインスピレーションをもたらし、道路上の障害が少なくなり、アプリケーションの開発が軽くなることを願っています。

✿さらに  読む



著者| Lin Yu(Su He)

編集|オレンジ

生産|アリババの新しい小売技術

おすすめ

転載: blog.csdn.net/Taobaojishu/article/details/111055786
おすすめ