Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến
Tài liệu về Apigee X. thông tin
Kiến thức bạn sẽ học được
Thông qua hướng dẫn này, bạn sẽ tìm hiểu cách:
- Thêm một chính sách ảnh hưởng đến yêu cầu và phản hồi.
- Xem tác động của chính sách.
Bạn cần có
- Ít nhất một chính sách trong proxy của bạn (cũng là một phần của hướng dẫn Bắt đầu).
curl
đã được cài đặt trên máy của bạn để thực hiện lệnh gọi API từ dòng lệnh.
Thêm chính sách về việc Bắt giữ tăng đột biến
Trong hướng dẫn này, bạn sẽ thêm và định cấu hình chính sáchSpikeArrest để bảo vệ mục tiêu chống lại tình trạng tăng đột biến về lưu lượng truy cập có thể do tăng mức sử dụng, ứng dụng bị lỗi, hoặc tấn công độc hại. Khi số lượng yêu cầu vượt quá giới hạn tốc độ, API sẽ trả về một Lỗi HTTP 500 đối với một yêu cầu.
Thêm chính sách về việc Bắt giữ tăng đột biến vào một proxy API:
- Đăng nhập vào apigee.com/edge.
- Chọn Phát triển > Proxy API trong thanh điều hướng bên trái.
- Chọn proxy API mà bạn muốn thêm chính sách Bắt giữ tăng đột biến.
Nếu đã làm theo hướng dẫn Bắt đầu sử dụng, bạn có thể thêm hướng dẫn này vào "bắt đầu" proxy bạn đã tạo trong phần Tạo Proxy API.
- Trong trình chỉnh sửa cho proxy API mới, hãy nhấp vào thẻ Develop (Phát triển):
API Proxy Editor cho phép bạn xem cấu trúc của proxy API và định cấu hình luồng của proxy. Trình chỉnh sửa trình bày bản trình bày trực quan về thông báo phản hồi và yêu cầu của proxy cũng như màn hình có thể chỉnh sửa của XML cơ bản xác định proxy.
- Trong ngăn Trình điều hướng bên trái, nhấp vào PreFlow trong Proxy Điểm cuối > mặc định. (Các hướng dẫn khác sẽ đề cập đến khái niệm flow.)
- Nhấp vào nút +Bước trên cùng, tương ứng với Request PreFlow. Chiến dịch này sẽ hiển thị một danh sách phân loại tất cả các chính sách mà bạn có thể tạo.
- Chọn Spike Bắt giữ trong danh mục Quản lý giao thông. Chính sách mới hộp thoại xuất hiện:
- Giữ nguyên tên mặc định rồi nhấp vào Thêm. Chính sách mới được đính kèm vào luồng PreFlow của một yêu cầu.
- Trong Trình điều hướng, hãy đảm bảo rằng PreFlow trong Điểm cuối proxy
> mặc định vẫn được chọn và lưu ý những điều sau trong API Proxy Editor:
- Chính sách mới của Spike Arrest-1 được bổ sung trong phần Chính sách Trình điều hướng ở bên trái Trình chỉnh sửa proxy API.
- Biểu tượng Spike Arrest-1 được thêm vào Chế độ xem Designer trong nằm ở giữa trên cùng của API Proxy Editor (Trình chỉnh sửa proxy API), đây là bản trình bày trực quan luồng thông báo của proxy.
- XML của chính sách này xuất hiện ở Chế độ xem mã trong ở chính giữa dưới cùng của API Proxy Editor (Trình chỉnh sửa proxy API).
- Trong Trình điều hướng, hãy chọn Spike Arrest-1 trong phần Chính sách và để lại
sau đây trong API Proxy Editor:
- Thông tin chi tiết về chính sách được hiển thị trong Chế độ xem dành cho nhà thiết kế ở trên cùng giữa Trình chỉnh sửa proxy API.
- XML của chính sách hiển thị trong Chế độ xem mã ở dưới cùng giữa Trình chỉnh sửa proxy API.
- Phần tử XML và giá trị thuộc tính của chính sách này xuất hiện trong Property Inspector (Trình kiểm tra thuộc tính) ở bên phải API Proxy Editor (Trình chỉnh sửa proxy API).
-
Trong tệp XML cho chính sách, hãy thay đổi giá trị của phần Phần tử
<Rate>
thành 1pm (tức là chuyển thành khoảng 2 yêu cầu được phép mỗi 60 giây trên đám mây).Bạn có thể chỉ định mức phí dưới dạng giá trị số nguyên mỗi phút (
pm
) hoặc mỗi giây (ps
). Đây là giới hạn rất thấp và chỉ được dùng cho hướng dẫn này để thể hiện chính sách. Thông thường, bạn đặt giới hạn cao hơn nhiều.Xin lưu ý rằng giá trị
Rate
trong Trình kiểm tra thuộc tính cũng thay đổi thành "1pm". Ngoài ra, bạn có thể thay đổi giá trị Rate (Giá) trong Công cụ kiểm tra cơ sở lưu trú và sẽ được phản ánh trong khung hiển thị XML. - Nhấp vào Lưu để lưu bản sửa đổi hiện tại cùng với các thay đổi của bạn.
-
Gọi API bằng
curl
, thay thế tên tổ chức Apigee của bạn cho org_name:curl "http://org_name-test.apigee.net/getstarted"
Ví dụ:
curl "http://ahamilton-eval-test.apigee.net/getstarted" | python -m json.tool
Hãy đảm bảo yêu cầu thành công và bạn thấy phản hồi XML giống như trước đây. (Bạn cũng có thể chỉ nhập URL vào trình duyệt web.)
- Thực thi lệnh
curl
(hoặc làm mới cửa sổ trình duyệt) từ hai đến ba lần nữa lần trong vòng một phút và nhận thấy rằng bạn nhận được thông báo sau vì bạn đã vượt quá giới hạn giới hạn tốc độ của chính sách:{ "fault": { "faultstring":"Spike arrest violation. Allowed rate : 1pm", "detail": { "errorcode":"policies.ratelimit.SpikeArrestViolation"} } }
Nếu bạn thử thực hiện thêm cuộc gọi trong một phút, bạn sẽ tiếp tục gặp lỗi .
- Chỉnh sửa chính sách để đặt giới hạn <
Rate>
thành 15 giờ chiều (tức là khoảng 2 cuộc gọi được phép mỗi 4 giây trong Cloud) rồi lưu proxy API. - Thực thi lệnh
curl
hoặc làm mới trình duyệt nhiều lần (curl
nhanh hơn). Lưu ý rằng nếu bạn thực hiện một hoặc hai lệnh gọi trong khoảng thời gian 4 giây, thì cuộc gọi của bạn sẽ thành công. Nếu bạn thực hiện cuộc gọi nhanh chóng, hơn 2 cuộc gọi trong vòng 4 giây, bạn sẽ gặp lỗi. Nhưng sau bạn có thể tiếp tục thực hiện cuộc gọi thay vì bị chặn trong mỗi khoảng thời gian 4 giây toàn bộ phút (với cài đặt 1 giờ chiều).