Ich benutze Wso2-AM 2.0.0, um eine Begrenzung der Rate für APIs zu erreichen. Ich habe eine API mit einem Benutzer veröffentlicht und sie wird dann von einem anderen Benutzer abonniert. Beim Abonnieren wähle ich eine Abonnementstufe von 20 Anfragen pro Minute für diese API aus. Die Anwendung, die zum Abonnieren der API verwendet wird, hat ein Limit von 50 Anfragen pro Minute. Jetzt, wenn ich die API teste, passiert nach etwa 50 Anfragen nur die Ratenbegrenzung der Anwendungsebene. Das API-Ebenenlimit wird nicht angewendet. Idealerweise sollte der Benutzer nach 20 Anfragen nicht auf die API zugreifen können. Ich verwende Windows-Rechner, um den wso2-Server und Apache JMeter einzurichten, um Anfragen an den Server zu senden. Was fehlt mir hier? Brauchen Sie etwas Hilfe ...API-Ebene Geschwindigkeitsbegrenzung nicht in Wso2
2
A
Antwort
0
Hier ist eine 4MB/s
Politik.
@Plan:name('carbon.super_app_BandwidthPolicy')
@Plan:description('ExecutionPlan for app_BandwidthPolicy')
@Import('org.wso2.throttle.processed.request.stream:1.0.0')
define stream RequestStream (messageID string, appKey string, appTier string, subscriptionKey string, apiKey string, apiTier string, subscriptionTier string, resourceKey string, resourceTier string, userId string, apiContext string, apiVersion string, appTenant string, apiTenant string, appId string, apiName string, propertiesMap string);
@Export('org.wso2.throttle.globalThrottle.stream:1.0.0')
define stream GlobalThrottleStream (throttleKey string, isThrottled bool, expiryTimeStamp long);
FROM RequestStream
SELECT messageID, (appTenant == 'carbon.super' and appTier == 'BandwidthPolicy') AS isEligible, appKey AS throttleKey, propertiesMap
INSERT INTO EligibilityStream;
FROM EligibilityStream[isEligible==true]#throttler:timeBatch(1 min, 0)
select throttleKey, (sum(cast(map:get(propertiesMap,'messageSize'),'long')) >= 4194304) as isThrottled, expiryTimeStamp group by throttleKey
INSERT ALL EVENTS into ResultStream;
from ResultStream#throttler:emitOnStateChange(throttleKey, isThrottled)
select *
insert into GlobalThrottleStream;
+0
danke :). Das ist was ich wollte – siddhesh
Verwandte Themen
- 1. Yii2 Geschwindigkeitsbegrenzung Api
- 2. Geschwindigkeitsbegrenzung für alle Observablen standardmäßig
- 3. Handhabung EC2 Beschreibung Geschwindigkeitsbegrenzung in Boto3 Lambda?
- 4. Broschüre JS, Holen Sie sich die Geschwindigkeitsbegrenzung
- 5. HERE Maps API - Geschwindigkeitsbegrenzung aller Straßen in einer Kachel erhalten?
- 6. App in WSO2 Appmanager nicht installiert
- 7. Wso2 Data Service läuft nicht
- 8. WSO2 KDC-Konfig erscheint nicht
- 9. WSO2 DAS unterstützt Postgres nicht?
- 10. Was ist die Geschwindigkeitsbegrenzung für Android-App-Verknüpfungen?
- 11. Zeitplanung in WSO2 ESB
- 12. in WSO2 ESB
- 13. Rollenhierachie in WSO2 IST
- 14. ActionNotSupported in Wso2 esb
- 15. Protokollierungssequenzaufrufe in WSO2 ESB
- 16. Wie Datenbank Rollback in Wso2 esb oder Wso2 Dss
- 17. Einen Dienst in WSO2 DSS von WSO2 anrufen ESB
- 18. Wie DS WSO2 ES und WSO2 Kombinieren
- 19. Clustering Wso2
- 20. WSO2 - Standarddatenbankkonfiguration
- 21. WSO2 Zuordnungsproblem
- 22. WSO2 - Carbon-Anwendungsprojekt in Eclipse
- 23. Run WSO2 CEP in Eclipse
- 24. Ausnahmefälle In Wso2 Message Broker
- 25. WSO2 Api Manager Data Mapper funktioniert nicht
- 26. Kann WSO2 BAM 2.0.0-ALPHA.zip nicht extrahieren
- 27. wso2 verwendet ein nicht unterstütztes Protokoll
- 28. Nicht in der Lage kundenspezifische Funktionserweiterung in WSO2 cep
- 29. Benutzer konnte nicht gelöscht werden WSO2 IS
- 30. WSO2 Impliziter Datenfluss wird nicht zurückgegeben id_token
Verwenden Sie die standardmäßige erweiterte Drosselung? – Bee
Während ich die API veröffentlichte, habe ich dies eingestellt ... Advanced Throttling Policies: Ich habe "Apply to API level" gewählt und den Wert als "Unlimited" aus dem Dropdown gesetzt. – siddhesh
Wenn Sie eine neue Abonnementrichtlinie (20 pro Minute) ordnungsgemäß erstellt haben, sollte sie erwartungsgemäß gedrosselt werden. Können Sie die entsprechende Richtliniendatei in 'wso2am-2.0.0/repository/deployment/server/executionplans' posten? – Bee