Dieser Artikel bringt Ihnen Optimierungsneuigkeiten zum Limit von 10 gleichzeitigen Anfragen des WeChat-Applets! ! ! Es hat einen gewissen Referenzwert. Freunde in Not können sich darauf beziehen. Ich hoffe, es wird Ihnen hilfreich sein.
Das sind vielleicht kalte Neuigkeiten, deshalb ist der Titel spannender.
Das Parallelitätslimit für Miniprogramme gibt es schon seit langem, von 5 Parallelität bei der ersten Veröffentlichung bis hin zu 10 Parallelität später. Wenn die Anzahl gleichzeitiger Anfragen dieses Limit überschreitet, wird es grausam aufgegeben Viele Entwickler haben in ihren Projekten „Request-Queuing“-Räder eingebaut. Tatsächlich wurde diese Einschränkung jedoch bereits vor anderthalb Jahren von WeChat offiziell aufgehoben.
Parallelitätslimit von 10 Anfragen
Bezüglich des Parallelitätslimits heißt es in der WeChat-Entwicklerdokumentation:
Diese Einschränkung bedeutet, dass die Gesamtzahl gleichzeitiger wx.request, wx.uploadFile und wx.downloadFile 10 nicht überschreiten darf.
Bis heute halten sich viele Entwickler an diese Regel.
Viele Menschen achten beim Verfassen von Geschäften sorgfältig auf die Anzahl der Anfragen. Um die Anzahl der Anforderungen zu steuern, werden einige parallele Anforderungen speziell in seriell geändert oder eine Anforderungswarteschlange eingeführt, um Miniprogrammanforderungen zu verwalten.
Die Anstrengungen, die diese leitenden Entwickler unternommen haben, um diese Regel einzuhalten, spiegeln in gewisser Weise ihre Hilflosigkeit in den Anfangsjahren wider, als sie darum baten, grausam im Stich gelassen zu werden, nachdem der Betrag überschritten wurde.
Anbei ist der Konsolenfehler der Miniprogramm-Basisbibliothek Version 1.3.0:
Bis heute gibt es noch Entwickler Erörterung von Methoden zur Lösung des Parallelitätslimits von Miniprogrammen
Ignorierte Nachrichten
Tatsächlich hat WeChat dies im Juli 2017 beim Versions-Upgrade der Basisbibliothek 1.4.0 durchgeführt. Optimiert, Anfragen, die das Parallelitätslimit überschreiten, werden in die Warteschlange gestellt, aber viele Entwickler sind sich dieser Neuigkeiten nicht bewusst.
Genau genommen hebt diese Optimierung die ursprünglichen Parallelitätsbeschränkungen nicht vollständig auf. Die aktuelle Obergrenze für die gleichzeitige Verarbeitung von Anfragen liegt weiterhin bei 10, aber Anfragen über 10 werden in die Warteschlange gestellt. Wenn eine vorherige Anfrage abgeschlossen ist, werden die Anfragen in der Warteschlange der Reihe nach gesendet und verarbeitet. * Wird 10 nicht direkt überschreiten vorher Die Anfrage wird verworfen.
Änderungsprotokoll der Anhangs-Applet-Grundbibliothek 1.4.0 (Teil):
Jetzt können wir endlich das Anforderungs-Parallelitätslimit ignorieren , schickte die Anfrage gerne ab. Schließlich können alle Anfragen gesendet werden, aber die Effizienz ist langsamer als bei kein Parallelitätslimit.
Der richtige Weg, eine Anfrage zu senden
Wie oben erwähnt, fügt das WeChat-Applet in Version 1.4.0 der Basisversion eine Warteschlangenverarbeitung für Anfragen hinzu, die das Parallelitätslimit überschreiten Bibliothek optimiert, in Versionen unter 1.4.0 werden Anforderungen, die den gleichzeitigen Teil überschreiten, verworfen.
Laut offiziellen Daten von WeChat lag der Anteil der Benutzer unter Version 1.4.0 bei etwa 0,04 %. Obwohl aktuelle Miniprogramme selten mit einer so niedrigen Version kompatibel sind, ist sie für einige immer noch geeignet Miniprogramme mit besonderen Bedürfnissen sollten auch auf die Unterschiede in den Basisbibliotheken achten.
Zu beachten ist auch der Warteschlangenmechanismus für gleichzeitige Anfragen für Miniprogramme. Wenn mehr als 10 Anforderungen gleichzeitig aufgerufen werden, initiiert das Applet zunächst 10 gleichzeitige Anforderungen, und die über 10 hinausgehenden Anforderungen werden in der Reihenfolge der Aufrufe in die Warteschlange gestellt. Wenn die vorherige Anforderung abgeschlossen ist, wird die nächste Anforderung in der Warteschlange angezeigt gesendet werden.
Im Anhang finden Sie einen gleichzeitigen Test mit 20 Anfragen:
Testergebnisse:
Wie Sie der Abbildung entnehmen können, werden die ersten 10 Anfragen gleichzeitig gesendet, und der Startpunkt der nachfolgenden Anfrage entspricht dem Endpunkt einer vorherigen Anfrage, was das Warteschlangenverhalten der Anfrage widerspiegeln kann.
Das bedeutet, dass Sie bei vielen gleichzeitigen Anfragen eine Warteschlangenstrategie haben und die Anrufreihenfolge entsprechend der Wichtigkeit der Anfrage und der Antwortzeit anpassen sollten Sie können eine Timeout-Verarbeitung in Betracht ziehen, um lange Wartezeiten zu vermeiden und die Benutzererfahrung zu beeinträchtigen.
Das obige ist der detaillierte Inhalt vonNeuigkeiten zur Optimierung für das 10-Anfragen-Parallelitätslimit des WeChat-Applets! ! !. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!