Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến
Tài liệu về Apigee X. thông tin
Định cấu hình cách xóa các giá trị đã lưu vào bộ nhớ đệm khỏi bộ nhớ đệm.
Chính sách này dùng cho mục đích lưu vào bộ nhớ đệm trong thời gian ngắn nói chung. Ngôn ngữ này được dùng trong kết hợp với tham số Điền Chính sách bộ nhớ đệm (để ghi các mục nhập) và chính sách Bộ nhớ đệm tra cứu (để đọc các mục trong bộ nhớ đệm).
Để lưu phản hồi của các tài nguyên phụ trợ vào bộ nhớ đệm, hãy xem Chính sách về bộ nhớ đệm của phản hồi.
Tham chiếu phần tử
Dưới đây là danh sách các thành phần mà bạn có thể thiết lập theo chính sách này.
<InvalidateCache async="false" continueOnError="false" enabled="true" name="policy-name"> <DisplayName>Policy Name</DisplayName> <CacheKey> <Prefix>prefix_string</Prefix> <KeyFragment ref="variable_reference"/> <KeyFragment>fragment_string</KeyFragment> </CacheKey> <!-- Omit this element if you're using the included shared cache. --> <CacheResource>cache_to_use</CacheResource> <Scope>scope_enumeration</Scope> <CacheContext> <APIProxyName>application_that_added_the_entry</APIProxyName> <ProxyName>proxy_for_which_data_was_cached</ProxyName> <TargetName>endpoint_for_which_data_was_cached</TargetName> </CacheContext> <PurgeChildEntries>true_to_purge_all_child_entries</PurgeChildEntries> </InvalidateCache>
<InvalidateCache> thuộc tính
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 |
<CacheContext>/<APIProxyName> phần tử
Chỉ định tên của ứng dụng đã thêm mục nhập vào bộ nhớ đệm.
<APIProxyName>application_that_added_the_entry</APIProxyName>
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện | Loại |
---|---|---|---|---|
tham chiếu | Biến có tên ứng dụng. | Không áp dụng | Không bắt buộc | Chuỗi |
<CacheContext> phần tử
Chỉ định cách tạo khoá bộ nhớ đệm khi giá trị phần tử Prefix
không
đã chỉ định hoặc để xoá các mục nhập trong bộ nhớ đệm do một proxy API khác thêm vào.
<CacheContext> <APIProxyName ref="variable_name">application_that_added_the_entry</APIProxyName> <TargetName ref="variable_name">endpoint_for_which_data_was_cached</TargetName> <ProxyName ref="variable_name">proxy_for_which_data_was_cached</ProxyName> </CacheContext>
Được dùng để tạo CacheKey. Giá trị cho APIProxyName, ProxyName và TargetName là bắt buộc khi không sử dụng tiền tố CacheKey (tức là một tiền tố tuỳ chỉnh) để xoá các mục trong bộ nhớ đệm được thêm bởi một proxy API khác.
<CacheKey> phần tử
Định cấu hình một con trỏ duy nhất đến một phần dữ liệu được lưu trữ trong bộ nhớ đệm.
<CacheKey> <Prefix>string</Prefix> <KeyFragment ref="variable_name" /> <KeyFragment>literal_string</KeyFragment> </CacheKey>
Mặc định: |
Không áp dụng |
Sự hiện diện: |
Bắt buộc |
Loại: |
Không áp dụng |
<CacheKey>
tạo tên của từng phần dữ liệu được lưu trữ trong
bộ nhớ đệm.
Trong thời gian chạy, các giá trị <KeyFragment>
được thêm vào trước
Giá trị phần tử <Scope>
hoặc giá trị <Prefix>
. Ví dụ:
các kết quả sau trong khoá bộ nhớ đệm của
UserToken__apiAccessToken__
<value_of_client_id>:
<CacheKey> <Prefix>UserToken</Prefix> <KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" /> </CacheKey>
Bạn sử dụng phần tử <CacheKey>
cùng với
<Prefix>
và <Scope>
. Để biết thêm thông tin, hãy xem bài viết Xử lý khoá bộ nhớ đệm.
<CacheResource> phần tử
Chỉ định bộ nhớ đệm nơi lưu trữ thông báo.
Hãy bỏ qua hoàn toàn phần tử này nếu chính sách này (và ĐiềnCache và Chính sách LookupCache) đang dùng bộ nhớ đệm dùng chung đi kèm.
<CacheResource>cache_to_use</CacheResource>
Mặc định: |
Không áp dụng |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Chuỗi |
Để biết thêm thông tin về cách định cấu hình bộ nhớ đệm, hãy xem Tạo và chỉnh sửa môi trường lưu vào bộ nhớ đệm.
<CacheKey>/<KeyFragment> phần tử
Chỉ định một giá trị sẽ được đưa vào khoá bộ nhớ đệm, tạo không gian tên để so khớp đối với các phản hồi được lưu vào bộ nhớ đệm.
<KeyFragment ref="variable_name"/> <KeyFragment>literal_string</KeyFragment>
Mặc định: |
Không áp dụng |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Không áp dụng |
Đây có thể là một khoá (tên tĩnh mà bạn cung cấp) hoặc một giá trị (một mục nhập động được đặt bởi tham chiếu đến một biến). Tất cả các mảnh được chỉ định kết hợp (cùng với tiền tố) đều được nối với tạo khoá bộ nhớ đệm.
<KeyFragment>apiAccessToken</KeyFragment> <KeyFragment ref="request.queryparam.client_id" />
Bạn sử dụng phần tử <KeyFragment>
cùng với
<Prefix>
và <Scope>
. Để biết thêm thông tin, hãy xem bài viết Xử lý khoá bộ nhớ đệm.
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện | Loại |
---|---|---|---|---|
tham chiếu | Biến để nhận giá trị. Không nên sử dụng nếu phần tử này chứa giá trị cố định. | Không áp dụng | Không bắt buộc | Chuỗi |
<CacheKey>/<Prefix> phần tử
Chỉ định một giá trị dùng làm tiền tố khoá bộ nhớ đệm.
<Prefix>prefix_string</Prefix>
Mặc định: |
Không áp dụng |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Chuỗi |
Sử dụng giá trị này thay vì <Scope>
khi bạn muốn chỉ định giá trị của riêng mình
thay vì giá trị được liệt kê là <Scope>
. Nếu được xác định,
<Prefix>
thêm giá trị khoá bộ nhớ đệm cho các mục nhập được ghi vào bộ nhớ đệm. Đáp
Giá trị phần tử <Prefix>
ghi đè phần tử <Scope>
giá trị.
Bạn sử dụng phần tử <Prefix>
cùng với
<CacheKey>
và <Scope>
. Để biết thêm thông tin, hãy xem bài viết Xử lý khoá bộ nhớ đệm.
<CacheContext>/<ProxyName> phần tử
Chỉ định tên của proxy mà dữ liệu được lưu vào bộ nhớ đệm.
<ProxyName>proxy_for_which_data_was_cached</ProxyName>
Mặc định: |
Không áp dụng |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Chuỗi |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện | Loại |
---|---|---|---|---|
tham chiếu | Biến để nhận giá trị. Không nên sử dụng nếu phần tử này chứa giá trị cố định. | Không áp dụng | Không bắt buộc | Chuỗi |
<PurgeChildEntries> phần tử
true
để xoá hoàn toàn các mục trong bộ nhớ đệm chia sẻ giá trị do
Đã định cấu hình phần tử <KeyFragment>
cho chính sách này. Giá trị ở các phần khác của
khoá bộ nhớ đệm, chẳng hạn như trong các phần tử <Prefix>
, sẽ không được xem xét.
Lưu ý là bạn phải chỉ định phần tử <KeyFragment>
. Nếu không,
việc đặt giá trị true cho <PurgeChildEntries>
có thể dẫn đến việc xoá hoàn toàn tất cả các mục trong
bộ nhớ đệm.
Việc vô hiệu hoá tất cả các mục trong bộ nhớ đệm của cùng một giá trị mảnh khoá có thể là một cách hữu ích để xóa hoàn toàn nhiều mục nhập liên quan cùng một lúc.
<PurgeChildEntries>true_to_purge_child_entries</PurgeChildEntries>
Mặc định: |
false |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Boolean |
<Scope> phần tử
Phương thức liệt kê dùng để tạo tiền tố cho khoá bộ nhớ đệm khi <Prefix>
không được cung cấp trong phần tử <CacheKey>
.
<Scope>scope_enumeration</Scope>
Mặc định: |
"Độc quyền" |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Chuỗi |
Chế độ cài đặt <Scope>
xác định khoá bộ nhớ đệm được thêm vào trước theo
giá trị <Scope>
. Ví dụ: khoá bộ nhớ đệm sẽ có dạng như sau khi
phạm vi được đặt thành Exclusive
:
orgName__envName__applicationName__deployedRevisionNumber__proxy|TargetName__ [ serializedCacheKey ].
Nếu có một phần tử <Prefix>
trong <CacheKey>
, thì phần tử này
thay thế giá trị phần tử <Scope>
. Các giá trị hợp lệ bao gồm giá trị enum
bên dưới.
Bạn sử dụng phần tử <Scope>
cùng với
<CacheKey>
và <Prefix>
. Để biết thêm thông tin, hãy xem bài viết Xử lý khoá bộ nhớ đệm.
Giá trị được chấp nhận
Giá trị phạm vi | Mô tả |
---|---|
Global |
Khoá bộ nhớ đệm được dùng chung trên tất cả proxy API được triển khai trong môi trường. Khoá bộ nhớ đệm là thêm vào trước ở dạng orgName __ envName __. Nếu bạn xác định một mục nhập |
Application |
Tên proxy API được dùng làm tiền tố. Khoá bộ nhớ đệm được thêm vào đầu biểu mẫu orgName__envName__applicationName. |
Proxy |
Cấu hình ProxyEndpoint được dùng làm tiền tố. Khoá bộ nhớ đệm được thêm vào đầu biểu mẫu orgName__envName__applicationName__deployedRevisionNumber__proxyEndpointName của Google. |
Target |
Cấu hình TargetEndpoint được dùng làm tiền tố. Khoá bộ nhớ đệm đã được thêm vào đầu biểu mẫu orgName__envName__applicationName__deployedRevisionNumber__targetEndpointName của Google. |
Exclusive |
Mặc định. Đây là yếu tố cụ thể nhất và do đó thể hiện rủi ro tối thiểu về không gian tên các xung đột trong một bộ nhớ đệm nhất định. Tiền tố là một trong hai dạng:
Khoá bộ nhớ đệm đã được thêm vào đầu biểu mẫu orgName__envName__applicationName__deployedRevisionNumber__proxyNameITargetName Ví dụ: toàn bộ chuỗi có thể có dạng như sau: apifactory__test__weatherapi__16__default__apiAccessToken. |
<CacheContext>/<TargetName> phần tử
Chỉ định tên của điểm cuối đích mà dữ liệu được lưu vào bộ nhớ đệm.
<TargetName>endpoint_for_which_data_was_cached</TargetName>
Mặc định: |
Không áp dụng |
Sự hiện diện: |
Không bắt buộc |
Loại: |
Chuỗi |
Thuộc tính
Thuộc tính | Mô tả | Mặc định | Sự hiện diện | Loại |
---|---|---|---|---|
tham chiếu | Biến để nhận giá trị. Không nên sử dụng nếu phần tử này chứa giá trị cố định. | Không áp dụng | Không bắt buộc | Chuỗi |
Lưu ý về cách sử dụng
Việc lưu vào bộ nhớ đệm cho mục đích chung thông qua chính sách Điền bộ nhớ đệm, chính sách LookupCache và
Chính sách InvalidateCache sử dụng bộ nhớ đệm mà bạn định cấu hình hoặc bộ nhớ đệm dùng chung có trong
mặc định. Trong hầu hết các trường hợp, bộ nhớ đệm dùng chung cơ bản cần đáp ứng nhu cầu của bạn. Để sử dụng bộ nhớ đệm này,
chỉ cần bỏ qua phần tử <CacheResource>
.
Để biết thêm thông tin về cách định cấu hình bộ nhớ đệm, hãy xem Tạo và chỉnh sửa môi trường lưu vào bộ nhớ đệm. Để biết thêm thông tin về kho dữ liệu cơ bản, hãy xem phần Bộ nhớ đệm nội bộ.
Mã lỗi
Phần này mô tả các thông báo lỗi và biến luồng được thiết lập khi chính sách này kích hoạt lỗi. Thông tin này rất quan trọng mà bạn cần biết nếu đang phát triển các quy tắc lỗi cho một proxy. Để 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.
Tiền tố mã lỗi
Không áp dụng
Lỗi thời gian chạy
Chính sách này không gửi bất kỳ lỗi thời gian chạy nào.
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 |
---|---|---|
InvalidCacheResourceReference |
Lỗi này xảy ra nếu phần tử <CacheResource> trong chính sách InvalidateCache được đặt thành tên không tồn tại trong môi trường nơi proxy API đang được triển khai. |
build |
CacheNotFound |
Lỗi này xảy ra nếu bộ nhớ đệm cụ thể được đề cập trong thông báo lỗi chưa được tạo trên một thành phần cụ thể của Trình xử lý thông báo. | build |
Biến lỗi
Không áp dụng
Ví dụ về phản hồi lỗi
Không áp dụng