•20 min read

Chạy nước rút đám mây 13 ngày: Biến tín dụng GCP sắp hết hạn thành tài sản vĩnh viễn không cần bảo trì

Chạy nước rút đám mây 13 ngày: Biến tín dụng GCP sắp hết hạn thành tài sản vĩnh viễn không cần bảo trì

Đây là một cảnh tượng quen thuộc đối với bất kỳ nhà phát triển nào đã đăng ký dùng thử dịch vụ đám mây hoặc tham dự hội nghị: email từ Google Cloud Platform, một lời nhắc nhở lịch sự nhưng kiên quyết rằng tín dụng khuyến mại của bạn sắp biến mất vào không gian kỹ thuật số. Trong trường hợp của tôi, đó là một thông báo nhấp nháy trong bảng điều khiển GCP: 175,42 đô la tín dụng khuyến mại (còn lại 58%) sẽ hết hạn sau 13 ngày.

Trong nhiều năm, tôi đã chứng kiến các đồng nghiệp và người được cố vấn rơi vào hai cái bẫy dễ đoán với những khoản tín dụng này. Đầu tiên là sự tê liệt; họ không làm gì cả, và các khoản tín dụng hết hạn, một sự lãng phí hoàn toàn giá trị tiềm năng. Thứ hai là nguy hiểm hơn: họ tạo ra cái mà tôi gọi là "Cơ sở hạ tầng ma cà rồng". Một cụm Kubernetes, một cơ sở dữ liệu PostgreSQL được quản lý, một máy chủ web hoạt động 24/7—các dịch vụ có vẻ hiệu quả nhưng được thiết kế để hoạt động liên tục. Vào Ngày 14, nanh vuốt xuất hiện. Cơ sở hạ tầng hoặc bị sập hoặc, tệ hơn, âm thầm bắt đầu tính phí vào thẻ tín dụng cá nhân của họ.

Tôi quyết định lần này sẽ khác. Đây không phải là việc xây dựng một dự án sở thích sẽ chết trong hai tuần. Đây là một cuộc chạy nước rút chiến lược, cường độ cao để chuyển đổi sức mạnh tính toán phù du thành tài sản kỹ thuật số vĩnh viễn, có giá trị cao. Mục tiêu: khai thác mọi xu giá trị và kết thúc với hóa đơn sau khi hết hạn chính xác là 0,00 đô la.

Đây là câu chuyện về cuộc chạy nước rút 13 ngày của tôi và khuôn khổ tôi đã phát triển: Quy tắc Chuyển đổi Tài sản.

Audio Briefing
0:00 / 0:00

Tình thế tiến thoái lưỡng nan: Đếm ngược 13 ngày & Bẫy cơ sở hạ tầng ma cà rồng

Việc sử dụng đám mây truyền thống về cơ bản không phù hợp với bản chất của các khoản tín dụng khuyến mại. Một cụm GKE, một phiên bản Cloud SQL, hoặc thậm chí một e2-medium Compute Engine VM đơn giản sẽ phát sinh chi phí mỗi giây hoạt động. Giá trị của chúng bắt nguồn từ việc luôn hoạt động. Khi bạn sử dụng các khoản tín dụng phù du để tài trợ cho chúng, bạn không xây dựng một sản phẩm; bạn chỉ đang thuê một khoản nợ.

Khoảnh khắc các khoản tín dụng hết hạn, bạn phải đối mặt với một lựa chọn khó khăn:

  1. Thanh toán: Để dịch vụ tiếp tục chạy và bắt đầu trả tiền thật, thường là cho một thứ không tạo ra doanh thu.
  2. Hủy bỏ: Vội vàng xóa mọi thứ, mất tất cả công việc và thời gian hoạt động mà bạn nghĩ mình đã xây dựng.

Đây là Bẫy Cơ sở hạ tầng Ma cà rồng. Nó dụ dỗ bạn bằng lời hứa về một ứng dụng "thực sự", chỉ để lại cho bạn một hóa đơn định kỳ. Mô hình tư duy đúng đắn là coi các khoản tín dụng sắp hết hạn không phải là ngân sách định kỳ, mà là một khoản chi phí vốn một lần. Bạn có một lượng vốn cố định (175 đô la) và một thời gian biểu cố định (13 ngày) để tạo ra thứ gì đó có giá trị lâu dài.

Advertisement

Khung chuyển đổi tài sản: Tính toán phù du -> Tạo tác vĩnh viễn

Quy tắc chuyển đổi tài sản rất đơn giản: Không bao giờ chi tiêu tín dụng phù du cho thời gian hoạt động định kỳ. Chuyển đổi chúng thành tài sản kỹ thuật số tĩnh, có giá trị cao, vĩnh viễn.

Những tài sản này là những thứ bạn tạo ra một lần và sở hữu mãi mãi. Chúng có thể được lưu trữ trên các nền tảng có gói miễn phí hào phóng (GitHub, Vercel, Cloudflare R2) với chi phí liên tục là 0 đô la. Các dịch vụ đám mây chuyên biệt, đắt tiền được sử dụng như các nhà máy cấp công nghiệp, chứ không phải là nơi lưu trữ lâu dài.

Đây là kiến trúc của cuộc chạy nước rút của tôi:

graph TD
    A["Ephemeral GCP Credits ($175)"] --"Funds"--> B
    subgraph "Ephemeral GCP Compute Engines"
        direction LR
        B1[Vertex AI<br/>Gemini 2.5 Pro & Flash]
        B2[Cloud Text-to-Speech<br/>Journey & Studio Voices]
        B3[GCE Spot GPUs<br/>NVIDIA L4/T4]
        B4[BigQuery<br/>Public Dataset Mining]
    end
    B = B1 & B2 & B3 & B4

    B --"Generates"--> C

    subgraph "Permanent Digital Artifacts"
        direction LR
        C1["In-depth Guides<br/>(Markdown/MDX)"]
        C2["Neural Audio Files<br/>(48kHz MP3s)"]
        C3["Pre-rendered Video<br/>(1080p MP4s)"]
        C4["Analytical Datasets<br/>(Parquet/DuckDB)"]
    end
    C = C1 & C2 & C3 & C4

    C --"Hosted on"--> D

    subgraph "$0/mo Permanent Hosting"
        direction LR
        D1["Git Repo<br/>(GitHub/GitLab)"]
        D2["Static Site Hosting<br/>(Vercel/Netlify)"]
        D3["Object Storage<br/>(Cloudflare R2)"]
        D4["Personal Backup<br/>(Google Drive via Rclone)"]
    end
    D = D1 & D2 & D3 & D4

Kế hoạch của tôi là sử dụng số dư tín dụng 175 đô la của mình để "sản xuất" bốn loại tài sản:

  1. Nội dung SEO: Sử dụng các mô hình Gemini của Vertex AI để nghiên cứu và soạn thảo hàng chục bài viết kỹ thuật.
  2. Âm thanh thần kinh: Chuyển đổi các bài viết đó thành âm thanh chất lượng cao theo phong cách podcast bằng cách sử dụng các giọng nói Text-to-Speech tốt nhất của Google.
  3. Tài sản được kết xuất bằng GPU: Sử dụng GPU Spot giá rẻ cho các tác vụ xử lý hàng loạt như kết xuất video hoặc đào tạo mô hình ML.
  4. Tập dữ liệu phân tích: Khai thác các tập dữ liệu công khai của BigQuery để tìm kiếm thông tin chi tiết độc đáo và lưu kết quả dưới dạng các tệp Parquet nhỏ gọn.

Bảng cân đối kế toán 175 đô la: Chi tiết tính toán giá & phân bổ

Trước khi viết một dòng mã nào, tôi đã lập kế hoạch ngân sách của mình. Điều quan trọng là phải hiểu kinh tế đơn vị của từng dịch vụ.

Dịch vụPhân bổ của tôiChi phí đơn vịĐề xuất giá trị & Lý do
Vertex AI (Gemini)$75$0.50/1M token đầu vào (Gemini 2.5 Pro)
$0.06/1M token đầu vào (Gemini 2.5 Flash)
Tại sao: Để tạo nội dung nháp chất lượng cao. Quan trọng là, việc sử dụng Vertex AI được bao gồm bởi tín dụng GCP, không giống như Google AI Studio thường sử dụng hệ thống trả trước riêng. Với mức giá này, 75 đô la có thể tạo hoặc phân tích hàng chục triệu từ—một thư viện nội dung hoàn chỉnh.
Cloud Text-to-Speech$40~$16/1M ký tự (Neural2/Studio Voices)Tại sao: Các giọng nói en-US-Journey của Google là hiện đại nhất và nghe tự nhiên hơn nhiều so với các giọng nói tiêu chuẩn. 40 đô la mua cho tôi ~2,5 triệu ký tự, hoặc khoảng 400.000 từ. Điều đó đủ cho hơn 30 giờ âm thanh chất lượng cao, một tác vụ sẽ tốn hàng trăm đô la trên một dịch vụ đăng ký như ElevenLabs.
Compute Engine Spot GPUs$45$0.18/giờ (NVIDIA T4 Spot)
$0.30/giờ (NVIDIA L4 Spot)
Tại sao: Các phiên bản Spot hoàn hảo cho mô hình của chúng tôi—chúng cung cấp sức mạnh lớn với mức giảm giá ~70-90%, với sự đánh đổi là chúng có thể bị chiếm quyền. Đối với các công việc hàng loạt như kết xuất cảnh Blender hoặc chạy một lô suy luận ML cục bộ, điều này là lý tưởng. 45 đô la cho tôi ~150 giờ thời gian GPU L4.
BigQuery Analytics$151TB/tháng đầu tiên miễn phí, sau đó ~$6.25/TBTại sao: Khai thác các tập dữ liệu công khai để tìm kiếm thông tin chi tiết. Ví dụ, phân tích tập dữ liệu bigquery-public-data.github_repos.contents để tìm xu hướng trong các tệp package.json. Ngân sách 15 đô la của tôi là một khoản đệm cho các truy vấn vượt quá gói miễn phí 1TB hào phóng.
Tổng cộng$175

Quy trình sản xuất: 4 tập lệnh tự động hóa đã được thử nghiệm trong thực tế

Lý thuyết thì rẻ. Dưới đây là các tập lệnh chính xác, đã được thử nghiệm trong thực tế mà tôi đã sử dụng để thực hiện cuộc chạy nước rút này.

Tập lệnh 1: Thiết lập tài khoản dịch vụ (Nền tảng)

Đầu tiên, hãy tạo một tài khoản dịch vụ chuyên dụng với nguyên tắc đặc quyền tối thiểu. Đừng chạy bằng tài khoản người dùng của bạn. Điều này ngăn các tập lệnh chạy tự do có quyền truy cập toàn quyền.

# 1. Set up your project and variables
export PROJECT_ID="your-gcp-project-id"
export SA_NAME="asset-converter-sa"
export SA_EMAIL="${SA_NAME}@${PROJECT_ID}.iam.gserviceaccount.com"

gcloud config set project ${PROJECT_ID}

# 2. Create the service account
gcloud iam service-accounts create ${SA_NAME} \
  --display-name="Service Account for Asset Conversion Sprint"

# 3. Grant minimal, specific IAM roles
# For Vertex AI Gemini access
gcloud projects add-iam-policy-binding ${PROJECT_ID} \
  --member="serviceAccount:${SA_EMAIL}" \
  --role="roles/aiplatform.user"

# For Cloud TTS and other service usage APIs
gcloud projects add-iam-policy-binding ${PROJECT_ID} \
  --member="serviceAccount:${SA_EMAIL}" \
  --role="roles/serviceusage.serviceUsageConsumer"

# For BigQuery access
gcloud projects add-iam-policy-binding ${PROJECT_ID} \
  --member="serviceAccount:${SA_EMAIL}" \
  --role="roles/bigquery.user"

# 4. Create and download the key file
gcloud iam service-accounts keys create "gcp_credentials.json" \
  --iam-account=${SA_EMAIL}

# 5. Set the environment variable for your scripts
export GOOGLE_APPLICATION_CREDENTIALS="$(pwd)/gcp_credentials.json"

echo "✅ Service account setup complete. Key saved to gcp_credentials.json"

Tập lệnh 2: Trình tạo nội dung hàng loạt Vertex AI

Tập lệnh Python này sử dụng SDK google-genai hiện đại để tương tác với Gemini trên Vertex AI. Nó đọc danh sách các lời nhắc từ một tệp và tạo các tệp markdown tương ứng.

# filename: generate_articles.py
import google.generativeai as genai
import os
from pathlib import Path

# IMPORTANT: This flag tells the SDK to use Vertex AI,
# which is billed to your GCP project and uses your credits.
genai.configure(vertexai=True)

# Configuration
MODEL_NAME = "gemini-2.5-flash" # Use Flash for speed/cost, Pro for quality
OUTPUT_DIR = Path("./generated_articles")
PROMPTS_FILE = "prompts.txt"
SYSTEM_PROMPT = """
You are an expert technical writer for a senior software engineering blog.
Your tone is deeply technical, precise, and practical.
When asked to write an article, provide a complete, well-structured markdown file.
Include code snippets with language tags where appropriate.
Do not include any preamble like "Here is the article you requested."
"""

def main():
    if not OUTPUT_DIR.exists():
        OUTPUT_DIR.mkdir()

    model = genai.GenerativeModel(MODEL_NAME, system_instruction=SYSTEM_PROMPT)

    with open(PROMPTS_FILE, "r") as f:
        prompts = [line.strip() for line in f if line.strip()]

    for i, prompt in enumerate(prompts):
        print(f"Generating article {i+1}/{len(prompts)} for prompt: '{prompt[:50]}...'")
        try:
            response = model.generate_content(prompt)
            
            # Create a filename-safe version of the prompt
            slug = "".join(c for c in prompt.lower() if c.isalnum() or c == ' ')
            slug = "-".join(slug.split())[:50]
            output_path = OUTPUT_DIR / f"{i+1:02d}-{slug}.md"

            with open(output_path, "w") as out_file:
                out_file.write(response.text)
            
            print(f"  -> Saved to {output_path}")

        except Exception as e:
            print(f"  -> ERROR generating article: {e}")

if __name__ == "__main__":
    main()

Tôi đã cung cấp cho tập lệnh này một tệp prompts.txt với 50 ý tưởng bài viết khác nhau, và trong vòng một giờ (và với khoảng 2 đô la), tôi đã có 50 bài viết nháp được cấu trúc tốt trong thư mục generated_articles của mình.

Tập lệnh 3: Bộ tổng hợp âm thanh thần kinh

Tập lệnh này lấy một tệp văn bản (như một trong các bài viết đã tạo của chúng ta) và sử dụng giọng nói Journey chất lượng cao của Google để tạo một tệp MP3.

# filename: synthesize_audio.py
from google.cloud import texttospeech
import sys

def synthesize_text_to_audio(text_file_path: str, output_file_path: str):
    """Synthesizes speech from the input file of text."""
    
    client = texttospeech.TextToSpeechClient()

    with open(text_file_path, "r") as f:
        text_content = f.read()

    # The API has a 5000 byte limit per request. We'll just use the first 4900 bytes for this example.
    # A production script would chunk the text into multiple requests and stitch the audio.
    input_text = texttospeech.SynthesisInput(text=text_content[:4900])

    # Voice selection is critical. Journey voices are amazing.
    voice = texttospeech.VoiceSelectionParams(
        language_code="en-US", name="en-US-Journey-F"
    )

    # Audio configuration for high quality
    audio_config = texttospeech.AudioConfig(
        audio_encoding=texttospeech.AudioEncoding.MP3,
        speaking_rate=0.95,
        effects_profile_id=['headphone-class-device'] # For crisp, clear audio
    )

    print(f"Synthesizing audio for {text_file_path}...")
    response = client.synthesize_speech(
        request={"input": input_text, "voice": voice, "audio_config": audio_config}
    )

    # The response's audio_content is binary.
    with open(output_file_path, "wb") as out:
        out.write(response.audio_content)
        print(f'Audio content written to file "{output_file_path}"')

if __name__ == "__main__":
    if len(sys.argv) != 3:
        print("Usage: python synthesize_audio.py <input_text_file> <output_mp3_file>")
        sys.exit(1)
    
    synthesize_text_to_audio(sys.argv[1], sys.argv[2])

Tôi đã chạy tập lệnh này trong một vòng lặp trên các bài viết đã tạo của mình, tạo ra một thư viện song song các nội dung âm thanh sẵn sàng để tải lên hoặc sử dụng trong video.

Tập lệnh 4: Trình khởi chạy công nhân GPU Spot GCE dùng một lần

Đây không phải là một tập lệnh duy nhất mà là một quy trình hai phần: một lệnh gcloud để khởi chạy VM Spot, và một tập lệnh khởi động mà VM tự động chạy. Điều quan trọng là sử dụng rclone để đồng bộ hóa kết quả với một vị trí vĩnh viễn, miễn phí (như Google Drive) trước khi VM bị chiếm quyền.

Đầu tiên, thiết lập rclone để kết nối với Google Drive của bạn. Đây là thiết lập một lần trên máy cục bộ của bạn: rclone config.

Lệnh gcloud để khởi chạy công nhân:

# Assumes you have a 'startup-script.sh' in your current directory
gcloud compute instances create gpu-spot-worker \
    --project=${PROJECT_ID} \
    --zone=us-central1-a \
    --machine-type=g2-standard-4 \
    --accelerator=type=nvidia-l4,count=1 \
    --provisioning-model=SPOT \
    --instance-termination-action=DELETE \
    --maintenance-policy=TERMINATE \
    --image-family=debian-11 \
    --image-project=debian-cloud \
    --boot-disk-size=50GB \
    --scopes=https://www.googleapis.com/auth/cloud-platform \
    --metadata-from-file=startup-script=./startup-script.sh

Tập lệnh startup-script.sh chạy trên VM:

#!/bin/bash
echo "Startup script running!"

# Install necessary software (e.g., Blender, Python, CUDA drivers, rclone)
sudo apt-get update
sudo apt-get install -y blender unzip

# Install rclone
curl https://rclone.org/install.sh | sudo bash

# Rclone needs a config file. You can't run 'rclone config' interactively.
# The best way is to pre-create the rclone.conf on your local machine
# and pass it to the VM, for example via a GCS bucket or embedded here.
# For simplicity, let's assume it's fetched from a secure GCS bucket.
# gsutil cp gs://my-secure-bucket/rclone.conf /root/.config/rclone/rclone.conf

# --- YOUR COMPUTE-INTENSIVE BATCH JOB GOES HERE ---
# Example: Render a frame from a Blender project
# blender -b /path/to/project.blend -o /tmp/frame_### -f 1

# For this example, let's just create a dummy result file
echo "Batch job completed at $(date)" > /tmp/result.txt
mkdir -p /tmp/render_output
touch /tmp/render_output/frame_001.png
touch /tmp/render_output/frame_002.png

# --- SYNC RESULTS TO PERMANENT STORAGE ---
# This is the most important step. Sync data out before preemption.
# "GDrive" is the name of the remote you configured in rclone.
echo "Syncing results to Google Drive..."
rclone copy /tmp/render_output GDrive:GCP_Sprint_Output/$(date +%F-%H%M%S) -v

echo "Sync complete. Worker can now be terminated."

# The script ends, and the VM will be torn down on preemption or completion.

Mô hình này cực kỳ mạnh mẽ. Bạn có thể khởi động hàng trăm công nhân giá rẻ này để song song hóa một tác vụ lớn, biết rằng đầu ra của họ đang được lưu trữ an toàn vào bộ nhớ vĩnh viễn.

Advertisement

Gỡ bỏ & Giao thức an toàn vào Ngày 12

Với một ngày còn lại, tôi đã khởi xướng giao thức "Hóa đơn 0,00 đô la được đảm bảo".

  1. Đặt cảnh báo thanh toán cứng: Trong GCP Billing, tôi đã đặt cảnh báo cho 160 đô la (thấp hơn nhiều so với tín dụng 175 đô la của tôi). Điều này hoạt động như một chuông báo cháy. Nếu tôi nhận được email này, tôi biết có điều gì đó không ổn và tôi cần tắt mọi thứ ngay lập tức.
  2. Săn lùng ma cà rồng đám mây: Tôi đã chạy một loạt các lệnh gcloud để tìm bất kỳ tài nguyên có thể thanh toán nào còn sót lại không hiển thị là "phiên bản đang chạy".
    • IP tĩnh không gắn kèm: gcloud compute addresses list --filter="status=RESERVED AND addressType=EXTERNAL AND purpose=GCE_ENDPOINT" Những thứ này có giá khoảng 0,01 đô la/giờ, hoặc ~7 đô la/tháng.
    • Đĩa cứng vĩnh viễn bị bỏ rơi: gcloud compute disks list --filter="users:[]" Đĩa không gắn kèm với bất kỳ VM nào. SSD có thể đắt.
    • Ảnh chụp nhanh cũ: gcloud compute snapshots list Ảnh chụp nhanh cũng phát sinh chi phí lưu trữ.
    • Gói Cloud Storage: gsutil ls Xem lại tất cả các gói. Mặc dù 5GB đầu tiên miễn phí, nhưng việc dọn dẹp là một thực hành tốt.
  3. Xóa tài khoản dịch vụ: Là bước cuối cùng, tôi đã xóa tài khoản dịch vụ asset-converter-sa và khóa của nó. Điều này ngay lập tức thu hồi tất cả quyền truy cập theo chương trình mà các tập lệnh của tôi có, hoạt động như một công tắc tắt chính.
  4. Tận dụng gói "Luôn miễn phí": Vẻ đẹp của khuôn khổ này là các tài sản đã tạo của tôi hiện đang sống trên các nền tảng thực sự là một phần của "Gói Luôn miễn phí Toàn cầu". Các tệp Markdown của tôi nằm trong một kho lưu trữ GitHub, được phục vụ qua Vercel. Các tệp MP3 và MP4 của tôi nằm trong Cloudflare R2 và Google Drive. Tổng hóa đơn hàng tháng của tôi để lưu trữ các tài sản vĩnh viễn này? 0 đô la.

Câu hỏi thường gặp tương tác hiện đại

Câu hỏi thường gặp

Có, hoàn toàn. Đây là một điểm quan trọng và thường bị hiểu lầm. Khi bạn sử dụng các mô hình Gemini thông qua API Vertex AI, việc sử dụng của bạn được tính vào tài khoản thanh toán của dự án GCP của bạn. Tín dụng khuyến mại được áp dụng cho tài khoản này, làm cho các cuộc gọi API của bạn miễn phí cho đến khi tín dụng cạn kiệt. Điều này khác với giao diện web Google AI Studio, có thể sử dụng một hệ thống tín dụng hoặc thanh toán riêng. Điều quan trọng là sử dụng SDK google-genai chính thức với vertexai=True hoặc API REST của Vertex AI.

Đây là vấn đề về quy mô và khả năng. Một VPS 5 đô la không thể cạnh tranh với GPU NVIDIA L4, cung cấp hiệu suất cao hơn nhiều lần cho các tác vụ có thể song song hóa như học máy, xử lý dữ liệu hoặc kết xuất 3D. Mô hình "Chuyển đổi tài sản" là về việc tận dụng các khả năng độc đáo, chi phí cao (như GPU và các mô hình AI tiên tiến) mà thông thường không thể tiếp cận được với ngân sách nhỏ. Bạn không trả tiền cho thời gian hoạt động; bạn trả tiền cho vài giờ truy cập vào một siêu máy tính.

Đây là thách thức cốt lõi của các phiên bản spot. Một quy trình làm việc mạnh mẽ phải chịu lỗi và bất biến. Đối với một công việc kết xuất, điều này có thể có nghĩa là kết xuất các khung hình riêng lẻ và lưu từng khung hình khi hoàn thành. Nếu VM bị chiếm quyền, VM tiếp theo có thể bắt đầu từ nơi VM trước đã dừng lại bằng cách kiểm tra xem các khung hình nào đã tồn tại trong thư mục đầu ra. Đối với xử lý dữ liệu, bạn sẽ sử dụng điểm kiểm tra—định kỳ lưu trạng thái tính toán của bạn vào bộ nhớ vĩnh viễn (như GCS hoặc ổ đĩa được đồng bộ hóa rclone).

Đối với mục đích của loại dự án này, có. rclone sử dụng xác thực OAuth2 tiêu chuẩn và tất cả việc truyền dữ liệu đều qua HTTPS. Khi sử dụng tài khoản dịch vụ, bạn đang cấp các quyền cụ thể cho một quy trình tự động, điều này có thể an toàn hơn các thao tác thủ công. Đối với dữ liệu có độ nhạy cao, bạn có thể chọn khả năng mã hóa của rclone hoặc đồng bộ hóa với một môi trường được kiểm soát hơn như một gói Cloud Storage riêng tư. Độ tin cậy là tuyệt vời để đồng bộ hóa các tạo tác cuối cùng.

Kết luận: Hãy là một nhà sản xuất, không phải là một người tiêu dùng

Vào Ngày 14, tín dụng GCP của tôi đã hết hạn. Hóa đơn cuối cùng của tôi cho chu kỳ là 174,89 đô la, tất cả đều được bao trả bởi chương trình khuyến mãi. Hóa đơn của tôi cho tháng tiếp theo là 0,00 đô la.

Nhưng tôi không còn lại gì cả. Tôi có:

  • ~50 bài viết kỹ thuật nháp, sẵn sàng để chỉnh sửa và xuất bản.
  • ~20 giờ âm thanh thần kinh chất lượng cao.
  • Một bộ tài sản video đã được kết xuất trước cho các dự án trong tương lai.
  • Một tập dữ liệu mới, độc đáo được khai thác từ các hồ sơ công khai.

Đây là những tài sản vĩnh viễn, có giá trị mà tôi sở hữu hoàn toàn. Chúng sẽ tạo ra lưu lượng truy cập SEO, đóng vai trò là các tác phẩm trong danh mục đầu tư và hình thành cơ sở cho công việc trong tương lai trong nhiều năm tới—tất cả với "chi phí" của một chiếc đồng hồ đang chạy và một kế hoạch chiến lược.

Lần tới khi bạn thấy email "tín dụng sắp hết hạn" đó, đừng hoảng sợ hay bỏ qua nó. Hãy coi đó là một cơ hội. Hãy tuân theo Quy tắc chuyển đổi tài sản: ngừng là một người tiêu dùng thụ động của thời gian hoạt động đám mây và trở thành một nhà sản xuất tích cực giá trị kỹ thuật số vĩnh viễn.

Share this article:

Stay Updated

Get the latest posts delivered straight to your inbox.

Free Developer Utilities

Free In-Browser Developer Tools

Clean AI CLI logs, build cron expressions, decode JWTs, and calculate chmod permissions offline.

Explore Tools
Advertisement