# 워크플로우 자동화: n8n / Flowise vs WordPress 내장
> wellcoms.co.kr 서버 환경 기준 (n8n, Flowise, WordPress 모두 동일 서버에서 구동 중)
---
# # 아키텍처 비교
```mermaid
graph LR
subgraph WP["WordPress 내장"]
direction TB
WP_HOOK["WP Hook 트리거"]
WP_FUNC["PHP 함수 실행"]
WP_CTX["WP 컨텍스트 직접 접근"]
WP_HOOK --> WP_FUNC --> WP_CTX
end
subgraph N8N["n8n / Flowise"]
direction TB
N8N_WEB["웹훅 수신"]
N8N_FLOW["시각적 워크플로우"]
N8N_LLM["LLM / 외부 API"]
N8N_CB["WP REST API 콜백"]
N8N_WEB --> N8N_FLOW --> N8N_LLM --> N8N_CB
end
WP_HOOK -.->|"단순 작업"| WP_FUNC
WP_HOOK -.->|"복잡 작업"| N8N_WEB
N8N_CB -.->|"결과 반영"| WP_CTX
```
---
# # n8n / Flowise (전용 워크플로우 플러그인)
## # 장점
| 항목 | 설명 |
|------|------|
| 시각적 워크플로우 에디터 | 드래그앤드롭으로 복잡한 분기/병렬 처리 설계. 비개발자도 수정 가능 |
| LLM 네이티브 | 프롬프트 체이닝, RAG 파이프라인, AI 에이전트 구성이 즉시 가능 (Flowise 특화) |
| 400+ 외부 서비스 연동 | Slack, Gmail, Notion, Google Sheets, DB 등 커넥터 내장. API 스펙 몰라도 연결 |
| WP 독립성 | WP 업데이트/플러그인 충돌/사이트 장애와 완전 분리. WP가 죽어도 자동화는 살아있음 |
| 디버깅/모니터링 | 실행 로그, 에러 알림, 재시도 메커니즘 기본 내장 |
| 협업 | 비개발자도 UI에서 워크플로우 수정 가능 |
## # 단점
| 항목 | 설명 |
|------|------|
| 리소스 추가 소모 | 별도 컨테이너/프로세스 상시 구동 (현재 서버에 이미 운영 중) |
| 지연 | WP 이벤트 → 외부 웹훅 → n8n 처리 → WP API 콜백, 왕복 지연 발생 |
| 이중 관리 | WP 설정 + n8n 설정 두 곳을 관리해야 함 |
| 과의장 가능성 | 단순 작업(글 발행 시 메일 발송 등)에는 오버엔지니어링 |
---
# # WordPress 내장 (WP-Cron + Hooks + REST API)
## # 장점
| 항목 | 설명 |
|------|------|
| 제로 인프라 | 추가 프로세스 없이 WP 내에서 즉시 실행 |
| 즉각 반응 | `publish_post`, `woocommerce_order_status_completed` 등 훅이 밀리초 단위 트리거 |
| 컨텍스트 직접 접근 | `$post`, `$order`, 사용자 세션 등 WP 전역 상태에 직접 접근 |
| 단일 관리 지점 | 테마/플러그인 안에 모든 로직, git push 한 번에 기능+자동화 동시 배포 |
| 의존성 최소 | 외부 서비스 의존 없이 WP 생태계 내에서 완결 |
## # 단점
| 항목 | 설명 |
|------|------|
| LLM 연동 수동 구현 | OpenAI/Anthropic API 호출을 `wp_remote_post`로 직접. 프롬프트 관리, 스트리밍, 에러 처리 모두 수동 |
| 확장성 한계 | 복잡한 분기/병렬/재시도 로직을 PHP로 작성 시 유지보수 어려움 |
| WP-Cron 신뢰성 | 기본이 페이지 로드 트리거. 트래픽 없으면 실행 안 됨 → 시스템 cron 설정 필요 |
| 외부 서비스 연동 | 각 API마다 인증/리퀘스트/에러 처리를 일일이 구현해야 함 |
| 장애 전파 | 자동화 코드가 WP 프로세스 내에서 실행 → 메모리 릭/타임아웃이 사이트 전체에 영향 |
---
# # 작업별 선택 기준
```mermaid
flowchart TD
START(["자동화 작업 발생"]) --> Q1{"LLM이 관여?"}
Q1 -->|Yes| Q2{"외부 서비스 2개 이상?"}
Q1 -->|No| Q3{"WP 컨텍스트 직접 접근 필요?"}
Q2 -->|Yes| N8N(["n8n / Flowise"])
Q2 -->|No| Q4{"복잡한 분기/재시도 필요?"}
Q3 -->|Yes| WP(["WordPress 내장"])
Q3 -->|No| Q5{"즉각 반응 필요?"}
Q4 -->|Yes| N8N
Q4 -->|No| Q6{"단순 API 호출?"}
Q5 -->|Yes| WP
Q5 -->|No| Q7{"스케줄링?"}
Q6 -->|Yes| WP
Q6 -->|No| N8N
Q7 -->|Yes| N8N
Q7 -->|No| WP
style N8N fill:#0066FF,color:#fff
style WP fill:#00D4AA,color:#fff
```
## # 시나리오별 추천
| 상황 | 추천 | 이유 |
|------|------|------|
| 주문 완료 시 관리자 카카오톡 알림 | **WP 내장** | 단순 훅 + API 호출로 충분 |
| 매일 새벽 3시 최근 리뷰 분석, 부정리뷰 감지 | **n8n** | 스케줄링 + LLM 호출 + 결과 저장 |
| 고객 문의 → AI 답변 초안 → Slack 전송 | **n8n + Flowise** | 멀티스텝 + LLM + 외부 서비스 연동 |
| 상품 재고 부족 시 공급사 발주 이메일 | **WP 내장** | 훅 기반이고 WP 주문 컨텍스트 직접 접근 필요 |
| 사용자 행동 기반 개인화 이메일 (조건 분기 5단계) | **n8n** | 복잡한 분기/지연/재시도 로직 |
| 웹사이트 실시간 챗봇 | **Flowise** | RAG + 대화형 LLM 파이프라인 전문 |
| WP-Cron 대체 스케줄러 | **n8n** | 시스템 크론 수준의 신뢰성 |
| 상품 데이터 크롤링 후 자동 등록 | **n8n** | 외부 API 수집 + 데이터 변환 + WP REST API 입력 |
---
# # 결론
```mermaid
flowchart LR
SIMPLE["WP 안에서 처리 가능"] --> WP_BOX["WordPress 내장"]
COMPLEX["LLM 관여 / 외부 서비스 2개+"] --> N8N_BOX["n8n / Flowise"]
WP_BOX --> NOTE1("단순 훅, WP 컨텍스트 필요, 즉각 반응")
N8N_BOX --> NOTE2("시각적 설계, LLM 파이프라인, 외부 연동")
style WP_BOX fill:#00D4AA,color:#fff
style N8N_BOX fill:#0066FF,color:#fff
```
- **WP 안에서 처리 가능한 일** → WP 내장 (단순 훅, WP 컨텍스트 필요, 즉각 반응)
- **LLM이 관여하거나 외부 서비스 2개 이상 엮어야 하는 일** → n8n / Flowise
| 이전 | 맥사인 전광판 | 김재석 | 2026-04-29 |
|---|---|---|---|
| 다음 | 홈페이지 개발 기록 | 김재석 | 2026-04-28 |