1. Architecture
Domain Tool
  • Tổng quan
  • Business | Logic
    • Admin Business Logic
    • Worker & Automation Business
    • Integration & Reliability Business
    • API INTERFACE & TASK MANAGEMENT
    • SYSTEM BUSINESS OVERVIEW
  • Project
    • ADMIN
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Local
        • Staging
        • Product
      • Hướng dẫn sử dụng
        • Tổng quan
        • Đăng nhập
        • Kiểm tra tự động
        • Kiểm tra thủ công
        • Xếp hạng thủ công
        • Xác nhận kiểm tra
        • Xếp hạng tự động
        • Quản lý từ khóa xếp hạng
        • Kiểm tra whitelist
        • Quản lý từ khóa
        • Truy vết tên miền
        • Quản lý volume từ khóa
        • Kiểm tra domain sở hữu
        • Lịch sử check domain
        • Kiểm tra và view source
        • Kiểm tra thương hiệu tên miền
        • Quản lý người dùng
        • Server
    • API
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Staging
        • Product
        • Local
      • API Interface
        • Public API
          • Xác thực
            • login
            • refresh token
          • Thông tin đăng nhập
            • get current user
            • changePasswordUser
          • Quản lý người dùng
            • getUserList
            • createUser
            • getUserItem
            • updateUser
            • deleteUser
            • updateActive
            • Update FCM Token
          • Quản lý từ khóa
            • Get list of Keywords
            • createKeyword
            • getKeywordItem
            • updateKeyword
            • deleteKeyword
            • deleteKeyword
            • totalKeywordBranchGroup
          • Quản lý Proxy
            • Get all Proxies
            • createProxy
            • getProxyItem
            • updateProxy
            • deleteProxy
            • getActiveProxyList
          • Branch
            • getBranchList
            • createBranch
            • getBranchItem
            • updateBranch
            • deleteBranch
          • Check Brand Domain Histories
            • Get list of Check Brand Domain Histories
            • export Check Brand Domain Histories Data
            • checkBrandDomainHistoriesCopy
            • Import data from Excel
            • exportSampleImportFile
          • Check Confirm
            • List Check Confirms
            • Create Check Confirm
            • Bulk create Check Confirms
            • Show Check Confirm
            • Approve or update confirm detail
            • Delete Check Confirm
            • Approve Check Confirm
            • Approve or Reject Check Confirm
            • List approvers
          • Check Owned Domain
            • Check owned domain
          • Check View Source
            • List current user's check view source histories
            • Check view source for domains
            • Delete all histories of current user
          • Tên Miền Công Ty
            • Get a list of company domains
            • Create a new company domain
            • Get a specific company domain
            • Update a specific company domain with tags
            • Delete a specific company domain
            • Import Whitelist Domains from Excel
            • deleteBulkWhitelistDomain
            • Delete company domains by tag ID
          • Xuất dữ liệu excel
            • Export company domains
            • autoCheckDomainRdrExport
            • exportExcelHistoryCheck
            • exportExcelHistoryRecord
            • autoCheckHistoryDomainRecordExport
            • AutoCheckHistoryDomainCheckExport
            • export Keyword Data
            • autoCheckKeywordExport
            • exportKeywordVolumes
            • exportTrackingDomain
            • exportExcelManualRankingKeywordHistory
            • exportExcelManualSessionHistoryCheck
            • exportExcelRankingDomainHistory
            • exportCompareProxies
            • export Ranking Keyword Data
            • autoCheckRankingKeywordExport
            • exportSampleImportFile
            • exportExcelRankingKeywordHistory
            • exportExcelRankingHistory
            • exportExcelDomainRankingHistory
            • exportExcelWhiteListDomainBlock
            • WhitelistBlockExportSampleImportFile
            • exportSampleImportFile
            • ExportWhitelistByTag
          • Copy
            • Copy company domains
            • autoCheckDomainRdrCopy
            • autoCheckHistoryDomainRecordCopy
            • autoCheckHistoryDomainCheckCopy
            • autoCheckKeywordCopy
            • copyKeywordVolumes
            • copyTrackingDomain
            • copyManualRankingKeywordHistory
            • copySessionHistory
            • copySessionHistory
            • manualUploadFileCopy
            • copyRankingDomainHistory
            • autoCheckRankingKeywordCopy
            • copyRankingKeywordHistory
            • copyRankingHistory
            • copyWhiteListDomainBlock
            • copyWhitelistByTag
          • Nhà cung cấp proxy
            • getDataUsageHistory
            • getProxyProviderList
            • createProxyProvider
            • getProxyProviderItem
            • updateProxyProvider
            • deleteProxyProvider
            • updateSortProxyProvider
            • getProviderProxyCombine
            • createProxyProvider
            • detailProviderProxyCombine
            • updateProxyProvider
            • deleteProviderProxyCombine
          • Quản lý Domain
            • getDomainList
            • createDomain
            • getDomainItem
            • updateDomain
            • deleteDomain
          • Chạy thủ công
            • Run Manual Domain
            • Run Manual Check Domain
            • Run Retry Record Domain
            • Run Retry check Domain
            • Run Manual Domain By Type
            • Run Manual Keyword
          • Domain Check Redirect
            • createDomainCheckRDR
            • getDomainCheckRDRItem
            • updateDomainCheckRDR
            • deleteDomainCheckRDR
            • createHistoryDomainCheck
            • updateHistoryDomainCheck
            • deleteHistoryDomainCheck
            • getListWebByKeyword
            • getListAppByKeyword
            • getListAdsByKeyword
            • getDomainCheckRDRList
          • Quản lý summary
            • Get Domain Wiki Statistics
            • Get Domain Wiki Details
            • Export Domain Wiki Data
            • Copy Domain Wiki List
            • Get Domain Wiki Chart Data
            • Get Summaries
            • Get Auto Summaries
            • Get ranking Summaries
          • External API
            • Create external record domain task
          • Flow
            • stop current flow search domain
            • start current flow search domain
            • get metric flow
            • Get domain RDR processing metrics
            • Get keyword processing metrics
            • Get status auto
          • Group
            • getGroupList
            • createGroup
            • getGroupItem
            • updateGroup
            • deleteGroup
          • Lấy lịch sử check domain
            • getHistoryDomainCheckList
            • getHistoryDomainRecordList
            • getHistoryDomainCheckItem
            • getHistoryDomainRecordItem
            • getHistoryDomainChart
            • getHistoryDomainRecordListV2
          • Ranking Keyword
            • setTimeToRunAutoKeyword
            • postRankingDomainHistory
            • compareProxiesDomainHistory
            • compareProxiesDomainHistoryCopy
            • getChartRankingDomainHistory
            • restartRankingDomainHistory
            • Get list of Ranking Keywords
            • createRankingKeyword
            • getRankingKeywordItem
            • updateRankingKeyword
            • deleteRankingKeyword
            • deleteRankingKeyword
            • totalRankingKeywordBranchGroup
            • Get keyword ranking metric
            • retryRankingKeyword
            • Update Order
            • Import data from Excel
            • Update Order by filter
            • deleteAllRankingKeyword
            • getRankingKeywordHistory
            • setTimeToRunAutoRanking
            • getTimeRunAutoRanking
            • Get ranking group list
          • Quản lý Keyword volume
            • 8ceaf215c302596b08d25b1e12e7ab45
            • Get maximum search volume
          • Quản lý Activities
            • getLogs
            • getLogs
            • trackingDomain
          • Manual Ranking Keyword
            • Get manual ranking keyword histories
            • Get manual ranking keyword history metric
            • GetJsonFileRanking
            • Get ranking group list
          • Quản lý Manual
            • Get list of Manual session domain
            • create manual session domain
            • Get Manual session domain
            • Update list manual session history by manual_sessions_id
            • deleteSession
            • Get list session history
            • Update manual session history by id
            • deleteSessionHistory
            • Get process of Process Manual session domain
            • Get session histories
            • Get statistics session history records
            • Get detailed session history records
            • Get Manual upload files
            • Create Manual upload files
            • Delete Manual upload files
            • deleteBulkManualUploadFiles
          • Ranking Branch
            • getRankingBranchList
            • createRankingBranch
            • getRankingBranchItem
            • updateRankingBranch
            • deleteRankingBranch
          • Ranking Group
            • getRankingGroupList
            • createRankingGroup
            • detailRankingGroup
            • updateRankingGroup
            • deleteRankingGroup
          • Reported Domains
            • getReportedDomainList
            • createReportedDomain
            • getReportedDomainItem
            • updateReportedDomain
            • deleteReportedDomain
            • deleteReportedDomain
            • deleteBulkReportedDomain
          • SearchEngine
            • getSearchEngineList
            • createSearchEngine
            • getSearchEngineItem
            • updateSearchEngine
            • deleteSearchEngine
          • Quản lý cụm Server
            • getServerList
            • createServer
            • getServerItem
            • updateServer
            • deleteServer
          • Statistics
            • getStatistics
          • Tag
            • getTagList
            • createTag
            • getTagItem
            • updateTag
            • deleteTag
            • deleteBulkTag
          • Webhook
            • Execute updateAfterRecordDomain action
            • Execute updateAfterRecordDomain action
            • Execute updateAfterRecordDomain action
            • Handle check confirm capture webhook
            • Execute updateAfterRecordDomain action
            • Execute externalRecordDomainSuccess action
            • Execute updateAfterRecordDomain action
            • Execute updateAfterRecordDomain action
            • Execute updateAfterCheckRankingDomain action
            • Execute updateDomainSearchRanking action
            • Execute updateDomainSearchRankingManual action
          • Quản lý whitelist domain block từ hệ thống
            • getWhiteListDomainBlockApiList
            • createWhiteListDomainBlockApi
            • getWhiteListDomainBlockApiItem
            • updateWhiteListDomainBlockApi
            • deleteWhiteListDomainBlockApi
            • deleteBulkWhiteListDomainBlockApi
          • Quản lý whitelist domain
            • getWhitelistDomainList
            • createWhitelistDomain
            • getWhitelistDomainList
            • getWhitelistDomainItem
            • updateWhitelistDomain
            • deleteWhitelistDomain
            • deleteWhitelistDomain
            • Import Whitelist Domains from Excel
            • deleteBulkWhitelistDomain
    • Tool Check
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Local
        • Staging
        • Product
      • API Interface
        • Public API
          • Public API
    • Tool Record
      • Tổng quan
      • Architecture
        • Database Schema
        • System Architecture
        • Code Structure
      • Deployment
        • Local
        • Staging
        • Product
      • API Interface
        • Public API
          • Task System
            • Get All Tasks
            • Create Task (List)
            • Create Task (Single)
            • Update Task
            • Delete Tasks
            • Count Processing Tasks
            • Get System Logs
            • Send single Task to Webhook
            • Send multiple Tasks to Webhooks
          • System Info
            • Root Details
            • Health Check
  1. Architecture

Database Schema

Database Schema (Kiến Trúc Dữ Liệu)#

Kiến trúc Database của hệ thống Check Domain được thiết kế theo hướng module hóa, phục vụ mục đích giám sát Domain, kiểm tra lịch sử hoạt động Ranking/SEO, và quản lý linh hoạt hệ thống Proxy. Hệ thống sử dụng MySQL làm lưu trữ chính, kết hợp với Elasticsearch để truy vấn các luồng Log lớn.
Dưới đây là chi tiết các phân hệ (Entities) cốt lõi của hệ thống:

1. Users & Phân Quyền (RBAC)#

Cấu trúc RBAC sử dụng gói spatie/laravel-permission quản lý quyền chi tiết cho Admin User.
Bảng users (Tài khoản người dùng)
Trường dữ liệuKiểu dữ liệuRàng buộc / Mô tả
idBigIntPrimary Key, Auto Increment
nameStringTên định danh của người dùng
usernameStringTên đăng nhập hệ thống (Unique)
emailStringĐịa chỉ Email (Unique)
passwordStringMật khẩu đã được mã hóa (Hashed)
roleEnumGồm các quyền: admin, editor, viewer
limitIntegerGiới hạn số lượng xử lý/ngày (nếu có)
is_activeEnumY (Active) hoặc N (Inactive)
Lưu ý: Các bảng roles và permissions được tự động sinh ra và quản lý bởi thư viện Spatie, liên kết với users qua bảng trung gian (pivot table).

2. Core Domain & Khách Hàng#

Mapping thông tin tên miền với tổ chức tương ứng, gắn thẻ (Tag), Quản lý White List/Black List.
Bảng domains (Tên miền hệ thống)
Trường dữ liệuKiểu dữ liệuRàng buộc / Mô tả
idBigIntPrimary Key
nameStringTên miền cốt lõi (VD: example.com)
statusEnumTrạng thái tên miền (Y / N)
is_whitelistEnumY (Có), N (Không), U (Chưa xác định)
is_blockBooleanTên miền có đang bị nhà mạng chặn không
block_typeIntegerPhân loại chặn (1: Full, 2: Viettel/VNPT...)
is_x / is_yStringĐánh dấu phân loại nhóm hạ tầng riêng biệt
Các bảng danh mục liên quan:
company_domains: Chứa thông tin tên miền nội bộ công ty (id, link).
branches / groups: Hệ thống phân cấp dự án (Chi nhánh -> Nhóm).
tags: Lưu trữ nhãn dán để phân loại linh hoạt cho các Entities khác.

3. Keywords Management & Search Engine#

Quản lý danh sách từ khóa hệ thống cần theo dõi, kết hợp máy chủ tìm kiếm chuyên biệt để truy vấn rank.
Bảng keywords & ranking_keywords
Trường dữ liệuKiểu dữ liệuRàng buộc / Mô tả
idBigIntPrimary Key
nameStringTên từ khóa (VD: "game bài đổi thưởng")
group_idBigIntForeign Key -> Liên kết tới bảng groups
branch_idBigIntForeign Key -> Liên kết tới bảng branches
is_run_dailyEnumCờ báo hiệu chạy quét hạng tự động mỗi ngày
Bảng search_engines (Máy chủ tìm kiếm)
Lưu trữ cấu hình API cào dữ liệu: engine (Google, Bing...), searchapi_url, searchapi_key, searchapi_gl (Quốc gia), searchapi_hl (Ngôn ngữ).

4. Proxy & Config Engine#

Lưu trữ Proxy Pools để né Rate-limit từ các service bên ngoài. Quản lý linh động các tác vụ CRON.
Bảng proxy_providers (Nhà cung cấp Proxy)
Trường dữ liệuKiểu dữ liệuRàng buộc / Mô tả
idBigIntPrimary Key
nameStringTên NCC (TinSoft, MinProxy, v.v.)
total_dataIntegerTổng dung lượng băng thông (GB/MB)
used_dataIntegerBăng thông đã sử dụng
is_4gEnumXác định proxy mạng 4G hay ADSL (Y/N)
Bảng proxies (Danh sách IP Proxy)
Trường dữ liệuKiểu dữ liệuRàng buộc / Mô tả
proxy_nameStringTên gợi nhớ của Proxy
hostStringIP/Host kết nối
portStringCổng kết nối
usernameStringTài khoản xác thực Proxy (nếu có)
passwordStringMật khẩu xác thực Proxy (nếu có)
is_activeEnumY (Sống), N (Tắt), F (Lỗi/Timeout)
Bảng servers (Cụm máy chủ cào dữ liệu)
Quản lý các server vật lý/VPS thực hiện việc quét: ip_address, limit_process, run_type (auto/manual).

5. Histories & Tracking Logs#

Các bảng ghi lại Logs dữ liệu quá trình check, cron chạy để thống kê và báo cáo. Dữ liệu lớn ở đây được Job đồng bộ sang Elasticsearch.
Bảng history_domain_checks (Lịch sử sống/chết của Domain)
Trường dữ liệuKiểu dữ liệuRàng buộc / Mô tả
domain_idBigIntForeign Key -> domains
statusIntegerTrạng thái (0: Mới, 1: Đang xử lý, 2: Xong, 3: Lỗi)
messageStringThông báo chi tiết (Lý do lỗi, v.v.)
domain_redirectStringURL bị chuyển hướng tới (Nếu có)
image_cloud_pathStringLink S3 ảnh chụp màn hình bằng chứng
video_cloud_pathStringLink S3 video quay màn hình bằng chứng
Bảng ranking_history_domains (Lịch sử thứ hạng từ khóa)
Ghi lại thứ hạng (rank), trạng thái block (block_type) của Domain ứng với từng đợt quét từ khóa (ranking_history_keyword_id).
Data Sync Note: Để đảm bảo hiệu suất truy vấn biểu đồ (Chart), dữ liệu từ các bảng History sẽ được đồng bộ hóa sang Elasticsearch thông qua background job sync:session-histories-to-elasticsearch.
Modified at 2026-03-27 08:42:11
Previous
Tổng quan
Next
System Architecture
Built with