Bạn đang xem tài liệu về Apigee Edge.
Truy cập vào
tài liệu Apigee X. thông tin
Nội dung
Dùng để sửa đổi linh hoạt số lượng yêu cầu còn lại mà chính sách Hạn mức mục tiêu cho phép. Thông thường, bạn sử dụng chính sách này để giảm số lượng hạn mức hiện tại của chính sách Hạn mức mục tiêu thay vì chờ số lượng hạn mức được đặt lại.
Ví dụ: chính sách Hạn mức mục tiêu giới hạn số lượng yêu cầu của nhà phát triển ở mức 1.000 yêu cầu mỗi tuần. Đến ngày thứ hai của tuần, nhà phát triển đã đạt đến giới hạn này. Sử dụng chính sách Đặt lại hạn mức để trừ 500 vào bộ đếm hạn mức của họ nhằm cho phép thêm 500 yêu cầu trong thời gian còn lại của tuần. Vào cuối tuần, Chính sách hạn mức sẽ được đặt lại và nhà phát triển sẽ có lại 1.000 yêu cầu cho tuần đó.
Hãy xem Chính sách về hạn mức để biết thêm thông tin về Chính sách về hạn mức. Ngoài ra, hãy xem bài đăng này trên cộng đồng về cách sử dụng chính sách Đặt lại hạn mức.
Mẫu
Các mẫu mã chính sách này minh hoạ cách đặt lại bộ đếm hạn mức:
Đặt lại bộ đếm mặc định
<ResetQuota name="resetQuota">
<Quota name="MyQuotaPolicy">
<Identifier name="_default">
<Allow>100</Allow>
</Identifier>
</Quota>
</ResetQuota>Chính sách Đặt lại hạn mức chỉ định Chính sách hạn mức mục tiêu bằng cách sử dụng thuộc tính name của thẻ <Quota>. Trong ví dụ trên, chính sách MyQuotaPolicy là mục tiêu.
Tất cả các chính sách Đặt lại hạn mức đều yêu cầu thẻ <Identifier> để chỉ định bộ đếm trong chính sách Hạn mức cần cập nhật. Theo mặc định, chính sách Hạn mức có một bộ đếm duy nhất, trừ phi chính sách Hạn mức cũng bao gồm thẻ <Identifier>. Trong ví dụ này, chính sách Hạn mức mục tiêu không sử dụng thẻ <Identifier>, vì vậy, bạn chỉ định thuộc tính name là _default.
Phần tử <Allow> chỉ định giá trị dùng để giảm số lượng hạn mức hiện tại trên chính sách mục tiêu. Trong ví dụ này, số lượng hạn mức giảm đi 100, cho phép thêm 100 yêu cầu đối với chính sách Hạn mức mục tiêu. Khi chính sách Hạn mức mục tiêu được đặt lại, thay đổi này sẽ bị loại bỏ.
Dưới đây là định nghĩa về chính sách Hạn mức mục tiêu:
<Quota name="MyQuotaPolicy"> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Sử dụng tài liệu tham khảo
<ResetQuota name="resetQuota">
<Quota ref="request.header.quotapolicy">
<Identifier name="_default">
<Allow ref="request.header.allowquota" />
</Identifier>
</Quota>
</ResetQuota>Trong ví dụ này, bạn sẽ truyền tên của chính sách Hạn mức mục tiêu và thay đổi số lượng hạn mức của chính sách đó dưới dạng tiêu đề trong yêu cầu. Sau đó, bạn có thể tham chiếu các biến luồng chứa những giá trị này trong chính sách Đặt lại hạn mức.
Chỉ định giá trị nhận dạng
<ResetQuota name="resetQuota">
<Quota name="QuotaPolicy">
<Identifier ref="request.header.clientId">
<Allow>100</Allow>
</Identifier>
</Quota>
</ResetQuota>Nếu chính sách Hạn mức mục tiêu chỉ định thẻ <Identifier>, thì bạn có thể chỉ định cùng một giá trị cho thẻ <Identifier> của chính sách Đặt lại hạn mức để cập nhật một số lượng hạn mức cụ thể. Lưu ý cách thẻ <Identifier> trong chính sách Hạn mức mục tiêu bên dưới khớp với giá trị được chỉ định cho chính sách Đặt lại hạn mức:
<Quota name="QuotaPolicy"> <Identifier ref="request.header.clientId"/> <Interval>5</Interval> <TimeUnit>hour</TimeUnit> <Allow count="100"/> </Quota>
Tài liệu tham khảo về phần tử
Thông tin tham chiếu về phần tử mô tả các phần tử và thuộc tính của chính sách Đặt lại hạn mức.
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
<DisplayName>Reset Quota 1</DisplayName>
<Quota name="quotaName" ref="request.header.quotapolicy">
<Identifier name="identifierName" ref="request.header.identifier">
<Class ref="request.header.classIdentifier" />
<Allow>100</Allow>
</Identifier>
</Quota>
</ResetQuota>Thuộc tính <ResetQuota>
<ResetQuota async="false" continueOnError="false" enabled="true" name="Reset-Quota-1">
Bảng sau đây mô tả những thuộc tính chung cho tất cả phần tử mẹ của chính sách:
| Thuộc tính | Mô tả | Mặc định | Sự hiện diện |
|---|---|---|---|
name |
Tên nội bộ của chính sách. Giá trị của thuộc tính (Không bắt buộc) Bạn có thể dùng phần tử |
Không áp dụng | Bắt buộc |
continueOnError |
Đặt thành Đặt thành |
false | Không bắt buộc |
enabled |
Hãy đặt thành Đặt thành |
đúng | Không bắt buộc |
async |
Thuộc tính này không được dùng nữa. |
false | Không được dùng nữa |
<DisplayName> phần tử
Hãy sử dụng cùng với thuộc tính name để gắn nhãn chính sách trong phần
trình chỉnh sửa proxy giao diện người dùng quản lý có tên ngôn ngữ tự nhiên khác.
<DisplayName>Policy Display Name</DisplayName>
| Mặc định |
Không áp dụng Nếu bạn bỏ qua phần tử này, giá trị của thuộc tính |
|---|---|
| Sự hiện diện | Không bắt buộc |
| Loại | Chuỗi |
Phần tử <Quota>
Xác định chính sách Hạn mức mục tiêu mà bộ đếm cần được cập nhật.
<Quota name="quotaName" ref="request.header.quotapolicy">
<Identifier name="identifierName" ref="request.header.identifier">
<Allow>100</Allow>
</Identifier>
</Quota>| Mặc định: | Không áp dụng |
| Trạng thái hiện diện: | Bắt buộc |
| Loại: | Không áp dụng |
Thuộc tính
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| tên |
Chỉ định tên của chính sách hạn mức mục tiêu. |
Không áp dụng | Không bắt buộc |
| ref | Một biến luồng chứa tên của chính sách Hạn mức mục tiêu. Nếu bạn chỉ định cả ref và name, thì ref sẽ được ưu tiên. Nếu ref không phân giải được trong thời gian chạy, thì name sẽ được dùng. | Không áp dụng | Không bắt buộc |
Phần tử <Quota>/<Identifier>
Biến dùng để xác định duy nhất bộ đếm nếu chính sách Hạn mức mục tiêu chỉ định thẻ <Identifier>.
<Quota name="quotaName">
<Identifier name="identifierName" ref="request.header.identifier">
<Allow>100</Allow>
</Identifier>
</Quota>| Mặc định: | Không áp dụng |
| Trạng thái hiện diện: | Bắt buộc |
| Loại: | Chuỗi |
Thuộc tính
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| tên |
Chỉ định tên của giá trị nhận dạng bộ đếm trong chính sách Hạn mức mục tiêu. Đối với chính sách Hạn mức không sử dụng thẻ <Identifier>, hãy chỉ định _default. |
Không áp dụng | Không bắt buộc |
| ref |
Một biến luồng chứa tên của giá trị nhận dạng số lượng trong chính sách Hạn ngạch mục tiêu. Nếu bạn chỉ định cả ref và name, thì ref sẽ được ưu tiên. Nếu ref không phân giải được tại thời gian chạy, thì name sẽ được dùng. |
Không áp dụng | Không bắt buộc |
Phần tử <Quota>/<Identifier>/<Allow>
Chỉ định số tiền để giảm bộ đếm hạn mức. Bạn phải chỉ định <Allow>. Nếu không, chính sách sẽ không sửa đổi hạn mức.
<Identifier name="identifierName" ref="request.header.identifier"> <Allow ref="request.header.allowquota">100</Allow> </Identifier>
| Mặc định: | Không áp dụng |
| Trạng thái hiện diện: | Bắt buộc |
| Loại: | Số nguyên |
Thuộc tính
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| ref |
Một biến luồng chứa nội dung thay đổi đối với số lượng hạn mức trong chính sách Hạn mức mục tiêu. |
Không áp dụng | Không bắt buộc |
Phần tử <Quota>/<Identifier>/<Class>
Chỉ định lớp mà bộ đếm Hạn mức được cập nhật. Để biết thêm thông tin về cách sử dụng lớp với chính sách Hạn mức, hãy xem Chính sách hạn mức.
<Identifier name="_default">
<Class ref="request.header.classIdentifier">
<Allow>200</Allow>
</Class>
</Identifier>| Mặc định: | Không áp dụng |
| Trạng thái hiện diện: | Không bắt buộc |
| Loại: | Không áp dụng |
Thuộc tính
| Thuộc tính | Mô tả | Mặc định | Tỷ lệ hiển thị |
|---|---|---|---|
| ref |
Tham chiếu đến biến luồng chứa hạn mức cần cập nhật. |
Không áp dụng | Không bắt buộc |
Tham chiếu lỗi
Phần này mô tả các mã lỗi và thông báo lỗi được trả về, cũng như các biến lỗi do Edge đặt khi chính sách này kích hoạt lỗi. Thông tin này đóng vai trò quan trọng trong việc phát triển các quy tắc lỗi để xử lý lỗi. Để tìm hiểu thêm, hãy xem Những điều bạn cần biết về lỗi chính sách và Xử lý lỗi.
Lỗi thời gian chạy
Những lỗi này có thể xảy ra khi thực thi chính sách.
| Mã lỗi | Trạng thái HTTP | Nguyên nhân | Khắc phục |
|---|---|---|---|
policies.resetquota.InvalidRLPolicy |
500 | Chính sách hạn mức được chỉ định trong phần tử <Quota> của chính sách Đặt lại hạn mức không được xác định trong proxy API, do đó không dùng được trong quy trình. Phần tử <Quota>
là bắt buộc và xác định chính sách Hạn mức mục tiêu có bộ đếm cần được cập nhật
thông qua chính sách Đặt lại hạn mức. |
build |
policies.resetquota.FailedToResolveAllowCountRef |
Không áp dụng | Không thể phân giải việc tham chiếu đến biến chứa số lượng cho phép trong phần tử <Allow> của chính sách thành một giá trị. Phần tử này là bắt buộc và chỉ định số lượng để giảm bộ đếm hạn mức. |
build |
policies.resetquota.FailedToResolveRLPolicy |
500 | Không thể phân giải biến được tham chiếu bởi thuộc tính ref trong phần tử <Quota>. |
build |
Lỗi triển khai
Những lỗi này có thể xảy ra khi bạn triển khai proxy chứa chính sách này.
| Tên lỗi | Nguyên nhân | Khắc phục |
|---|---|---|
InvalidCount |
Nếu giá trị số lượng được chỉ định trong phần tử <Allow> của Chính sách đặt lại hạn mức không phải là số nguyên, thì quá trình triển khai proxy API sẽ không thành công.
|
build |