Cài Đặt Workflow



Giới Thiệu

Workflow Settings cho phép bạn cấu hình cách workflow được phân phối và giới hạn thực thi. Các cài đặt này giúp bạn:

  • Nhắm mục tiêu workflow đến quốc gia cụ thể
  • Kiểm soát tốc độ thực thi
  • Chọn thiết bị mục tiêu (desktop, mobile, tablet)
  • Ngăn spam và bảo vệ ngân sách tokens

Workflow settings

{info} Truy cập: Mở Workflow Settings bằng cách nhấp vào nút "Cài đặt" trong trang chi tiết workflow hoặc khi tạo workflow mới.



Nhắm Mục Tiêu & Phân Phối

Chế Độ Quốc Gia

Chọn cách workflow được phân phối theo quốc gia:

Chế Độ Mô Tả Khi Nào Dùng
Tất cả quốc gia Workflow có thể chạy từ bất kỳ quốc gia nào Muốn traffic đa dạng toàn cầu
Bao gồm cụ thể Chỉ cho phép quốc gia trong danh sách Chỉ muốn traffic từ một số quốc gia (VN, US, UK...)
Loại trừ cụ thể Chặn quốc gia trong danh sách Muốn traffic toàn cầu NGOẠI TRỪ một số quốc gia

Ví dụ:

Trường hợp 1: Website tiếng Việt
→ Chế độ: Bao gồm cụ thể
→ Chọn: VN
→ Kết quả: Chỉ IP Việt Nam chạy workflow

Trường hợp 2: Website quốc tế, tránh traffic Trung Quốc
→ Chế độ: Loại trừ cụ thể
→ Chọn: CN
→ Kết quả: Mọi quốc gia NGOẠI TRỪ Trung Quốc

{warning} Yêu cầu gói: Tính năng này yêu cầu gói Basic trở lên. Gói Free chỉ có chế độ "Tất cả quốc gia".


Chọn Quốc Gia

Khi chọn chế độ "Bao gồm" hoặc "Loại trừ", bạn cần chọn danh sách quốc gia:

Cách chọn:

  1. Tìm kiếm: Gõ tên quốc gia hoặc mã quốc gia (VN, US, UK...)
  2. Tick chọn: Nhấp vào checkbox bên cạnh tên quốc gia
  3. Chọn nhóm: Dùng nút nhóm nhanh (Đông Nam Á, Châu Âu, Nói tiếng Anh...)
  4. Xem đã chọn: Bật "Chỉ đã chọn" để chỉ hiển thị quốc gia đã chọn
  5. Xóa tất cả: Nhấp "Xóa tất cả" để bỏ chọn tất cả

Nhóm Quốc Gia

Các nhóm quốc gia có sẵn để chọn nhanh:

Nhóm Quốc Gia Số Lượng
Đông Nam Á VN, TH, MY, SG, ID, PH, MM, KH, LA, BN, TL 11
Nói tiếng Anh US, GB, CA, AU, NZ, IE, ZA, IN, PK, NG 10
Châu Âu GB, DE, FR, IT, ES, NL, BE, AT, CH, SE, NO, DK, FI, PL, PT, GR, CZ, HU, RO 19
Bắc Mỹ US, CA, MX 3
Đông Á CN, JP, KR, TW, HK, MO 6

Mẹo: Nhấp vào nhóm để chọn tất cả quốc gia trong nhóm cùng lúc!


Giới Hạn Thực Thi

Các giới hạn này giúp kiểm soát tốc độ và số lượng thực thi workflow.

Lượt Xem Mỗi Giờ

Mô tả: Số lượt xem tối đa workflow có thể chạy trong 1 giờ.

Giá trị:

  • 0 = Không giới hạn
  • > 0 = Giới hạn cụ thể (ví dụ: 100 lượt/giờ)

Cách hoạt động:

Bạn đặt: views_per_hour = 50

Workflow bắt đầu chạy lúc 10:00 AM
→ 10:00 - 11:00: Chạy tối đa 50 lượt
→ 11:00 - 12:00: Reset, chạy lại tối đa 50 lượt
→ 12:00 - 13:00: Reset, chạy lại tối đa 50 lượt

Khi nào dùng:

  • Muốn traffic đều đặn, tránh đột biến
  • Ngăn Google phát hiện traffic bất thường
  • Kiểm soát tốc độ tăng traffic

Ví dụ:

Trường hợp 1: Website mới, traffic tự nhiên
→ views_per_hour = 20
→ Lý do: Tránh tăng đột ngột, giả lập tăng trưởng tự nhiên

Trường hợp 2: Website lớn, cần traffic nhanh
→ views_per_hour = 200
→ Lý do: Có thể chịu traffic cao mà không bị nghi ngờ

Lượt Xem Mỗi Ngày

Mô tả: Số lượt xem tối đa workflow có thể chạy trong 1 ngày (24 giờ).

Giá trị:

  • 0 = Không giới hạn
  • > 0 = Giới hạn cụ thể (ví dụ: 1000 lượt/ngày)

Cách hoạt động:

Bạn đặt: views_per_day = 500

Ngày 1 (00:00 - 23:59): Chạy tối đa 500 lượt
Ngày 2 (00:00 - 23:59): Reset, chạy lại tối đa 500 lượt

Khi nào dùng:

  • Kiểm soát ngân sách tokens hàng ngày
  • Giới hạn traffic để giống người thật
  • Tránh spam quá nhiều lượt view

Ví dụ:

Trường hợp: Ngân sách 50,000 tokens/ngày
Chi phí workflow: ~100 tokens/lượt
→ views_per_day = 500 (500 x 100 = 50,000 tokens)

Lượt Xem Tối Đa

Mô tả: Tổng số lượt xem tối đa cho toàn bộ vòng đời workflow.

Giá trị:

  • 0 = Không giới hạn (chạy mãi)
  • > 0 = Giới hạn cụ thể (ví dụ: 10,000 lượt tổng)

Cách hoạt động:

Bạn đặt: max_views = 10000

Workflow chạy tích lũy:
→ Ngày 1: 500 lượt (tổng: 500)
→ Ngày 2: 800 lượt (tổng: 1,300)
→ ...
→ Ngày 20: 400 lượt (tổng: 10,000) → DỪNG VĨNH VIỄN

Khi nào dùng:

  • Chiến dịch có thời hạn
  • Kiểm soát tổng ngân sách
  • Tránh workflow chạy quá mức cần thiết

Ví dụ:

Trường hợp: Tăng traffic cho bài viết mới
Mục tiêu: 5,000 lượt view trong 1 tháng
→ max_views = 5000
→ Kết quả: Sau khi đạt 5,000 lượt, workflow tự động dừng

{danger} Cảnh báo: Sau khi đạt max_views, workflow sẽ DỪNG VĨNH VIỄN. Bạn cần tăng giá trị hoặc đặt lại về 0 để tiếp tục chạy.


Khoảng Cách Duy Nhất

Mô tả: Thời gian tối thiểu (tính bằng giây) giữa 2 lần thực thi từ cùng một IP address.

Lưu ý: Mỗi IP có thể chạy nhiều workflows khác nhau đồng thời (tối đa 30 threads), nhưng mỗi workflow cụ thể chỉ được chạy 1 lần per unique_interval cho IP đó.

Giá trị mặc định: 1800 giây (30 phút)

Cách hoạt động:

Bạn đặt: unique_interval = 1800 (30 phút)

IP Address 192.168.1.1:
→ 10:00 AM: Thread 1 chạy workflow #100 → OK
→ 10:05 AM: Thread 2 cố chạy workflow #100 → BỊ CHẶN (cùng IP, chưa đủ 30 phút)
→ 10:05 AM: Thread 2 chạy workflow #101 → OK (workflow khác)
→ 10:30 AM: Thread 1 chạy workflow #100 lần 2 → OK (đã đủ 30 phút)

Giải thích:

  • Cùng IP không thể chạy cùng workflow trong 30 phút
  • Nhưng có thể chạy nhiều workflows KHÁC NHAU đồng thời

Mục đích:

  • Track theo IP address: Phù hợp với cách Google Analytics track visitors
  • Ngăn spam: Cùng IP không thể spam cùng 1 URL trong thời gian ngắn
  • Hỗ trợ multi-threading: Mỗi IP có thể chạy 30 threads, mỗi thread chạy workflow khác nhau
  • Realistic traffic: Trong 30 phút, 1 IP có thể chạy ~180 workflows khác nhau (30 threads × 6 workflows/thread)
  • Rotating proxy: IP mới = visitor mới, không bị giới hạn

Khuyến nghị:

Loại Workflow unique_interval Lý Do
Trang chủ, landing page 3600s (1 giờ) Người thật hiếm khi quay lại trong 1 giờ
Bài viết blog 1800s (30 phút) Có thể đọc lại sau 30 phút
Sản phẩm e-commerce 7200s (2 giờ) Người mua thường so sánh lâu hơn

Ví dụ:

Trường hợp thực tế: 100 IP addresses, mỗi IP có 30 threads

System có 1000 workflows khác nhau
unique_interval = 1800 (30 phút)

Mỗi IP:

- 30 threads chạy đồng thời
- Mỗi thread: 1 workflow/5 phút = 12 workflows/giờ
- Tổng per IP: 30 × 12 = 360 workflows/giờ
- Trong 30 phút: 30 × 6 = 180 workflows khác nhau

100 IPs:
→ Throughput: 100 × 360 = 36,000 workflows/giờ
→ Traffic đa dạng: 100 IP × 180 workflows = 18,000 combinations per 30min
→ Mỗi workflow được thực thi bởi nhiều IP khác nhau

Cài Đặt Bổ Sung

Thiết Bị

Mô tả: Chọn loại thiết bị mà workflow có thể chạy.

Tùy chọn:

  • 🖥️ Desktop - Máy tính (Windows, Mac, Linux)
  • 📱 Mobile - Điện thoại di động (iOS, Android)
  • 📱 Tablet - Máy tính bảng (iPad, Android Tablet)

Cách hoạt động:

Khi app instance chạy workflow, hệ thống sẽ:

  1. Random chọn 1 thiết bị từ danh sách đã chọn
  2. Giả lập thiết bị đó (user agent, screen size, touch events...)
  3. Chạy workflow với thiết bị đã chọn

Ví dụ:

Bạn chọn: Desktop + Mobile

Lần chạy 1 → Hệ thống chọn Desktop
Lần chạy 2 → Hệ thống chọn Mobile
Lần chạy 3 → Hệ thống chọn Desktop
...
→ Traffic đa dạng giữa desktop và mobile

Khuyến nghị:

Loại Website Thiết Bị Nên Chọn Lý Do
Blog, tin tức Desktop + Mobile Traffic hỗn hợp 50/50
E-commerce Mobile (70%) + Desktop (30%) Xu hướng mua sắm trên mobile
SaaS, Dashboard Desktop Người dùng chủ yếu dùng desktop
Game mobile Mobile 100% mobile traffic

{warning} Yêu cầu gói: Tính năng này yêu cầu gói Basic trở lên. Gói Free mặc định chạy cả 3 thiết bị.


{info} Lưu ý: Phải chọn ít nhất 1 thiết bị. Nếu không chọn gì, hệ thống sẽ tự động chọn Desktop + Mobile.



Giới Hạn Theo Gói

Một số tính năng Settings yêu cầu gói cao hơn:

Tính Năng Free Basic Pro Enterprise
Chế độ quốc gia Tất cả Tất cả/Bao gồm/Loại trừ Tất cả/Bao gồm/Loại trừ Tất cả/Bao gồm/Loại trừ
Chọn thiết bị Tất cả Tùy chọn Tùy chọn Tùy chọn
Giới hạn thực thi

Nếu dùng tính năng không có trong gói:

  • Hệ thống sẽ áp dụng giá trị mặc định
  • Hiển thị thông báo yêu cầu nâng cấp gói

Câu Hỏi Thường Gặp

❓ Nên đặt giới hạn bao nhiêu cho website mới?

Khuyến nghị an toàn:

views_per_hour = 10-20
views_per_day = 100-200
unique_interval = 3600 (1 giờ)

Lý do: Website mới nên tăng traffic từ từ, tránh đột biến khiến Google nghi ngờ.

❓ Sự khác biệt giữa views_per_hour và views_per_day?

views_per_hour: Giới hạn TỐC ĐỘ (tránh tăng đột ngột trong 1 giờ)

views_per_day: Giới hạn TỔNG LƯỢNG (kiểm soát ngân sách hàng ngày)

Ví dụ:

views_per_hour = 50
views_per_day = 500

→ Mỗi giờ chạy tối đa 50 lượt
→ Cả ngày chạy tối đa 500 lượt
→ Nếu chạy đều: 50 lượt/giờ x 10 giờ = 500 lượt/ngày

❓ Nếu đặt views_per_hour = 100 nhưng views_per_day = 500 thì sao?

Hệ thống sẽ ưu tiên giới hạn nào đến trước:

Giờ 1: 100 lượt (tổng: 100)
Giờ 2: 100 lượt (tổng: 200)
Giờ 3: 100 lượt (tổng: 300)
Giờ 4: 100 lượt (tổng: 400)
Giờ 5: 100 lượt (tổng: 500) → ĐẠT GIỚI HẠN NGÀY
Giờ 6-24: DỪNG (vì đã đạt views_per_day)

❓ Có thể thay đổi settings khi workflow đang chạy không?

CÓ! Bạn có thể thay đổi settings bất cứ lúc nào:

  • Thay đổi áp dụng NGAY LẬP TỨC cho các lần chạy tiếp theo
  • Các lần chạy đang thực thi KHÔNG bị ảnh hưởng

❓ unique_interval reset khi nào?

unique_interval được tính từ lần chạy cuối cùng của mỗi IP address:

IP Address 192.168.1.1:
→ Chạy workflow #100 lần 1: 10:00 AM
→ unique_interval = 1800s (30 phút)
→ Có thể chạy workflow #100 lại: 10:30 AM

Lưu ý: IP này vẫn có thể chạy workflows KHÁC (101, 102, ...) trong thời gian chờ

KHÔNG RESET theo ngày/giờ như views_per_hour hoặc views_per_day.

❓ unique_interval track theo instance hay IP? Ảnh hưởng thế nào đến multi-threading?

Track theo IP ADDRESS, không phải instance ID.

Multi-threading:

  • 1 IP có thể mở tối đa 30 threads đồng thời
  • Mỗi thread có thể chạy workflow KHÁC NHAU
  • Nhưng KHÔNG THỂ chạy cùng 1 workflow 2 lần trong unique_interval

Ví dụ chi tiết:

IP 192.168.1.1 với 30 threads (10:00 AM):

Thread 1: Chạy workflow #100 → OK
Thread 2: Chạy workflow #101 → OK
Thread 3: Chạy workflow #102 → OK
... (30 threads chạy 30 workflows khác nhau)

Thread 5: Cố chạy workflow #100 (đã chạy ở Thread 1) → BỊ CHẶN
→ Lý do: Cùng IP, workflow #100 chưa hết unique_interval
Thread 5: Chạy workflow #131 → OK (workflow chưa chạy)

10:35 AM (sau 35 phút):
Thread 10: Chạy workflow #100 lại → OK (đã qua 30 phút)

Throughput calculation:

1 workflow execution = 5 phút
1 thread = 12 workflows/giờ
30 threads = 360 workflows/giờ per IP

Trong 30 phút:
30 threads × 6 workflows/thread = 180 workflows
→ 180 workflows KHÁC NHAU (không duplicate)

Với rotating proxy:

Instance A (IP: 1.2.3.4) chạy workflow #100 lúc 10:00
Instance A đổi IP thành 5.6.7.8 (proxy rotation)
Instance A (IP: 5.6.7.8) chạy workflow #100 lúc 10:05 → OK (IP mới, không bị giới hạn)

Kết quả: 2 executions of workflow #100 từ 2 IPs khác nhau

Redis tracking:

Key: ip:192.168.1.1:recent
Type: ZSET (Sorted Set)

Content sau 30 phút hoạt động:
{
"100": 1704556800,
"101": 1704556805,
"102": 1704556810,
...
"280": 1704558600
}

→ Tổng ~180 workflows trong ZSET
→ Memory: ~3.6 KB per IP

❓ Đặt views_per_hour = 0 có nghĩa là gì?

0 = KHÔNG GIỚI HẠN

views_per_hour = 0 → Chạy không giới hạn mỗi giờ
views_per_day = 0 → Chạy không giới hạn mỗi ngày
max_views = 0 → Chạy mãi mãi

❓ Chọn quá nhiều quốc gia có tốn tokens hơn không?

KHÔNG. Số quốc gia không ảnh hưởng đến chi phí tokens.

Chi phí chỉ phụ thuộc vào:

  • Số nodes trong workflow
  • Thời gian Wait
  • Priority multiplier

❓ Workflow đã đạt max_views, làm sao tiếp tục chạy?

Cách 1: Tăng giá trị max_views

max_views: 5000 → 10000

Cách 2: Đặt về 0 (không giới hạn)

max_views: 5000 → 0

Cách 3: Reset total_views về 0 (liên hệ admin)

❓ Tại sao workflow không chạy dù chưa đạt giới hạn?

Kiểm tra các điều kiện:

  1. Trạng thái workflow: Phải là "Hoạt động"
  2. Tokens: Phải đủ tokens trong tài khoản
  3. Giới hạn giờ/ngày: Có thể đã đạt giới hạn hourly/daily
  4. App instances: Có app instances đang online không?
  5. Quốc gia: App instances có khớp với country_mode không?

Tóm lại:

  • Workflow Settings giúp kiểm soát phân phốitốc độ thực thi
  • Giới hạn hợp lý giúp traffic tự nhiên hơntiết kiệm tokens
  • Có thể thay đổi settings bất cứ lúc nào mà không cần dừng workflow
  • Một số tính năng yêu cầu gói Basic trở lên

Bước Tiếp Theo