Bạn đang xem tài liệu về Apigee Edge.
Chuyển đến tài liệu về
Apigee X. thông tin
Bạn có thể kết hợp các chính sách và tài nguyên thành một luồng dùng chung mà bạn có thể sử dụng từ nhiều proxy API, thậm chí từ các luồng dùng chung khác. Mặc dù giống như một proxy, nhưng luồng dùng chung không có điểm cuối. Bạn chỉ có thể sử dụng từ một proxy API hoặc luồng dùng chung thuộc cùng một tổ chức với chính luồng dùng chung đó.
Bằng cách ghi lại chức năng hữu ích ở nhiều nơi trong một nơi, luồng dùng chung giúp bạn đảm bảo tính nhất quán, rút ngắn thời gian phát triển và dễ dàng quản lý mã hơn.
Video sau đây minh hoạ cách tạo và theo dõi luồng dùng chung trong giao diện người dùng Edge.
Video dài 5 phút sau đây minh hoạ cách tạo và theo dõi luồng dùng chung trong giao diện người dùng Edge cổ điển (chỉ dành cho Edge cho đám mây riêng tư).
Bạn có thể gọi một flow dùng chung bằng chính sách FlowCallout. Ngoài ra, bằng cách đính kèm một flow dùng chung vào một lệnh gọi lại flow, bạn có thể thực thi flow dùng chung trước khi thực hiện yêu cầu proxy hoặc mục tiêu hoặc sau khi thực hiện phản hồi proxy hoặc mục tiêu.
Để tham khảo chính sách FlowAnnotation, hãy xem chính sách về FlowAnnotation. Để biết thêm thông tin về flow hook, hãy xem phần Đính kèm flow dùng chung bằng flow hook.
Ví dụ: giả sử bạn có các khu vực chức năng được sử dụng ở nhiều nơi hoặc phải được chuẩn hoá trên các API trong tổ chức của bạn. Bạn có thể có một quy trình dùng chung cho mỗi danh mục, bao gồm:
- bảo mật, với mã uỷ quyền sử dụng OAuth và xác minh khoá API, cũng như mã bảo vệ khỏi mối đe doạ.
- ghi nhật ký để tạo thông báo lỗi chuẩn.
- giải pháp dàn xếp, để chuyển đổi giữa các định dạng thông báo XML và JSON.
Trong hình minh hoạ sau, 2 proxy API gọi ra (với chính sách FlowAnnotation) đến một luồng dùng chung để xác thực các yêu cầu sắp tới của người dùng. AuthSharedFlow đã được triển khai riêng cho tổ chức trước các proxy để có thể hỗ trợ các yêu cầu từ các proxy. Một luồng chia sẻ có thể được phát triển và quản lý bởi một nhóm chịu trách nhiệm về các chính sách chung của công ty, sau đó được các nhóm theo ngành sử dụng trong các proxy để xây dựng các ứng dụng chuyên biệt hơn.
Phát triển flow dùng chung
Khi phát triển một flow dùng chung, bạn phải luôn kiểm thử flow đó bằng các lệnh gọi được gửi đến một proxy API. Nói cách khác, bạn không thể gửi yêu cầu trực tiếp đến một luồng dùng chung như cách bạn gửi yêu cầu đến một proxy API. Thay vào đó, bạn gửi yêu cầu đến một proxy API, do đó, gọi đến quy trình được chia sẻ.
Sau đây là các bước cấp cao để phát triển luồng dùng chung:
- Xác định nhóm tính năng dùng chung.
Ví dụ: bạn có thể kết hợp các tính năng quản lý lưu lượng truy cập, bao gồm cả việc ngăn chặn sự gia tăng đột biến về lưu lượng truy cập. Bằng cách đó, bạn có thể quản lý cấu hình của các lớp này bên ngoài quy trình công việc của các lớp triển khai logic nghiệp vụ đó.
-
Phát triển quy trình dùng chung bằng cách triển khai các chính sách và tài nguyên hỗ trợ, giống như khi bạn phát triển proxy API.
Quy trình chung là một chuỗi các bước có điều kiện. Vì vậy, việc phát triển một API này cũng giống như phát triển một proxy API. Bạn có thể bao gồm các chính sách và tài nguyên mà bạn có thể đưa vào proxy.
Ví dụ: trong quá trình hỗ trợ quản lý lưu lượng truy cập, bạn có thể triển khai chính sách Chặn truy cập đột biến để chỉ cho phép 30 yêu cầu mỗi giây, như trong ví dụ sau:
<SpikeArrest async="false" continueOnError="false" enabled="true" name="Spike-Arrest"> <DisplayName>Spike Arrest</DisplayName> <Properties/> <Identifier ref="request.header.some-header-name"/> <MessageWeight ref="request.header.weight"/> <Rate>30ps</Rate> </SpikeArrest>
Sau đó, đối với một quy trình dùng chung để quản lý lưu lượng truy cập, bạn có thể đính kèm chính sách Chặn lưu lượng truy cập tăng đột biến dưới dạng một bước. Chính sách này sẽ thực thi cho mọi proxy API gọi luồng dùng chung.
<SharedFlow name="default"> <Step> <Name>Spike-Arrest</Name> </Step> </SharedFlow>
Để biết thông tin về cách bắt đầu một luồng dùng chung trong bảng điều khiển quản lý, hãy xem phần Tạo luồng dùng chung trong giao diện người dùng Edge.
Tương tự như với proxy API, bạn có thể nhập tệp zip chứa cấu phần phần mềm nguồn luồng chia sẻ (xem phần Nhập proxy API mới để biết thêm thông tin về cách nhập proxy). Sau đây là minh hoạ cách nhập một quy trình dùng chung với API quản lý:
curl -X POST -F "file=@/path/to/zip/file.zip" \ 'https://api.enterprise.apigee.com/v1/o/{org_name}/sharedflows?action=import&name=shared-flow-name' \ -u email:password
-
Triển khai flow dùng chung vào môi trường trước khi triển khai proxy hoặc flow dùng chung sẽ sử dụng flow đó. Bạn triển khai quy trình dùng chung theo cách tương tự như cách triển khai proxy API. (Để biết thêm thông tin, hãy xem bài viết Tổng quan về việc triển khai.)
Một luồng dùng chung phải nằm trong cùng một tổ chức và được triển khai vào cùng một môi trường với proxy API và các luồng dùng chung khác sử dụng luồng đó. Việc triển khai luồng dùng chung trước các proxy giúp bạn có thể phân giải phần phụ thuộc của proxy trên luồng dùng chung tại thời điểm triển khai.
Bạn có thể triển khai quy trình dùng chung bằng lệnh gọi API quản lý, chẳng hạn như sau:
curl -X POST --header "Content-Type: application/octet-stream" \ https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/sharedflows/{shared_flow_name}/revisions/{revision_number}/deployments \ -u email:password
Bạn cũng có thể thay thế một luồng dùng chung hiện đang được triển khai mà không bị gián đoạn. (Điều này rất giống với proxy API. Hãy xem phần Triển khai proxy API bằng API quản lý để biết thêm thông tin). Dưới đây là biểu mẫu yêu cầu sử dụng API quản lý:
curl -X POST --header "Content-Type:application/x-www-form-urlencoded" \ https://api.enterprise.apigee.com/v1/o/{org_name}/e/{env_name}/sharedflows/{shared_flow_name}/revisions/{revision_number}/deployments?"override=true" \ -u email:password
-
Phát triển proxy API tiêu thụ để proxy này có thể gọi luồng dùng chung như một phần của luồng riêng.
Từ một proxy API, bạn gọi đến một flow dùng chung có chính sách FlowCallout. (Bạn cũng có thể đính kèm luồng dùng chung vào proxy bằng cách sử dụng trình nối luồng, như mô tả trong phần Đính kèm luồng dùng chung bằng trình nối luồng.) Để xem hướng dẫn nhập môn về cách tạo proxy API, hãy xem bài viết Tạo proxy API đầu tiên.
Để sử dụng flow dùng chung, bạn thêm chính sách FlowCallout vào proxy hoặc flow dùng chung sẽ sử dụng flow đó. Giống như chính sách Chú thích dịch vụ, trong đó bạn gọi đến một dịch vụ khác, FlowCallout sẽ gọi đến luồng được chia sẻ. Bạn phải triển khai proxy API tiêu thụ sau luồng chia sẻ và vào cùng một môi trường với luồng chia sẻ. Quy trình dùng chung phải được thiết lập khi bạn muốn kiểm thử lệnh gọi đến quy trình đó bằng chính sách FlowCallout.
Trong mã sau, chính sách FlowCallout gọi đến một flow dùng chung có tên là
traffic-management-shared
.<FlowCallout async="false" continueOnError="false" enabled="true" name="Traffic-Management-Flow-Callout"> <DisplayName>Traffic Management FlowCallout</DisplayName> <Properties/> <SharedFlowBundle>traffic-management-shared</SharedFlowBundle> </FlowCallout>
Để biết thêm thông tin, hãy xem phần Gọi luồng dùng chung từ proxy API hoặc luồng dùng chung
- Triển khai proxy API tiêu thụ để bắt đầu sử dụng flow dùng chung. (Để biết thêm thông tin về hoạt động triển khai nói chung, hãy xem phần Tìm hiểu về hoạt động triển khai.)
-
Phát triển lặp lại bằng cách theo dõi, như bạn làm với proxy API.
Cũng như với proxy API, bạn phát triển một luồng dùng chung bằng cách gọi và theo dõi lặp lại cho đến khi có logic theo cách bạn muốn. Trong trường hợp này, vì luồng dùng chung không chạy trên chính luồng đó, nên bạn sẽ gọi một điểm cuối proxy và theo dõi proxy.
Sau đây là các bước:
- Đảm bảo rằng cả luồng dùng chung và proxy API gọi luồng đó bằng chính sách FlowCallout đều thuộc cùng một tổ chức và được triển khai cho cùng một môi trường.
- Trên thẻ Trace (Theo dõi) của proxy API, hãy bắt đầu theo dõi proxy API.
- Gửi yêu cầu đến điểm cuối proxy trong proxy API. Luồng từ điểm cuối phải bao gồm chính sách FlowCallout gọi đến luồng dùng chung.
- Trên thẻ Trace (Theo dõi), hãy kiểm tra luồng từ proxy API đến luồng dùng chung.
Xin lưu ý rằng trong quá trình theo dõi, luồng chung được biểu thị dưới dạng một tập hợp các bước hoặc chính sách nằm trong một ô màu xám. Các biểu tượng đại diện cho chính sách FlowCallout đứng trước các flow dùng chung. (Để biết thêm về tính năng theo dõi, hãy xem phần Sử dụng công cụ Theo dõi.)
Tạo luồng dùng chung trong giao diện người dùng Edge
Khi sử dụng giao diện người dùng Apigee Edge để tạo một flow dùng chung, bạn có thể tạo flow từ đầu hoặc nhập các nguồn flow hiện có dưới dạng tệp .zip gói flow.
- Truy cập vào trang Luồng dùng chung như mô tả bên dưới. Trên trang Quy trình được chia sẻ, bạn có thể xem danh sách quy trình được chia sẻ trong tổ chức, đồng thời chỉnh sửa hoặc xoá quy trình trong danh sách.
Edge
Cách truy cập vào trang Quy trình dùng chung bằng giao diện người dùng Edge:
- Đăng nhập vào apigee.com/edge.
- Chọn tổ chức chứa luồng được chia sẻ. Xem phần Chuyển đổi giữa các tổ chức.
Luồng dùng chung sẽ được cung cấp cho mọi proxy API và luồng dùng chung được triển khai cho một môi trường của tổ chức này. Người dùng bên ngoài tổ chức này sẽ không truy cập được vào ứng dụng này.
- Chọn Develop (Phát triển) > Shared Flows (Luồng dùng chung) trong thanh điều hướng bên trái.
Edge phiên bản cũ (Đám mây riêng)
Cách truy cập vào trang Luồng được chia sẻ bằng giao diện người dùng Classic Edge:
- Đăng nhập vào
http://ms-ip:9000
, trong đó ms-ip là địa chỉ IP hoặc tên DNS của nút Máy chủ quản lý. - Chọn tổ chức chứa quy trình được chia sẻ của bạn. Xem phần Chuyển đổi giữa các tổ chức.
Luồng dùng chung sẽ được cung cấp cho mọi proxy API và luồng dùng chung được triển khai cho một môi trường của tổ chức này. Người dùng bên ngoài tổ chức này sẽ không truy cập được vào ứng dụng này.
- Chọn API > Luồng dùng chung trong thanh điều hướng trên cùng.
- Nhấp vào nút + Luồng chia sẻ để bắt đầu thêm luồng chia sẻ mới.
- Trên trang Tạo luồng dùng chung, hãy chọn cách bạn muốn tạo luồng mới:
- Tạo một flow mới từ đầu. Bạn có thể định cấu hình chính sách và tài nguyên dưới dạng các bước trong luồng.
- Chọn Luồng chia sẻ trống.
- Nhập giá trị tên. Đây sẽ là tên mà proxy API và các luồng dùng chung khác sử dụng để tham chiếu luồng dùng chung này. Tên phải mô tả cho các nhà phát triển sử dụng luồng.
- Nhập nội dung mô tả để cung cấp thêm thông tin về chức năng của quy trình.
- Nhấp vào Tiếp theo.
- Bạn có thể chọn các môi trường mà bạn muốn triển khai quy trình mới.
Ví dụ: nếu bạn sẽ kiểm thử luồng dùng chung từ các proxy API được triển khai vào môi trường thử nghiệm, hãy triển khai luồng dùng chung để kiểm thử.
-
Nhấp vào Tạo và triển khai để tạo và triển khai quy trình dùng chung mới cho(các) môi trường mà bạn đã chọn. Nếu bạn không chọn môi trường nào, luồng dùng chung sẽ được tạo nhưng không được triển khai.
- Tạo một flow dùng chung từ các nguồn hiện có bằng cách tải một gói flow lên.
- Chọn Gói luồng chia sẻ để chỉ định tệp .zip chứa cấu phần phần mềm
mà bạn muốn trong quy trình mới.
Gói quy trình dùng chung chứa các cấu phần phần mềm nguồn của một quy trình dùng chung. Ví dụ: nếu tải một flow được chia sẻ xuống từ giao diện người dùng Edge, bạn sẽ có một tệp .zip chứa gói flow.
- Nhấp vào Tiếp theo.
- Nhấp vào Chọn tệp để duyệt qua tệp .zip chứa các nguồn luồng dùng chung mà bạn muốn nhập.
- Trong hộp Tên quy trình chia sẻ, hãy nhập tên cho quy trình đã nhập. Đây sẽ là tên mà proxy API và các luồng dùng chung khác sử dụng để tham chiếu luồng dùng chung này. Tên này phải mô tả rõ ràng cho những nhà phát triển sử dụng flow.
- Nhấp vào Tiếp theo.
- Nhấp vào Build (Tạo) để tạo quy trình mới từ các nguồn mà bạn đang nhập.
- Chọn Gói luồng chia sẻ để chỉ định tệp .zip chứa cấu phần phần mềm
mà bạn muốn trong quy trình mới.
- Tạo một flow mới từ đầu. Bạn có thể định cấu hình chính sách và tài nguyên dưới dạng các bước trong luồng.
Gọi một luồng dùng chung từ proxy API hoặc luồng dùng chung
Bạn có thể gọi một flow dùng chung từ một proxy hoặc từ một flow dùng chung khác bằng cách sử dụng chính sách FlowCallout.
- Trong giao diện người dùng Edge, hãy tìm proxy hoặc flow dùng chung mà bạn muốn gọi một flow dùng chung khác.
- Trong Trình điều hướng, bên cạnh Chính sách, hãy nhấp vào nút +.
- Trong danh sách chính sách, trong mục Tiện ích, hãy nhấp vào FlowCallout.
- Nhập tên và tên hiển thị (giá trị nhận dạng duy nhất), sau đó chọn quy trình dùng chung mà chính sách này sẽ gọi.
- Nhấp vào Thêm.
- Thêm chính sách FlowCallout mới vào proxy mà bạn muốn thực hiện lệnh gọi.