Skip to main content

Welcome to a Grasp lesson

Create a free account to keep studying and create your own study path.

Lesson 14

Triển khai quy trình từ Modeler lên Camunda Engine

Recommended resources

Chào bạn,

Trong bài học trước, chúng ta đã khám phá một trong những phần quan trọng nhất của Camunda Modeler: Properties Panel. Bạn đã học cách sử dụng nó để liên kết các phần tử trên sơ đồ BPMN với logic thực thi, dù đó là một lớp Java, một Spring bean, hay một biểu thức (expression). Về cơ bản, bạn đã biến một sơ đồ tĩnh thành một bản thiết kế chi tiết cho một ứng dụng tự động hóa.

Vậy, bước tiếp theo là gì? Đó là đưa bản thiết kế đó vào cuộc sống. Mục tiêu của bài học hôm nay, và cũng là bài cuối cùng trong module này, là giúp bạn deploy (triển khai) một quy trình lên Camunda engine trực tiếp từ Camunda Modeler. Đây là một kỹ năng cực kỳ hữu ích trong quá trình phát triển, cho phép bạn nhanh chóng kiểm thử và lặp lại các thay đổi trên mô hình của mình mà không cần phải xây dựng và triển khai lại toàn bộ dự án.

1. Chuẩn bị "Sân chơi": Chạy một Camunda Engine

Trước khi có thể deploy, chúng ta cần một nơi để deploy đến – một Camunda engine đang chạy. Trong các bài học trước, bạn đã làm quen với việc tích hợp engine vào một dự án Spring Boot. Hôm nay, để phục vụ cho việc thiết kế và kiểm thử nhanh, tôi sẽ giới thiệu cho bạn một công cụ rất tiện lợi: Camunda Platform Run.

Camunda Run là một bản phân phối độc lập, chứa sẵn Camunda engine và các ứng dụng web. Bạn chỉ cần tải về, giải nén và chạy nó mà không cần thiết lập một dự án Java phức tạp. Với kinh nghiệm developer của bạn, bạn có thể coi nó như một server ứng dụng gọn nhẹ, được cấu hình sẵn để chạy các quy trình Camunda.

Video sau đây sẽ hướng dẫn bạn toàn bộ quá trình, từ tải về cho đến khởi chạy Camunda Run.

Tutorial: How to Get Started With Camunda Platform 7 Run

Hãy xem video này để biết cách tải và khởi chạy Camunda Run. Đây sẽ là engine mục tiêu cho việc deploy của chúng ta.

Hãy tập trung vào các phần sau: Tải và khởi chạy (00:54 - 06:33): Xem cách tải bản Community Edition của Camunda BPM Run, giải nén và chạy file start.bat (cho Windows) hoặc start.sh (cho Mac/Linux). Đừng quá lo lắng về cấu trúc thư mục, chỉ cần biết cách khởi động nó là đủ. Truy cập Web Apps (06:33 - 08:19): Sau khi engine khởi động, hãy truy cập vào http://localhost:8080 và đăng nhập với tài khoản mặc định demo / demo. Hãy thử mở Cockpit và Tasklist để thấy rằng chúng hoàn toàn trống rỗng.

Sau khi hoàn thành các bước trên, bạn đã có một Camunda engine "sạch" đang chạy tại localhost và sẵn sàng nhận các quy trình mới.


2. Hành động chính: Deploy từ Camunda Modeler

Giờ là lúc thực hiện thao tác cốt lõi. Camunda Modeler có một tính năng tích hợp sẵn cho phép nó giao tiếp với Camunda engine thông qua REST API. Bằng cách này, bạn có thể gửi (deploy) sơ đồ BPMN hiện tại của mình đến engine chỉ với vài cú nhấp chuột.

Các tài liệu và video sau sẽ chỉ cho bạn cách thực hiện.

Deploy the Process (3/6)

Tài liệu chính thức này mô tả các bước cần thiết để deploy một quy trình. Hãy đọc để nắm được quy trình tổng quan.

Đọc phần 'Use the Camunda Modeler to Deploy the Process'. Chú ý đến hai thông tin quan trọng trong hộp thoại deploy: 'Deployment Name' và 'Endpoint Configuration'. URL của endpoint mặc định (http://localhost:8080/engine-rest) chính là địa chỉ REST API của Camunda Run mà bạn vừa khởi chạy.

Bây giờ, hãy xem cách thực hiện trên thực tế.

Tutorial: How to Get Started With Camunda Platform 7 Run

Quay lại video trước đó, phần này sẽ trình diễn trực tiếp toàn bộ quá trình deploy, từ việc vẽ một sơ đồ đơn giản cho đến khi thấy nó xuất hiện trên engine.

Hãy xem kỹ từ 08:19 đến 09:55. Quan sát các bước mà người hướng dẫn thực hiện: Mở Camunda Modeler và tạo một quy trình đơn giản (ví dụ: 'Feed your pet hawk'). Đặt ID và tên cho quy trình trong Properties Panel. Nhấn vào nút Deploy current diagram (biểu tượng máy bay giấy hoặc mũi tên) trên thanh công cụ. Trong hộp thoại hiện ra, giữ nguyên các giá trị mặc định, đặc biệt là REST endpoint, và nhấn Deploy.

Dưới đây là hình ảnh minh họa cho hộp thoại deploy mà bạn sẽ thấy.

Deploying a BPMN Diagram in Camunda Modeler
Hộp thoại 'Deploy diagram' trong Camunda Modeler. Tại đây bạn cần xác định tên của deployment và quan trọng nhất là 'REST endpoint' trỏ đến Camunda engine đang chạy.

Sau khi nhấn "Deploy", nếu thành công, bạn sẽ nhận được một thông báo xác nhận ngay trong Modeler.

Camunda Modeler: Successful Process Deployment
Thông báo 'Process definition deployed' xác nhận rằng quy trình của bạn đã được gửi thành công đến engine.

3. Xác minh và Chạy thử Quy trình

Việc deploy thành công có nghĩa là "bản thiết kế" quy trình của bạn (được gọi là Process Definition) hiện đã được lưu trữ trong cơ sở dữ liệu của engine. Bước tiếp theo là kiểm tra xem nó có thực sự ở đó không và thử khởi tạo một thực thể (instance) từ nó.

Bước 1: Xác minh trong Cockpit

  1. Quay trở lại trình duyệt web và mở Camunda Cockpit (http://localhost:8080/camunda/app/cockpit/).
  2. Làm mới (refresh) trang.
  3. Trên trang dashboard, bạn sẽ thấy rằng số lượng "Process Definitions" đã tăng lên 1. Hãy nhấp vào đó.
  4. Bạn sẽ thấy quy trình "Feed your pet hawk" (hoặc bất kỳ tên nào bạn đã đặt) xuất hiện trong danh sách. Điều này xác nhận việc deploy đã thành công!

Phần tài liệu Deploy the Process (3/6) (resource ID LINK) cũng có một hình ảnh minh họa cho bước này trong phần "Verify the Deployment with Cockpit".

Bước 2: Khởi tạo một Process Instance

Bây giờ, hãy thử "chạy" quy trình này.

  1. Chuyển sang Camunda Tasklist (http://localhost:8080/camunda/app/tasklist/).
  2. Ở góc trên bên phải, nhấp vào nút Start process.
  3. Chọn quy trình "Feed your pet hawk" từ danh sách và nhấn Start.

Ngay lập tức, một Process Instance mới sẽ được tạo ra. Engine sẽ thực thi quy trình từ Start Event và dừng lại ở User Task đầu tiên ("Feed your pet hawk"). Bạn sẽ thấy tác vụ này xuất hiện trong danh sách công việc của mình.

Bạn cũng có thể quay lại Cockpit, làm mới trang, và bạn sẽ thấy có 1 "Running Instance". Nhấp vào đó, bạn có thể xem trực quan trạng thái hiện tại của instance đó trên sơ đồ BPMN, với token đang chờ ở User Task.


Tổng kết bài học

Hôm nay, bạn đã hoàn thành một chu trình phát triển mini: thiết kế, triển khai và chạy thử. Hãy cùng điểm lại những điểm chính:

  • Camunda Run là một công cụ tuyệt vời để có ngay một engine phục vụ cho việc thiết kế và kiểm thử nhanh.
  • Camunda Modeler cho phép bạn deploy trực tiếp một sơ đồ BPMN lên một engine đang chạy thông qua REST API.
  • Thao tác deploy được thực hiện qua nút Deploy và yêu cầu cấu hình REST Endpoint trỏ đến engine (mặc định là http://localhost:8080/engine-rest).
  • Sau khi deploy, bạn có thể dùng Cockpit để xác minh rằng Process Definition đã có trên engine và dùng Tasklist để bắt đầu một Process Instance mới.

Xem trước bài học tiếp theo

Với module này, bạn đã nắm vững các kỹ năng cơ bản để thiết kế và triển khai một quy trình. Tuy nhiên, các quy trình của chúng ta cho đến nay vẫn chưa xử lý dữ liệu thực tế. Làm thế nào để truyền thông tin (ví dụ: mã đơn hàng, số tiền, thông tin khách hàng) từ bước này sang bước khác?

Trong module tiếp theo, "Quản lý Dữ liệu và Biến trong Quy trình", chúng ta sẽ đi sâu vào câu hỏi này. Bài học đầu tiên sẽ tập trung vào việc khai báo và khởi tạo biến quy trình (process variables) khi bắt đầu một quy trình. Đây là khái niệm nền tảng để xây dựng các quy trình động và có ý nghĩa.