JP2022542203A - ミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体 - Google Patents

ミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体 Download PDF

Info

Publication number
JP2022542203A
JP2022542203A JP2021544309A JP2021544309A JP2022542203A JP 2022542203 A JP2022542203 A JP 2022542203A JP 2021544309 A JP2021544309 A JP 2021544309A JP 2021544309 A JP2021544309 A JP 2021544309A JP 2022542203 A JP2022542203 A JP 2022542203A
Authority
JP
Japan
Prior art keywords
package
mini
program
submission
virtual
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2021544309A
Other languages
English (en)
Inventor
ジャーン,ハオ
リウ,ユエンシュイ
タオ,コーァ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Baidu Netcom Science and Technology Co Ltd
Original Assignee
Beijing Baidu Netcom Science and Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from CN202010600458.6A external-priority patent/CN111752587B/zh
Application filed by Beijing Baidu Netcom Science and Technology Co Ltd filed Critical Beijing Baidu Netcom Science and Technology Co Ltd
Priority claimed from PCT/CN2020/122315 external-priority patent/WO2022000869A1/zh
Publication of JP2022542203A publication Critical patent/JP2022542203A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/953Querying, e.g. by the use of web search engines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation
    • G06F8/42Syntactic analysis
    • G06F8/427Parsing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/54Link editing before load time
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/542Event management; Broadcasting; Multicasting; Notifications
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • G06F2009/45562Creating, deleting, cloning virtual machine instances

Abstract

ミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体を提供する。マンマシンインタラクションの分野に関し、画像、ビデオ、音声、vr、ユーザ理解関連のシーンに応用されてもよい。パッチパッケージ提出の新規イベントを確立することと、前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成することと、前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出すことと、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することと、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信することとを含む。

Description

本開示は、マンマシンインタラクションの分野に関し、特にミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体に関する。
[関連出願の相互参照]
本願は、2020年06月28日に出願された中国特許出願202010600458.6の優先権を請求し、その内容の全てを参照によって本願に組み込まれる。
インターネット技術の急速な発展に伴い、様々なアプリケーションプログラムは人々の日常生活に入り、ミニプログラムはダウンロードやインストールをしなくても使用することが可能なアプリケーションとして、様々な業種から幅広く注目され、従って、益々多くのアプリケーションプログラムにはミニプログラムがロードされ、よってユーザに便利なサービスを提供することを実現する。
元々開発能力がない企業に対して、第三者開発プラットフォームが登場していることによって、第三者サービスプロバイダはグラントの形でミニプログラム開発代行サービスを提供することができる。しかし、第三者開発プラットフォームにおいて、管理する必要のあるミニプログラムが多く、サービスの世代交代やアップグレードが頻繁に行われることで、開発効率が低く、ユーザのニーズを満たすことができない。
本開示の第1態様によれば、ミニプログラムのバッチ処理方法を提供し、パッチパッケージ提出の新規イベントを確立することと、前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成し、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成することと、前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出すことと、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することと、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信することとを含む。
本開示の第2態様によれば、ミニプログラムのバッチ処理装置を提供し、パッチパッケージ提出の新規イベントを確立するように構成される確立モジュールと、前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成するように構成されるパッチパッケージ提出タスク作成モジュールと、前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出すように構成される抽出モジュールと、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成するように構成される仮想パッケージ作成モジュールと、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信するように構成される更新配信モジュールと、を含む。
本開示の第3態様によれば、プロセッサと、前記プロセッサによって実行されると、前記プロセッサに本開示に記載の方法を実行させる命令を含むプログラムが記憶されたメモリとを含む電子機器を提供する。
本開示の第4態様によれば、電子機器のプロセッサによって実行されると、前記電子機器に本開示に記載の方法を実行させる命令を含むプログラムが記憶されたコンピュータ可読記憶媒体を提供する。
本開示の第5態様によれば、コンピュータプログラムを含むコンピュータプログラム製品を提供し、前記コンピュータプログラムはプロセッサによって実行されると、本開示に記載の方法が実現される。
本開示によるミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体は、ミニプログラムをバッチ処理することができ、ミニプログラムの更新及び/又は処理効率を向上させることによって、ユーザ体験を向上させる。
図面は、実施例を例示的に示し、明細書の一部を構成し、明細書の文字による説明とともに、実施例の例示的な実施形態を説明するために用いられる。図示の実施例は例示の目的のみであり、特許請求の範囲を限定するものではない。すべての図面において、同一の符号は類似しているが、必ずしも同じとは限らない要素を指す。
本開示の第1例示的な実施例によるミニプログラムのバッチ処理方法を示すフローチャートである。 本開示の第2例示的な実施例によるミニプログラムのバッチ処理方法の一部のステップを示すフローチャートである。 本開示の第3例示的な実施例によるミニプログラムのバッチ処理方法の一部のステップを示すフローチャートである。 本開示の第4例示的な実施例によるミニプログラムのバッチ処理方法の一部のステップを示すフローチャートである。 本開示の例示的な実施例によるミニプログラムのバッチ処理システムを示すトポロジーグラフである。 本開示の例示的な実施例によるミニプログラムバッチ処理装置の構造を示す概略図である。 本開示の例示的な実施例に適用することができる例示的な計算装置を示すブロック構成図である。
以下、図面を参照しながら本開示の実施例をより詳細に説明する。図面では、本開示の幾つかの実施例を示すが、理解すべきことは、本開示は、様々な形態によって実現することができ、そして本明細書に記載される実施例に限定されると解釈すべきではなく、逆で提供するこれらの実施例は、本開示をより明確と全体的に理解するためのものであることである。理解すべきことは、本開示の図面及び実施例は、例示的なものに過ぎず、本開示の保護範囲を限定するためのものではないことである。
理解すべきことは、本開示の方法実施形態に記載された各ステップは、異なる順序で実行されてよく、及び/又は並列に実行されてよい。更に、方法実施形態は追加のステップを含んでよく、及び/又は示されたステップの実行を省略してよい。本開示の範囲はこの点に関し限定されない。
関連する各ミニプログラムプラットフォーム、例えば、百度APP、ウィーチャット、アリペイなどは、時々単一ミニプログラム向けのコードパッケージ管理方法のみを提供している。
バッチで操作するようなサービスシーンには、各ミニプログラムプラットフォームはバッチでミニプログラムコードに対する管理方法を提供することができないため、第三者サービスプロバイダは、多くの場合、自身のサービス特徴に基づいて、従来の機能を利用し、パッケージングして実現する。
例示的に、百度APPプラットフォームと中関村在線などの第三者サービスプロバイダを例として、それらは10万個を超えるミニプログラムに開発代行、オンライン発信代行などの処理サービスを提供する可能である。大量のミニプログラムは第三者サービスプロバイダにより統合管理される必要があり、サービスの世代交代やアップグレードが非常に頻繁に行われる。
このような大量のバッチ処理ニーズに対し、第三者サービスプロバイダが単一インターフェースによるシリアル操作を行う場合、大量に提出することで所要時間が長く、効率が低くなることを引き起こす。第三者サービスプロバイダはパッケージ提出を並行に行う場合、サーバの圧力が制御不能になることを引き起こし、安定性に影響を与える。更に、同じバッチのミニプログラムに対し、第三者サービスプロバイダはミニプログラムパッケージ状態の変化などの情報を自ら記録してメンテナンスしなければならず、統合管理が不十分である。
更に、テンプレートに基づくミニプログラムの開発と管理を行う第三者サービスプロバイダにとって、テンプレートによるパッケージ提出に対し、パッケージ提出や配信を行うことはテンプレートコードのコピーや、新規なコードパッケージの生成に関連する。大量のミニプログラムのバッチ処理では、大量のミニプログラムパッケージの生成と配信が繰り返されることを引き起こし、パッケージ提出速度が低下し、記憶、帯域幅、CDN資源が不足になることを引き起こす。
本開示において言及する第三者サービスプロバイダは、ミニプログラム開発代行業者であってもよく、ミニプログラム開発者であってもよく、本開示ではこの主体は制限されていない。
以下、図面を参照しながら本開示の実施例によるミニプログラムに基づくバッチ処理方法、装置、電子機器とコンピュータ可読記憶媒体を説明する。
図1は本開示の第1例示的な実施例によるミニプログラムのバッチ処理方法を示すフローチャートである。説明すべきことは、本開示の実施例によるミニプログラムのバッチ処理方法は本開示の実施例によるミニプログラムのバッチ処理装置に応用されてよいことである。このバッチ処理装置は電子機器に設置されてよい。一例として、このミニプログラムはホストアプリケーションにホスティングされてよく、このホストアプリケーションはこの電子機器にインストールされてよい。この電子機器は移動端末であってもよく、この移動端末は携帯電話、タブレット、個人用デジタル補助装置などの様々なオペレーティングシステムを有するハードウェア装置であってもよい。本開示において言及するミニプログラムは、特定のプログラミング言語に基づいて開発され、ダウンロードやインストールをしなくても使用可能なクラウドアプリケーションプログラムであり、ミニプログラムの一つの特徴は使用しやすく、手動で端末のオペレーティングシステムにインストールする必要がないことである。そのため、ミニプログラムのバッチ処理方法、装置、電子機器と可読記憶媒体はコンピュータ技術分野に関し、より具体的には、マンマシンインタラクション分野に関し、画像、ビデオ、音声、vr、ユーザの理解に関連するシーンに用いてもよい。
図1に示すように、ミニプログラムのバッチ処理方法100を提供し、パッチパッケージ提出の新規イベントを確立するステップ101と、前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成するステップ102と、前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成するステップ103と、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信するステップ104と、を含む。
本開示の実施例において、ステップ101では、パッチパッケージ提出の新規イベントを確立することは、ソーステンプレート、ターゲットテンプレートとパッケージ拡張情報を受信することと、ソーステンプレートに関連する複数のミニプログラムに対してパッチパッケージ提出の新規イベントを確立することと、を含んでもよい。
例示的に、ミニプログラムプラットフォームは第三者サービスプロバイダにより提供される1つ又は複数のソーステンプレート、ターゲットテンプレート及びパッケージ拡張情報を受信する。そして、ミニプログラムソーステンプレートにしても、ミニプログラムターゲットテンプレートにしても、例示的には、いずれも第三者サービスプロバイダによって所有され、開発されたミニプログラムに応用されてよい。パッケージ拡張情報はミニプログラムの個別化データを含む。
例示的に、パッケージ拡張情報は開発者又は第三者サービスプロバイダが添加したいフィールド、例えば、番号、ラベル、プラットフォームIDラベル、第三者サービスプロバイダIDラベルなどを含み、上記パッケージ拡張情報は関連する内容をロードやレンダリングするために用いられ、開発者又は第三者サービスプロバイダに対して重要な有意性を有する。
本開示の実施例において、ステップ102では、前記のパッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成することは、前記ソーステンプレートに関連する複数のミニプログラムを解析し、前記ソーステンプレートに関連する複数のミニプログラムにおける各ミニプログラムの関連情報をパッケージ提出ジョブキューに添加し、タスクラベルで今回のパッチパッケージ提出タスクの情報を返すことを含む。
例示的に、ステップ101に応答して、タスク情報をタスクデータベースに永続的に書き込み、タスクラベルの形態で、今回タスクの具体的な情報を同期して返す。
具体的には、ステップ101では受信したソーステンプレートに関連するミニプログラムを解析し、各ミニプログラムの関連情報をパッケージ提出ジョブキューに書き込み、タスクラベルの形態で今回のパッチパッケージ提出タスクの情報を開発者又は第三者サービスプロバイダに返す。
開発者又は第三者サービスプロバイダに返す情報はタスク詳細であり、開発者又は第三者サービスプロバイダはタスクラベルを取得し、次の処理プロセスにおいて、開発者又は第三者サービスプロバイダは受信したタスクラベルを通じて、タスク処理の進捗を主動的に調べてもよい。
本開示の実施例において、ステップ103では、前記第1の数はスライス規則に基づいて決定されたものである。且つ、前記スライス規則は前記パッケージ提出ジョブキューに対してスライスを行うことでN個のタスクスライスを形成し、前記N個のタスクスライスの前のN-1のタスクスライスはいずれも第1の数のミニプログラムパッケージ提出タスクを含む。
例示的に、ステップ102で生成されたパッケージ提出ジョブキューに対し、フラグメント毎にその中のミニプログラムを取り出す。
具体的には、タスクラベルに基づいて、このタスクのパッケージ提出ジョブキューから、一定のスライス規則に応じて、例えば、10個を1枚として、ミニプログラムを取り出す。仮に全体のパッケージ提出キューにおいて、全部で98個のパッケージ提出タスクがあれば、1枚毎に10個を抽出する場合、10個のタスクスライスが得られ、前の9個のタスクスライスにはいずれも10個のパッケージ提出タスクを含み、第10個のタスクスライスは8個のパッケージ提出タスクを含む。
パッケージ提出タスクをスライスして抽出することで、大量のパッケージ提出タスクに対する密集的なスケジューリングを回避し、トラフィックのピークカットを効率的に行うため、本開示の実施例によるミニプログラムのバッチ処理方法は大量及び超大量のミニプログラムをバッチ処理することができる。
例示的に、タスク状態を処理中に更新する。理解すべきことは、開発者又は第三者サービスプロバイダはタスクラベルによりこのタスク状態を検索することができることである。
本開示の実施例において、ステップ103では、前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することは、仮想ミニプログラムパッケージコードを前記ターゲットテンプレートのコードにリンクすることと、前記パッケージ拡張情報を前記ターゲットテンプレートのパッケージ拡張情報として設定し又はデフォルトパッケージ拡張情報を使用することと、仮想ミニプログラムパッケージの基本情報を初期化することと、を含み、前記デフォルトパッケージ拡張情報は前回に使用されるパッケージ拡張情報である。
例示的に、現在の組のミニプログラムに新規な仮想ミニプログラムパッケージをバッチで生成し、仮想ミニプログラムパッケージのコードをターゲットテンプレートのコードにリンクし、ターゲットテンプレートと今回にアップロードしたパッケージ拡張情報を併合して新規な仮想パッケージのパッケージ拡張情報を生成する。
具体的には、各タスクスライスにおける10個のミニプログラムに対し、この10個のミニプログラム毎にそれぞれ仮想パッケージをバッチで作成する。仮想パッケージコードはターゲットテンプレートのコードにリンクされ、パッケージ拡張情報はデフォルトで前回のパッケージ拡張情報、すなわち、ソーステンプレートにおけるパッケージ拡張情報であり、又は今回に提出されたパッケージ拡張情報に合わせて、それをターゲットテンプレートのパッケージ拡張フィールドに設定する。
例示的に、タスク状態を開発中にマークする。
例示的に、現在の仮想ミニプログラムパッケージの基本情報の初期化について、その中の基本情報はミニプログラムの名前、ミニプログラムのlogo、主体情報などを含んでもよく、具体的には、主体情報は、個人、企業、メディア、政府機関などを含んでもよいが、これらに限定されない。
本開示の実施例において、ミニプログラムのバッチ処理方法は、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信した後に、ホストプログラムの要求情報を受信することと、前記要求情報に基づいて、前記ミニプログラムオンラインパッケージを走査することと、前記ホストプログラムが配置されているクライアントに前記ミニプログラムオンラインパッケージの情報を送信することと、を更に含んでもよい。
例示的に、ステップ104を実行した後、仮想ミニプログラムパッケージは既にミニプログラムオンラインパッケージに更新されて自動的に前記ミニプログラムオンラインパッケージを配信する。この時、ミニプログラムオンラインパッケージは既に準備され、ミニプログラムプラットフォームがホストプログラムの要求情報を受信した場合、ホストプログラムの要求情報に基づいて、現在のミニプログラムオンラインパッケージを走査する。そしてホストプログラムが配置されているクライアントにミニプログラムオンラインパッケージ情報を送信する。
本開示の実施例において、具体的な配信フローにおいて、前記ミニプログラムオンラインパッケージの情報は、前記ターゲットテンプレートにリンクされるソースコードアドレス、前記パッケージ拡張情報とミニプログラムの基本情報を含む。リンクされるターゲットテンプレートのソースコードアドレスはテンプレート、公共利用可能なコードライブラリフラグメント又は再利用可能なコードフラグメントのうちの少なくとも1種類にポインティングしてもよく、パッケージ拡張情報とミニプログラムの基本情報は前述した内容と同じで、ここで詳細な説明を省略する。
具体的には、ホストプログラムが配置されているクライアントはコンテンツ配信ネットワーク(CDN)により近くのテンプレートソースコードを引き取り、それをパッケージ拡張フィールド、ミニプログラムの基本情報と動的に併合し、最終的なパッケージを形成する。
例示的に、ホストプログラムが配置されているクライアントSDKソフトウェア開発キットは最終的なパッケージをロードして起動し、ミニプログラムは自主的に個別化された構成とデータを取得し、最終的にレンダリングと提示を完了する。
上記配信フローは更に、以下のように例示的に説明することができる。ユーザはある配信に成功したミニプログラムP1を開く。ホストプログラムはミニプログラム仮想パッケージ管理センターを要求する。ミニプログラム仮想パッケージ管理センターはバックグラウンドでミニプログラムパッケージ記録テーブルを検索し、ターゲットテンプレートのコードパッケージアドレス、パッケージ記録テーブルにおけるミニプログラムP1のパッケージ拡張情報及びミニプログラムP1の基本情報を配信する。更に、ホストプログラムは配信のアドレスに基づいて、コンテンツ配信ネットワーク(CDN)から近くのターゲットテンプレートコードを引き取り、パッケージ拡張情報とミニプログラムP1の基本情報とを併合して完全なパッケージを形成し、クライアントのSDKをロードした後にミニプログラムP1が起動に成功する。
以上のミニプログラムパッケージの配信フローから分かるように、ミニプログラム仮想パッケージにはターゲットテンプレートの具体的なコードを含まないが、リンクされるターゲットテンプレートソースコードアドレスを含み、この前のパッケージ提出と配信の際にターゲットテンプレートコードをコピーしないため、大量のミニプログラムパッケージの生成と配信が繰り返されても、パッケージ提出速度が低下することもなく、更に記憶量を減少させ、ダウンロード帯域幅及びコンテンツ配信ネットワーク(CDN)資源の占用を節約することができる。
本開示の実施例において、更に、パッチパッケージ提出の新規イベント確立した後、且つパッチパッケージ提出タスクを作成し、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成する前に、前記ソーステンプレート、前記ターゲットテンプレートと前記パッケージ拡張情報の有効性を決定して決定結果を取得することと、前記決定結果に基づいて、前記パッチパッケージ提出タスクを作成して前記パッケージ提出タスクの状態を更新することと、を含み。
本開示の実施例において、前記ソーステンプレート、前記ターゲットテンプレートと前記パッケージ拡張情報の有効性を決定して決定結果を取得することは、前記ソーステンプレートと前記ターゲットテンプレートの開発権限を決定することと、前記ソーステンプレートに関連する複数のミニプログラムの状態及び許可状態を決定することとを含む。
図2は本開示の第2例示的な実施例によるミニプログラムのバッチ処理方法の一部のステップを示すフローチャート200である。
図2に示すように、ステップ101でパッチパッケージ提出の新規イベントを確立した後、且つステップ102でパッチパッケージ提出タスクを作成し、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成する前に、更にステップ105、検証ステップを含む。
例示的に、ミニプログラムプラットフォームは、開発者又は第三者サービスプロバイダがソーステンプレート、ターゲットテンプレートに対していずれも開発権限を有するか否か、ソーステンプレート、ターゲットテンプレートがいずれも有効状態にあるか否か、パッケージ拡張情報が有効であるか否かなどを含むが、それらに限定されない開発者又は第三者サービスプロバイダの権限に対する検証を行う。
具体的には、検証の内容は例示的に図5に示すように、図5は本開示の例示的な実施例によるミニプログラムのバッチ処理システムを示すトポロジーグラフである。
検証の内容はテンプレート権限制御、テンプレート有効性検証とミニプログラム許可検証を含む。具体的には、テンプレート権限制御について、ミニプログラムプラットフォームは開発者又は第三者サービスプロバイダがソーステンプレート、ターゲットテンプレートに対していずれも開発権限を有するか否かを検査し、テンプレート有効性検証について、ミニプログラムプラットフォームはソーステンプレート、ターゲットテンプレート状態が有効であるか否かを検査し、ミニプログラム許可検証について、プラットフォームはソーステンプレートにおいて関連するミニプログラムを走査し、ミニプログラムの有効性及び許可状態を検証する。
具体的には、図2に示すように、開発権限、有効性はいずれも条件を満足した後、検証に合格し、続けてステップ102を実行してパッチパッケージ提出タスクを作成し、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成する。
いずれか1つの検証条件を満たさない場合、タスクの作成に失敗し、パッケージ提出のジョブキューを更新し、作成に失敗したミニプログラムパッケージ提出タスクを再びパッケージ提出ジョブキューに入れない。
本開示の実施例において、前記の前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することは、第1回の仮想ミニプログラムパッケージの作成に成功したか否かを確認することと、第1回の仮想ミニプログラムパッケージの作成に失敗した場合、第2回の仮想ミニプログラムパッケージの作成を実行することと、第2回の仮想ミニプログラムパッケージの作成に失敗した場合、対応的に前記パッケージ提出ジョブキューを更新し、作成失敗メッセージをプッシュすることとを更に含む。
図3は本開示の第3例示的な実施例によるミニプログラムのバッチ処理方法の一部のステップを示すフローチャート300である。図3に示すように、ステップ103は更に、判断ステップ1032と判断ステップ1033を含んでもよい。判断ステップ1032はステップ1031で作成された仮想ミニプログラムパッケージの作成に成功するか否かを判断するために用いられ、すなわち、第1回の仮想ミニプログラムパッケージの作成に成功したか否かを確認する。第1回の作成に成功した場合、後続ステップ、例えば、ステップ104を続けて実行し、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信する。第1回の仮想ミニプログラムパッケージの作成に失敗した場合、作成に失敗したミニプログラムを、改めてパッケージ提出ジョブキューに入れ、第2回の仮想ミニプログラムパッケージの作成を実行する(図示せず)。判断ステップ1033は第2回の仮想ミニプログラムパッケージの作成に成功するか否かを判断するために用いられる。第2回の仮想ミニプログラムパッケージの作成に失敗した場合、対応的に前記パッケージ提出ジョブキューを更新し、作成失敗メッセージをプッシュする。例えば、開発者又は第三者サービスプロバイダに作成失敗メッセージをプッシュする。開発者又は第三者サービスプロバイダにプッシュした作成失敗メッセージは仮想パッケージの作成に失敗した具体的な原因を含む。
本開示の実施例において、ミニプログラムのバッチ処理方法は前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信する前に、前記仮想ミニプログラムパッケージの審査情報を受信することと、前記審査情報を審査して審査結果を得ることと、前記審査結果に基づいて、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信することと、を更に含んでもよい。
図4は本開示の第4例示的な実施例によるミニプログラムのバッチ処理方法の一部のステップを示すフローチャート400である。例示的に、図4に示すように、ステップ104の前において、審査ステップ106を更に含み、ステップ103で作成に成功した仮想パッケージを審査する。
具体的には、審査結果は合格である場合、ステップ103で作成に成功した仮想ミニプログラムパッケージに対してステップ104を実行する。
本開示の実施例において、図4に示すように、前記審査結果は不合格である場合、審査不合格メッセージをプッシュして前記パッケージ提出ジョブキューを更新する。
本開示の実施例において、前記審査情報は前記仮想ミニプログラムパッケージの主体情報を含み、前記審査情報を審査することは前記主体情報に対するコンプライアンス審査を行うことを含む。例えば、ミニプログラムの基本情報、主体認証情報、ターゲットテンプレートコード、パッケージ拡張情報を審査する。
例えば、幾つかのミニプログラムプラットフォームでは個人開発者向けのミニプログラム開発が行われず、開発者は個人である場合、その主体情報は審査ステップ106に合格することができない。
例えば、審査ステップは更に、営業許可証情報、法人主体真正性などに対する審査を行うことを含んでもよい。
例示的に、審査は機械による審査と人手による審査に分けられてよい。例えば、多くのミニプログラムに対して、一般的に機械による審査が行われ、特殊な主体、特殊な内容又は特殊な業界のミニプログラムに関する場合、一般的に人手による審査を行う必要がある。例示的に、人手による審査を行う場合、審査プラットフォームでホストプログラムをシミュレーションし、ターゲットテンプレートのコード、パッケージ拡張情報及びミニプログラムの基本情報を併合し、ミニプログラムの運転をシミュレーションすることによって、関連する審査を完了する。
審査ステップ106は例示的に図5においてコードパッケージ審査を示し、審査に合格した後、ステップ104に入り、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信し、審査に不合格した場合、審査不合格メッセージをプッシュして前記パッケージ提出ジョブキューを更新する。
本開示の実施例において、ミニプログラムのバッチ処理方法は自動的に前記ミニプログラムオンラインパッケージを配信した後、配信成功メッセージをプッシュして前記パッケージ提出ジョブキューを更新することを更に含んでもよい。
例示的に、図4に示すように、ステップ104の後に、配信成功メッセージをプッシュしてパッケージ提出ジョブキューを更新する。
本開示の実施例において、前記作成失敗メッセージ、前記審査不合格メッセージと前記配信成功メッセージに基づいて、ミニプログラムのバッチ処理の状態を更新する。
例示的に、ステップ103で発生する仮想パッケージ作成失敗情報、ステップ106で発生する審査不合格メッセージ及びステップ104のミニプログラムパッケージ配信に成功したメッセージは、いずれもミニプログラムのバッチ処理状態に影響を与え、その状態を更新する。
例示的に、図5に示すように、メッセージをプッシュする供給源は、パッケージ提出失敗処理、コードパッケージ審査とコードパッケージ配信という3つのものがある。
パッケージ提出失敗の処理は仮想パッケージ作成リトライ失敗のメッセージに基づいて、パッケージ提出失敗メッセージを送信し、コードパッケージ審査は生成された仮想パッケージ審査に不合格したメッセージに基づいて、審査不合格メッセージを送信し、コードパッケージを配信して仮想パッケージに基づいてオンラインにしてミニプログラムオンラインパッケージとして配信し、配信結果メッセージを送信する。
図5は本開示の他の例示的な実施例によるミニプログラムのバッチ処理システムを示すトポロジーグラフである。
以下、図5に示すように、本開示の実施例を説明する。
本開示の実施例において、仮に第三者サービスプロバイダであるTPサービスプロバイダは、テンプレートAに基づいて10個のミニプログラムを開発し、またテンプレートBに基づいて2個のミニプログラムを開発する。後期運営を経てから分かるように、テンプレートBの効果がより良く、そこで、TPサービスプロバイダは全てのミニプログラムをテンプレートBにアップグレードする。
この実施例において、ステップ102、ステップ103、ステップ104及び端末ステップを含む。
ステップ102は、TPサービスプロバイダはミニプログラムプラットフォームに、ソーステンプレート(テンプレートA)、ターゲットテンプレート(テンプレートB)とパッケージ拡張情報を提出することを含む。
その後、テンプレート権限制御、テンプレート有効性検証、テンプレートミニプログラム解析及びミニプログラム許可検証を行う。
具体的には、ミニプログラムプラットフォームは、サービスプロバイダはテンプレートA、テンプレートBに対していずれも開発権限を有するか否か及びテンプレート状態が有効であるか否かを検査する。ソーステンプレートにおいて関連するミニプログラムを走査し、ミニプログラムの有効性及び許可状態を検証し、有効なミニプログラム10個を取得する。
上記検証ステップを行った後、パッチパッケージ提出タスクを作成し、パッチパッケージ提出タスクテーブルを生成する。
具体的には、タスクラベル(ID)、ソーステンプレートA、ターゲットテンプレートB、処理すべき10個のミニプログラムなどを含むパッチパッケージ提出タスクを新規作成し、タスクが新規作成状態である。TPサービスプロバイダに同期にタスク詳細を返す。その後、TPサービスプロバイダはタスクラベル(ID)に基づいて、タスク処理進捗を主動的に検索してよい。
且つ、タスクを非同期に開放する。ソーステンプレートにおいて関連するパッケージ提出待ちのミニプログラム情報をパッケージ提出のジョブキューに添加し、次のステップにイベントをプッシュする。新タスク処理待ちを有する。
ステップ103に入り、ステップ103は、
タスクラベル(ID)に基づいて、このタスクのパッケージ提出ジョブキューから、一定のスライス規則(例えば、10個が1組とし)に応じて、ミニプログラムを取り出すことを含む。タスク状態を処理中に更新する。
各バッチ毎に10個のミニプログラムに対し、ミニプログラムパッケージ記録テーブルにおいて、バッチでこの10個のミニプログラムにそれぞれ仮想パッケージを作成する。パッケージコードはテンプレートBのコードにリンクされ、パッケージ拡張フィールドはデフォルトで前回又は今回に提出された内容に合わせて決定してよく、テンプレートBの拡張フィールドとして設定され、タスク状態を開発中とマークし及び現在のミニプログラムパッケージの基本情報を初期化する。
6個のミニプログラム仮想パッケージの生成に成功する場合、他の4個の失敗したものを改めてジョブキューに入れる。リトライしても依然として失敗する場合、パッチパッケージ提出タスク失敗数をパッチパッケージ提出タスク失敗数+4に更新し、同時にサービスプロバイダにこの4つのミニプログラムコードの生成失敗の具体的な原因をプッシュする。
コードパッケージが生成された6個のミニプログラムに対して、ミニプログラムの基本情報、主体情報、テンプレートBコードを審査プラットフォームにプッシュし、基本情報及び主体真正性の審査を行う。
ステップ104に入り、ステップ104は、審査プラットフォームのメッセージをサブスクライブし、ミニプログラムラベル(ID)とコードパッケージラベル(ID)によって、審査に提出した6個のミニプログラムの審査結果をフィルタリングすることを含む。2個の審査結果が不合格である場合、パッチパッケージ提出タスク失敗数をパッチパッケージ提出タスク失敗数+2に更新し、同時にサービスプロバイダにこの2つのミニプログラムコード審査不合格の具体的な原因をプッシュする。審査結果が合格である4個のミニプログラムに対して、コードパッケージの自動的な配信を行う。
ミニプログラムコードの配信結果に応じて、1個の配信が失敗である場合、パッチパッケージ提出タスク失敗数をパッチパッケージ提出タスク失敗数+1にして、サービスプロバイダにこの1個のミニプログラム配信失敗メッセージをプッシュする。配信に成功した3個のミニプログラムに対し、タスク状態をオンライン状態に更新し、パッチパッケージ提出タスク成功数をパッチパッケージ提出タスク成功数+3にして、サービスプロバイダにこの3つのミニプログラム配信成功メッセージをプッシュする。
グローバル非同期スクリプトに基づいて、配信成功(3)+コードパッケージ生成失敗(4)+審査不合格(2)+配信失敗(1)=タスクに含まれるミニプログラムの全体数(10)であり、タスク状態を完成済みに更新する。
更に、更にミニプログラムの配信過程を含み、端末ステップ、端末動的な及び併合レンダリングを含む。
ユーザはある配信に成功したミニプログラムP1を起動する。ホストプログラムはミニプログラム仮想パッケージ管理センターを要求する。
ミニプログラム仮想パッケージ管理センターは、バックグラウンドにおいてミニプログラム仮想パッケージ記録テーブルを検索し、テンプレートBのコードパッケージアドレス、仮想パッケージ記録テーブルにおけるミニプログラムP1のパッケージ拡張情報及びミニプログラムP1の基本情報を配信する。
ホストプログラムは更に配信するアドレスに基づいて、最寄りからコンテンツ配信ネットワーク(CDN)からテンプレートコードを取り出し、パッケージ拡張情報、ミニプログラムP1の基本情報を併合して完全なミニプログラムコードを形成し、クライアントSDKソフトウェア開発キットは最終的なパッケージをロードして起動し、ミニプログラムP1は自主的に個別化された構成とデータを取得し、最終的にレンダリングと提示を完了する。
そのため、本開示の実施例において、ミニプログラムパッチパッケージ提出オンライン、メッセージ通知フローは非同期化され、各ステップは結果を提供し、密集的なスケジューリングに対するトラフィックのピークカットを効率的に行い、理論上では、パッケージ提出の持続時間、パッケージ提出数に対していずれも制限しない。且つミニプログラム仮想パッケージの形式を用いるため、パッケージ提出と配信段階において直接的に完全なコードパッケージを生成しない。直接的に元のパッケージ情報をダウンロードし、ホストプログラムはCDN(コンテンツ配信ネットワーク)からテンプレートソースコードを取り出してローカルでパッケージ拡張情報を併合し、動的なレンダリングを行う。ミニプログラムをバッチ処理する過程に、パッケージ提出、配信などの処理ステップのコードの繰り返しコピーを減少させ、クラウドとCDNステップのパッケージの記憶とダウンロード帯域幅を節約し、パッチパッケージ提出、配信及び配信の効率を効率的に向上させ、大幅にミニプログラムバッチ処理の効率を向上させる。
上述した幾つかの実施例によるミニプログラムのバッチ処理方法に対応し、本開示の一実施例は更に、ミニプログラムのバッチ処理装置を提供し、本開示の実施例によるミニプログラムのバッチ処理装置は上記幾つかの実施例によるミニプログラムのバッチ処理方法に対応するため、前記ミニプログラムのバッチ処理方法の実施形態も本実施例によるミニプログラムのバッチ処理装置に適用され、本実施例において詳細な説明を省略する。図6は本開示の一実施例によるミニプログラムのバッチ処理装置の構成図である。図6に示すように、このミニプログラムのバッチ処理装置600は、確立モジュール610、パッチパッケージ提出タスク作成モジュール620、仮想パッケージ作成モジュール630と更新配信モジュール640を含んでもよい。具体的には、パッチパッケージ提出の新規イベントを確立するように構成される確立モジュール610と、前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成し、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成するように構成されるパッチパッケージ提出タスク作成モジュール620と、前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成するように構成される仮想パッケージ作成モジュール630と、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信するように構成される更新配信モジュール640と、を含む。
本開示の実施例に基づいて、本開示は電子機器を更に提供し、この電子機器は、プロセッサと、命令を含むプログラムが記憶されるメモリと、を含み、前記命令は前記プロセッサによって実行されると、前記プロセッサに以上に記載のミニプログラムのバッチ処理方法を実行させる。
本開示の実施例に基づいて、命令を含むプログラムが記憶されるコンピュータ可読記憶媒体を更に、提供し、前記命令は電子機器のプロセッサによって実行されると、前記電子機器に以上に記載のミニプログラムのバッチ処理方法を実行させる。
図7は本開示の実施例によるミニプログラムのバッチ処理方法を実現する電子機器のブロック図である。電子機器は、様々な形態のデジタルコンピュータ、例えば、ラップトップ型コンピュータ、デスクトップ型コンピュータ、ステージ、個人用デジタル補助装置、サーバ、ブレードサーバ、大型コンピュータ、その他の適切なコンピュータを示す。電子機器は更に、様々な形態の移動装置、例えば、個人デジタル処理、携帯電話、スマートフォン、着用可能な装置とその他の類似する計算装置を示してよい。本明細書に示される部品、これらの接続関係及びこれらの機能は例示的なものに過ぎず、本明細書に説明した及び/又は請求した本開示の実現を制限しない。
図7に示すように、この電子機器700は、1つ又は複数のプロセッサ701と、メモリ702と、高速インターフェースと低速インターフェースを含む各部品を接続するインターフェースと、を含む。各部品は、異なるバスで相互に接続され、共通のマザーボードに実装したり、必要に応じて他の方式で実装したりすることができる。プロセッサは、電子機器内で実行する命令を処理してもよく、該命令は、メモリ内またはメモリ上に格納されてGUIのグラフィックス情報を外部入出力装置(例えば、インターフェースに接続された表示装置など)に表示するための命令を含む。その他の実施形態において、必要に応じて、複数のプロセッサ及び/又は複数のバスを、複数のメモリと複数のメモリと共に使用してよい。同様に、複数の電子機器が接続されてもよく、各機器が部分的に必要な動作(例えば、サーバアレイ、ブレードサーバセット、あるいはマルチプロセッサシステム)を提供する。図7において1つのプロセッサ701を例とする。
メモリ702は本開示による非一時的コンピュータ可読記憶媒体である。前記メモリには少なくとも1つのプロセッサによって実行可能な命令が記憶され、よって前記少なくとも1つのプロセッサは本開示によるミニプログラムのバッチ処理方法を実行する。本開示の非一時的コンピュータ可読記憶媒体はコンピュータ命令を記憶し、このコンピュータ命令によってコンピュータが本開示によるミニプログラムのバッチ処理方法を実行する。
メモリ702は非一時的コンピュータ可読記憶媒体として、非一時的ソフトウェアプログラム、非一時的コンピュータ実行可能なプログラム及びモジュール、例えば、本開示の実施例によるミニプログラムのバッチ処理方法に対応するプログラム命令/モジュール(例えば、図6に示すような確立モジュール610、パッチパッケージ提出タスク作成モジュール620、仮想パッケージ作成モジュール630と更新配信モジュール640)を記憶するために用いられてよい。プロセッサ701は、メモリ702に記憶される非一時的ソフトウェアプログラム、命令及びモジュールを運転することで、サーバの様々な機能アプリケーション及びデータ処理を実行し、すなわち、上記方法実施例のミニプログラムのバッチ処理方法を実現する。
メモリ702は、オペレーティングシステム、少なくとも1つの機能に必要なアプリケーションプログラムを記憶可能なプログラム記憶領域と、データ記憶領域とを含んでもよい。データ記憶領域はミニプログラムのバッチ処理方法を実現するための電子機器の使用に基づいて作成されるデータなどを記憶してよい。また、メモリ702は高速ランダム・アクセス・メモリであってもよいし、更に例えば、少なくとも1つの磁気ディスクメモリ、フラッシュメモリデバイス、又は他の非一時的ソリッドステートメモリなどの非一時的メモリであってもよい。一部の実施例において、メモリ702は、プロセッサ701に対して遠隔に設置されるメモリを含むことが好ましく、これらのリモートメモリはネットワークを介してミニプログラムのバッチ処理方法を実現するための電子機器に接続されてよい。上記ネットワークの実施例は、インターネット、企業イントラネット、ローカルエリアネットワーク、移動通信ネットワーク及びその組み合わせを含むが、それらに限定されない。
ミニプログラムのバッチ処理方法を実現するための電子機器700は、入力装置703と出力装置704を更に含んでもよい。プロセッサ701、メモリ702、入力装置703と出力装置704はバス又は他の方式で接続されてよく、図7においてバスで接続されるものを例とする。
入力装置703は、入力された数字や文字情報を受信でき、ミニプログラムのバッチ処理方法を実現するための電子機器のユーザ設定及び機能制御に関するキー信号入力を生成でき、例えば、タッチスクリーン、キーパッド、マウス、トラックパッド、タッチパット、指示レバー、1つ又は複数のマウスボタン、トラックボール、操作レバーなどの入力装置である。出力装置704は表示装置、補助照明装置(例えば、LED)と触覚フィードバック装置(例えば、振動モータ)などを含んでもよい。この表示装置は、液晶ディスプレイ(LCD)、発光ダイオード(LED)ディスプレイとプラズマディスプレイを含んでもよいが、それらに限定されない。幾つかの実施形態において、表示装置はタッチスクリーンであってもよい。
ここで説明したシステムと技術の様々な実施形態はデジタル電子回路システム、集積回路システム、専用ASIC(特定用途向け集積回路)、コンピュータハードウェア、ファームウェア、ソフトウェア及び/又はこれらの組み合わせで実現されてもよい。これらの様々な実施形態は、1つ又は複数のコンピュータプログラムに実施され、この1つ又は複数のコンピュータプログラムは少なくとも1つのプログラマブルプロセッサを含むプログラマブルシステムで実行したり解釈したりしてもよく、このプログラマブルプロセッサは専用又は汎用プログラマブルプロセッサであってもよく、記憶システム、少なくとも1つの入力装置、少なくとも1つの出力装置からデータと命令を受信し、データと命令をこの記憶システム、この少なくとも1つの入力装置、この少なくとも1つの出力装置に送信してよいこと、を含んでもよい。
これらの計算プログラム(プログラム、ソフトウェア、ソフトウェアアプリケーション、又はコードとも称される)はプログラマブルプロセッサの機械命令を含み、高級過程及び/又はオブジェクト指向のプログラミング言語及び/又はアセンブラ/機械言語でこれらの計算プログラムを実施することができる。例えば、本明細書に使用される用語「機械可読媒体」と「コンピュータ可読媒体」とは機械命令及び/又はデータをプログラマブルプロセッサのいかなるコンピュータプログラム製品、機器及び/又は装置(例えば、磁気ディスク、光ディスク、メモリ、プログラマブル論理装置(PLD))に供給するためのものであり、機械可読信号である機械命令を受信する機械可読媒体を含む。用語「機械可読信号」とは、機械命令及び/又はデータをプログラマブルプロセッサに供給するためのいかなる信号である。
ユーザとのインタラクションを提供するために、コンピュータにはここで説明したシステムと技術を実施してよく、このコンピュータは、ユーザに情報を表示する表示装置(例えば、CRT(陰極線管)又はLCD(液晶ディスプレイ)監視モニタ)及びキーボードとポインティング装置(例えば、マウスやトラックボール)を備え、ユーザはこのキーボードとこのポインティング装置を介してコンピュータに入力してよい。その他の種類の装置は更に、ユーザとのインタラクションを提供してよい。例えば、ユーザに提供するフィードバックはいかなる形態の感覚フィードバック(例えば、視覚フィードバック、聴覚フィードバック、又は触覚フィードバック)であってもよく、いかなる形態(音入力、音声入力、又は触覚入力を含む)でユーザからの入力を受信してよい。
ここで説明したシステムと技術を、バックグラウンド部品を含むコンピューティングシステム(例えば、データサーバ)や、ミドルウェア部品を含むコンピューティングシステム(例えば、アプリケーションサーバ)や、フロントエンド部品を含むコンピューティングシステム(例えば、図形ユーザインターフェース又はネットワークブラウザを有するユーザコンピュータ、ユーザはこの図形ユーザインターフェース又はこのネットワークブラウザによって、ここで説明したシステムと技術との実施形態のインタラクション)や、このようなバックグラウンド部品、ミドルウェア部品、又はフロントエンド部品を含むいかなる組み合わせのコンピューティングシステムに実施してよい。いかなる形態又は媒体によるデジタルデータ通信(例えば、通信ネットワーク)によってシステムの部品を相互に接続させてよい。通信ネットワークの一例は、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)とインターネットを含む。
コンピュータシステムは、クライアントとサーバを含んでもよい。クライアントとサーバは、一般的に相互に遠く離れ、通常、通信ネットワークを介してインタラクションを行う。互にクライアント-サーバという関係を有するコンピュータプログラムを対応するコンピュータで実行することによってクライアントとサーバの関係を生成する。
理解すべきことは、前述した様々な形態のフローを用いて、改めて順位付け、ステップを増加又削除してよいことである。例えば、本開示に記載の各ステップは、並列に実行されてもよく、順番で実行されてもよく、異なる順序で実行されてもよく、本開示に開示された技術的解決手段の所望の結果を実現することができれば、本明細書は、ここで制限しない。
上述した実施形態は、本開示特許請求の範囲を限定するものではない。当業者が理解すべきことは、設計要求と他の要因に基づいて、様々な修正、組み合わせ、一部の組み合わせと代替を行うことができることである。本開示における精神および原則から逸脱することなく行われるいかなる修正、同等物による置換や改良等などは、いずれも本開示の保護範囲に含まれるものである。

Claims (18)

  1. ミニプログラムのバッチ処理方法であって、
    パッチパッケージ提出の新規イベントを確立することと、
    前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成することと、
    前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することと、
    前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信することとを含む、ミニプログラムのバッチ処理方法。
  2. 前記のパッチパッケージ提出の新規イベントを確立することは、
    ソーステンプレート、ターゲットテンプレートとパッケージ拡張情報を受信することと、
    ソーステンプレートに関連する複数のミニプログラムに対してパッチパッケージ提出の新規イベントを確立することとを含む、請求項1に記載の方法。
  3. 前記のパッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成することは、
    前記ソーステンプレートに関連する複数のミニプログラムを解析し、前記ソーステンプレートに関連する複数のミニプログラムにおける各ミニプログラムの関連情報をパッケージ提出ジョブキューに添加し、タスクラベルで今回のパッチパッケージ提出タスクの情報を返すことを含む、請求項2に記載の方法。
  4. 前記第1の数はスライス規則に基づいて決定されたものであり、且つ
    前記スライス規則は前記パッケージ提出ジョブキューにスライスを行うことでN個のタスクスライスを形成し、前記N個のタスクスライスの前のN-1のタスクスライスはいずれも第1の数のミニプログラムパッケージ提出タスクを含む、請求項1に記載の方法。
  5. 前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することは、
    仮想ミニプログラムパッケージコードを前記ターゲットテンプレートのコードにリンクすることと、
    前記パッケージ拡張情報を前記ターゲットテンプレートのパッケージ拡張情報として設定し、或いはデフォルトパッケージ拡張情報を使用することと、
    前記仮想ミニプログラムパッケージの基本情報を初期化することと、を含み、
    前記デフォルトパッケージ拡張情報は前回に使用されたパッケージ拡張情報である、請求項2に記載の方法。
  6. 前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信した後に、
    ホストプログラムの要求情報を受信することと、
    前記要求情報に基づいて、前記ミニプログラムオンラインパッケージを走査することと、
    前記ホストプログラムが配置されているクライアントに前記ミニプログラムオンラインパッケージの情報を送信することとを更に含む、請求項5に記載の方法。
  7. 前記ミニプログラムオンラインパッケージの情報は、前記ターゲットテンプレートにリンクされるソースコードアドレス、前記パッケージ拡張情報およびミニプログラムの基本情報を含む、請求項6に記載の方法。
  8. パッチパッケージ提出の新規イベントを確立した後、且つパッチパッケージ提出タスクを作成して複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成する前に、
    前記ソーステンプレート、前記ターゲットテンプレート及び前記パッケージ拡張情報の有効性を決定して決定結果を取得することと、
    前記決定結果に基づいて、前記パッチパッケージ提出タスクを作成して前記パッケージ提出タスクの状態を更新することとを更に含む、請求項2に記載の方法。
  9. 前記ソーステンプレート、前記ターゲットテンプレート及び前記パッケージ拡張情報の有効性を決定して決定結果を取得することは、
    前記ソーステンプレートと前記ターゲットテンプレートの開発権限を決定することと、
    前記ソーステンプレートに関連する複数のミニプログラムの状態及び許可状態を決定することとを含む、請求項8に記載の方法。
  10. 前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成することは、
    第1回の仮想ミニプログラムパッケージの作成に成功したか否かを確認することと、
    第1回の仮想ミニプログラムパッケージの作成が失敗した場合、第2回の仮想ミニプログラムパッケージの作成を実行することと、
    第2回の仮想ミニプログラムパッケージの作成が失敗した場合、対応的に前記パッケージ提出ジョブキューを更新し、作成失敗メッセージをプッシュすることとを更に含む、請求項5に記載の方法。
  11. 前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信する前に、
    前記仮想ミニプログラムパッケージの審査情報を受信することと、
    前記審査情報を審査して審査結果を得ることと、
    前記審査結果に基づいて、前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信することとを更に含む、請求項10に記載の方法。
  12. 前記審査結果は不合格である場合、審査不合格メッセージをプッシュして前記パッケージ提出ジョブキューを更新する、請求項11に記載の方法。
  13. 前記審査情報は前記仮想ミニプログラムパッケージの主体情報を含み、
    前記審査情報を審査することは前記主体情報に対するコンプライアンス審査を行うことを含む、請求項11に記載の方法。
  14. 前記自動的に前記ミニプログラムオンラインパッケージを配信した後、配信成功メッセージをプッシュして前記パッケージ提出ジョブキューを更新することを更に含む、請求項12に記載の方法。
  15. 前記作成失敗メッセージ、前記審査不合格メッセージ及び前記配信成功メッセージに基づいて、ミニプログラムのバッチ処理の状態を更新することを更に含む、請求項14に記載の方法。
  16. ミニプログラムのバッチ処理装置であって、
    パッチパッケージ提出の新規イベントを確立する確立モジュールと、
    前記パッチパッケージ提出の新規イベントに応答して、パッチパッケージ提出タスクを作成して、複数のミニプログラムパッケージ提出タスクを含むパッケージ提出ジョブキューを生成するパッチパッケージ提出タスク作成モジュールと、
    前記パッケージ提出ジョブキューから第1の数のミニプログラムパッケージ提出タスクを取り出し、前記第1の数のミニプログラムパッケージ提出タスクにおける各パッケージ提出タスク毎に、仮想ミニプログラムパッケージを作成する仮想パッケージ作成モジュールと、
    前記仮想ミニプログラムパッケージをミニプログラムオンラインパッケージに更新して自動的に前記ミニプログラムオンラインパッケージを配信する更新配信モジュールとを含む、ミニプログラムのバッチ処理装置。
  17. 電子機器であって、
    プロセッサと、
    前記プロセッサによって実行されると、前記プロセッサに請求項1~15のいずれか一項に記載の方法を実行させる命令を含むプログラムが記憶されたメモリとを含む電子機器。
  18. 電子機器のプロセッサによって実行されると、前記電子機器に請求項1~15のいずれか一項に記載の方法を実行させる命令を含むプログラムが記憶されたコンピュータ可読記憶媒体。
JP2021544309A 2020-06-28 2020-10-21 ミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体 Pending JP2022542203A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN202010600458.6A CN111752587B (zh) 2020-06-28 小程序的批量处理方法、装置、电子设备以及可读存储介质
CN202010600458.6 2020-06-28
PCT/CN2020/122315 WO2022000869A1 (zh) 2020-06-28 2020-10-21 小程序的批量处理方法、装置、电子设备以及可读存储介质

Publications (1)

Publication Number Publication Date
JP2022542203A true JP2022542203A (ja) 2022-09-30

Family

ID=77145723

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021544309A Pending JP2022542203A (ja) 2020-06-28 2020-10-21 ミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体

Country Status (4)

Country Link
US (1) US20220012050A1 (ja)
EP (1) EP3958115A4 (ja)
JP (1) JP2022542203A (ja)
KR (1) KR20210091327A (ja)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113542429B (zh) * 2021-07-29 2023-09-01 北京百度网讯科技有限公司 一种平台入驻处理方法、装置、设备和介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015831A1 (en) * 2001-01-31 2004-01-22 Bowhill Allan J.C. Method and apparatus for building software packages
US20190310835A1 (en) * 2017-03-28 2019-10-10 Tencent Technology (Shenzhen) Company Limited Application development method, tool, and device, and storage medium
US20200143051A1 (en) * 2017-10-09 2020-05-07 Alibaba Group Holding Limited Security scanning method and apparatus for mini program, and electronic device
CN111338684A (zh) * 2020-03-20 2020-06-26 成都药王科技股份有限公司 一种程序发布方法

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103092575A (zh) * 2011-10-28 2013-05-08 谷歌公司 生成小工具应用的方法和系统
US10705823B2 (en) * 2017-09-29 2020-07-07 Oracle International Corporation Application templates and upgrade framework for a multi-tenant identity cloud service
CN112230914B (zh) * 2019-07-15 2023-09-15 腾讯科技(深圳)有限公司 小程序的制作方法、装置、终端及存储介质
CN112230909B (zh) * 2019-07-15 2023-05-23 腾讯科技(深圳)有限公司 小程序的数据绑定方法、装置、设备及存储介质

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040015831A1 (en) * 2001-01-31 2004-01-22 Bowhill Allan J.C. Method and apparatus for building software packages
US20190310835A1 (en) * 2017-03-28 2019-10-10 Tencent Technology (Shenzhen) Company Limited Application development method, tool, and device, and storage medium
US20200143051A1 (en) * 2017-10-09 2020-05-07 Alibaba Group Holding Limited Security scanning method and apparatus for mini program, and electronic device
CN111338684A (zh) * 2020-03-20 2020-06-26 成都药王科技股份有限公司 一种程序发布方法

Also Published As

Publication number Publication date
EP3958115A1 (en) 2022-02-23
KR20210091327A (ko) 2021-07-21
EP3958115A4 (en) 2022-05-04
US20220012050A1 (en) 2022-01-13

Similar Documents

Publication Publication Date Title
US11036696B2 (en) Resource allocation for database provisioning
CN112753019A (zh) 按需代码执行系统中执行环境的有效状态维持
US11403117B2 (en) Methods for processing mini program, and related devices
WO2022073354A1 (zh) 业务审核通知方法及网关、电子设备、可读介质
WO2019201039A1 (zh) 一种更新应用程序的方法、系统及应用服务器
CN110825479A (zh) 页面处理方法、装置、终端设备、服务器和存储介质
US9590859B2 (en) Discovering resources of a distributed computing environment
US11615159B2 (en) Data processing method for mini app, apparatus, device and medium
CN111459813B (zh) 测试处理方法及装置
CN111859223A (zh) 一种基于移动中台的网页数据调取方法、装置和存储介质
CN110928571A (zh) 业务程序开发方法和装置
CN111694620A (zh) 第三方业务的交互方法、装置、设备及计算机存储介质
JP2023552651A (ja) ブロックチェーンに基づくデータ処理方法および装置
CN113485927A (zh) 一种测试数据生成方法、装置、设备及存储介质
JP2022542203A (ja) ミニプログラムのバッチ処理方法、装置、電子機器及び可読記憶媒体
WO2022000869A1 (zh) 小程序的批量处理方法、装置、电子设备以及可读存储介质
WO2023169193A1 (zh) 用于生成智能合约的方法和装置
CN111414154A (zh) 前端开发的方法、装置、电子设备和存储介质
CN115248680A (zh) 软件构建方法、系统、设备、介质和程序产品
CN113918525A (zh) 数据交换调度方法、系统、电子设备、介质及程序产品
CN113596164A (zh) 数据访问方法、装置、系统、设备和介质
CN114489674A (zh) 动态数据模型的数据校验方法和装置
CN112783903B (zh) 生成更新日志的方法和装置
CN113779122A (zh) 导出数据的方法和装置
CN112667441A (zh) 基于容错功能的业务模块调度方法、系统及存储介质

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210729

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20210729

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20221004

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20221228

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20230221

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20230919