Luồng dùng chung có thể tái sử dụng

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 vào một luồng dùng chung mà bạn có thể sử dụng từ nhiều proxy API và 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 luồng này 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 tập hợp chức năng ở một nơi hữu ích ở nhiều nơi, một quy trình dùng chung sẽ 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à quản lý mã dễ dàng hơn.

Video sau đây minh hoạ cách tạo và theo dõi một quy trình 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 một quy trình dùng chung trong giao diện người dùng Classic Edge (chỉ có Edge cho Đám mây riêng tư).

Bạn có thể gọi một quy trình dùng chung bằng chính sách Chú thích quy trình. Ngoài ra, bằng cách đính kèm một luồng dùng chung vào một luồng chia sẻ (flow hook), bạn có thể yêu cầu luồng dùng chung thực thi trước một yêu cầu proxy hoặc yêu cầu mục tiêu hoặc sau một proxy hoặc phản hồi mục tiêu.

Để tham khảo về chính sách Chú thích luồng, hãy xem Chính sách về chú thích. Để biết thêm thông tin về hook luồng, hãy xem phần Đính kèm flow được chia sẻ bằng hook flow.

Ví dụ: Giả sử bạn có những lĩnh 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 từng danh mục, bao gồm:

  • security, với mã uỷ quyền sử dụng phương thức xác minh bằng OAuth và API cũng như mã bảo vệ chống lại các mối đe doạ.
  • ghi nhật ký để tạo các thông báo lỗi chuẩn.
  • dàn xếp để chuyển đổi giữa định dạng thông báo XML và JSON.

Trong hình minh hoạ sau, 2 proxy API gọi (có chính sách FlowAnnotation) đến một luồng dùng chung để xác thực các yêu cầu nhận được từ người dùng. AuthSharedFlow đã được triển khai riêng cho tổ chức trước các proxy để hệ thống luôn có thể hỗ trợ các yêu cầu từ proxy. Một nhóm chịu trách nhiệm về các chính sách trên phạm vi rộng của công ty có thể phát triển và quản lý quy trình dùng chung. Sau đó, các nhóm chuyên trách xây dựng các ứng dụng chuyên biệt sẽ sử dụng trong proxy.

Phát triển một luồng chung

Khi phát triển một luồng dùng chung, bạn phải luôn kiểm thử luồng đó bằng các lệnh gọi được gửi tới proxy API. Nói cách khác, bạn không thể trực tiếp gửi các yêu cầu đến một luồng dùng chung như khi gửi các yêu cầu API. Thay vào đó, bạn gửi yêu cầu tới một proxy API, tức là gọi luồng được chia sẻ.

Dưới đây là các bước cấp cao để phát triển một luồng dùng chung:

  1. 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 lưu lượng truy cập tăng đột biến. Bằng cách đó, bạn có thể quản lý cấu hình của các cấu hình đó bên ngoài quy trình làm việc của những logic triển khai dòng sản phẩm đó.

  2. 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ư cách bạn làm khi phát triển proxy API.

    Luồng 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 proxy cũng giống như việc phát triển 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 Tăng độ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 Gia hạn tăng đột biến. Chính sách này sẽ thực thi đối với 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 quy trình dùng chung trong bảng điều khiển quản lý, hãy xem bài viết Tạo quy trình dùng chung trong giao diện người dùng Edge.

    Giống như proxy API, bạn có thể nhập một tệp zip chứa cấu phần phần mềm nguồn luồng dùng chung (xem bài viết Nhập proxy API mới để biết thêm về cách nhập proxy). Hình ảnh sau đây minh hoạ cách nhập một quy trình được chia sẻ bằng 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
    
  3. Triển khai luồng dùng chung cho môi trường trước khi triển khai những proxy hoặc luồng dùng chung sẽ sử dụng luồng đó. Bạn triển khai luồng dùng chung giống như cách bạn 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.)

    Luồng dùng chung phải nằm trong cùng một tổ chức và được triển khai trong 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 được chia sẻ trước proxy có thể giúp giải quyết 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 một 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 chia sẻ hiện đang được triển khai mà không có thời gian ngừng hoạt động. (Điều này rất giống với proxy API. Hãy xem nội dung 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
    
  4. Phát triển proxy API sử dụng để proxy này có thể gọi luồng được chia sẻ như một phần của luồng riêng.

    Từ proxy API, bạn gọi đến một quy trình được chia sẻ bằng chính sách Chú thích luồng. (Bạn cũng có thể đính kèm luồng được chia sẻ vào proxy bằng cách sử dụng hook luồng, như mô tả trong phần Đính kèm luồng dùng chung bằng móc luồng.) Để xem hướng dẫn giới thiệu về cách tạo proxy API, hãy xem phần Tạo proxy API đầu tiên của bạn.

    Để sử dụng một luồng dùng chung, bạn cần thêm chính sách Chú thích luồng vào proxy hoặc luồng được chia sẻ để sử dụng luồng đó. Giống như chính sách Chú thích dịch vụ, trong đó bạn gọi một dịch vụ khác, FlowAnnotation gọi đến luồng chung. Proxy API sử dụng phải được triển khai sau luồng dùng chung và trong cùng một môi trường với luồng dùng chung. Luồng được chia sẻ phải được triển khai khi bạn muốn thử nghiệm lệnh gọi tới luồng đó bằng chính sách FlowChú thích.

    Trong đoạn mã sau, chính sách FlowChú thích gọi đến một quy trình 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 bài viết Gọi một luồng dùng chung qua một proxy API hoặc một luồng dùng chung

  5. Triển khai proxy API sử dụng để bắt đầu sử dụng quy trình chia sẻ. (Để biết thêm về quá trình triển khai nói chung, hãy xem phần Tìm hiểu về triển khai.)
  6. Phát triển lặp lại bằng cách theo dõi, giống như cách bạn làm với proxy API.

    Giống như proxy API, bạn phát triển một luồng chung bằng cách gọi và theo dõi lặp lại cho đến khi bạn có logic theo cách bạn muốn. Trong trường hợp này, do luồng dùng chung không tự chạy 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:

    1. Hãy đảm bảo rằng cả luồng dùng chung và proxy API gọi luồng đó bằng chính sách FlowChú thích đều thuộc cùng một tổ chức và được triển khai cho cùng một môi trường.
    2. Trên thẻ Theo dõi của proxy API, hãy bắt đầu theo dõi proxy API.
    3. Gửi yêu cầu đến một điểm cuối proxy trong proxy API. Luồng từ điểm cuối phải bao gồm chính sách Flowchú thích có chức năng gọi đến luồng dùng chung.
    4. Trên thẻ Trace (Theo dõi), hãy kiểm tra luồng từ proxy API đến luồng dùng chung.

      Lưu ý rằng trong hoạt động theo dõi, luồng dù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 có trong hộp màu xám. Biểu tượng đại diện cho chính sách FlowAnnotation được đặt trước các luồng dùng chung. (Để biết thêm về cách theo dõi, hãy xem bài viết Sử dụng công cụ Theo dõi.)

Tạo một 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 quy trình dùng chung, bạn có thể tạo một quy trình từ đầu hoặc bằng cách nhập các nguồn luồng hiện có dưới dạng tệp .zip theo gói luồng.

  1. Truy cập trang Luồng được chia sẻ theo mô tả dưới đây. Trên trang Luồng dùng chung, bạn có thể xem danh sách các luồng được chia sẻ trong tổ chức và chỉnh sửa hoặc xoá các luồng trong danh sách này.

    Edge

    Cách truy cập vào trang Luồng được chia sẻ bằng giao diện người dùng Edge:

    1. Đăng nhập vào apigee.com/edge.
    2. Chọn tổ chức chứa luồng mà bạn chia sẻ. Hãy xem phần Chuyển đổi giữa các tổ chức của bạn.

      Luồng dùng chung sẽ áp dụng cho mọi proxy API và luồng dùng chung được triển khai cho một môi trường từ tổ chức này. Dữ liệu đó sẽ không dùng được từ bên ngoài tổ chức này.

    3. Chọn Phát triển > Luồng được chia sẻ trong thanh điều hướng bên trái.

    Phiên bản cũ (Đám mây riêng tư)

    Cách truy cập trang Luồng được chia sẻ bằng giao diện người dùng Classic Edge:

    1. Đă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ý.
    2. Chọn tổ chức chứa luồng mà bạn chia sẻ. Hãy xem phần Chuyển đổi giữa các tổ chức của bạn.

      Luồng dùng chung sẽ áp dụng cho mọi proxy API và luồng dùng chung được triển khai cho một môi trường từ tổ chức này. Dữ liệu đó sẽ không dùng được từ bên ngoài tổ chức này.

    3. Chọn API > Luồng chia sẻ ở thanh điều hướng trên cùng.
  2. Nhấp vào nút + Luồng chia sẻ để bắt đầu thêm luồng chia sẻ mới.
  3. Trên trang Tạo quy trình dùng chung, hãy chọn cách bạn muốn tạo quy trình mới:
    • Tạo quy trình mới từ đầu. Bạn có thể định cấu hình các chính sách và tài nguyên ở dạng các bước trong quy trình.
      1. Chọn Empty Shared Flow (Luồng chia sẻ trống).
      2. Nhập giá trị tên. Đây sẽ là tên mà các proxy API và các luồng dùng chung khác sử dụng để tham chiếu đến quy trình dùng chung này. Tên này phải mang tính mô tả cho các nhà phát triển sử dụng flow.
      3. 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.
      4. Nhấp vào Tiếp theo.
      5. Nếu muốn, hãy chọn những môi trường 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 đến môi trường kiểm thử, hãy triển khai luồng dùng chung để kiểm thử.

      6. Nhấp vào Build and Deployment (Tạo và triển khai) để tạo và triển khai quy trình chia sẻ mới trong (các) môi trường bạn đã chọn. Nếu bạn không chọn môi trường nào, thì luồng dùng chung sẽ được tạo, nhưng không được triển khai.

    • Tạo một luồng dùng chung từ các nguồn hiện có bằng cách tải một gói luồng lên.
      1. Chọn Shared Flow Bundle (Gói quy trình chia sẻ) để chỉ định một tệp .zip chứa cấu phần phần mềm bạn muốn trong quy trình mới.

        Gói luồng dùng chung chứa các cấu phần phần mềm nguồn của một luồng dùng chung. Ví dụ: nếu tải một quy trình được chia sẻ xuống từ giao diện người dùng Edge, bạn sẽ có một tệp .zip với gói quy trình này.

      2. Nhấp vào Tiếp theo.
      3. Nhấp vào Choose File (Chọn tệp) để duyệt tìm tệp .zip chứa các nguồn luồng dùng chung mà bạn muốn nhập.
      4. Trong hộp Tên luồng chung, hãy nhập tên cho luồng đã nhập. Đây sẽ là tên mà các proxy API và các luồng dùng chung khác sử dụng để tham chiếu đến 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.
      5. Nhấp vào Tiếp theo.
      6. Nhấp vào Tạo để tạo quy trình mới từ các nguồn mà bạn đang nhập.

Gọi một luồng được chia sẻ từ một proxy API hoặc một luồng dùng chung

Bạn có thể gọi một luồng được chia sẻ từ một proxy hoặc từ một luồng được chia sẻ khác bằng cách sử dụng chính sách Chú thích luồng.

  1. Trong giao diện người dùng Edge, hãy tìm proxy hoặc luồng dùng chung mà từ đó bạn muốn gọi một luồng dùng chung khác.
  2. Trong Trình điều hướng, bên cạnh Chính sách, hãy nhấp vào nút +.
  3. Trong danh sách các chính sách, trong phần Tiện ích, hãy nhấp vào Chú thích quy trình.
  4. 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 được chia sẻ mà chính sách này sẽ gọi.
  5. Nhấp vào Thêm.
  6. Thêm chính sách FlowChú thích mới vào proxy mà bạn muốn thực hiện cuộc gọi.

Xem thêm

Tạo chuỗi các proxy API với nhau