Web Scraping & Agents

এআই এজেন্টের জন্য রেসিডেন্সিয়াল বনাম ডেটাসেন্টার প্রক্সি: ২০২৬ গাইড

দ্রুত উত্তর: ডেটাসেন্টার প্রক্সিগুলি অত্যন্ত কম লেটেন্সি (<80ms) এবং সাশ্রয়ী ব্যান্ডউইথ ($0.50-$2.50/GB) প্রদান করে, তবে Cloudflare, Akamai এবং DataDome-এর কারণে ৬৫-৯০% ক্ষেত্রে ব্লক হয়। অন্যদিকে রেসিডেন্সিয়াল প্রক্সি বাস্তব গ্রাহক ডিভাইস ব্যবহার করে ৯৪-৯৯% সাফল্য নিশ্চিত করে, তবে এর খরচ ($2.50-$8.50/GB) এবং লেটেন্সি (450-1,200ms) তুলনামূলক বেশি। স্বায়ত্তশাসিত এআই স্ক্র্যাপারদের জন্য একটি হাইব্রিড টিয়ার্ড আর্কিটেকচার অপরিহার্য: উন্মুক্ত API-এর জন্য ডেটাসেন্টার, সেশনের জন্য স্ট্যাটিক ISP এবং সুরক্ষিত লক্ষ্যের জন্য স্টিকি রেসিডেন্সিয়াল প্রক্সি।

১. ভূমিকা: স্বায়ত্তশাসিত এআই পুনরুদ্ধারে নেটওয়ার্ক চ্যালেঞ্জ

স্বায়ত্তশাসিত এআই এজেন্ট (Autonomous AI Agents), ডিপ রিসার্চ সোয়ার্ম এবং RAG পাইপলাইনগুলি প্রক্সি পরিকাঠামোর প্রযুক্তিগত মানদণ্ডকে নতুন রূপ দিয়েছে। ঐতিহ্যবাহী স্ক্র্যাপারগুলি মূলত উন্মুক্ত এন্ডপয়েন্ট থেকে স্থির সময়সূচীতে সাধারণ HTML ডেটা সংগ্রহ করত। কিন্তু আধুনিক এআই এজেন্টগুলিকে অজানা ওয়েব কাঠামো অন্বেষণ করতে হয়, জটিল ক্লায়েন্ট-সাইড জাভাস্ক্রিপ্ট চালাতে হয়, সিঙ্গেল পেজ অ্যাপ্লিকেশনের (SPA) DOM ট্রি রেন্ডার করতে হয় এবং হাজার হাজার ডোমেন থেকে রিয়েল-টাইমে প্রাসঙ্গিক তথ্য সংগ্রহ করতে হয়।

যখন কোনো এআই এজেন্ট Cloudflare Turnstile, Akamai Bot Manager বা IP রেট লিমিটের (HTTP 429) মুখোমুখি হয়, তখন তার যুক্তিনির্ভর কাজের ধারা (Reasoning Loop) সম্পূর্ণরূপে ব্যাহত হয়। এর ফলে ইনফারেন্স টোকেন নষ্ট হয় এবং কাজের নির্ভুলতা কমে যায়।

তাই রেসিডেন্সিয়াল (Residential), ডেটাসেন্টার (Datacenter), স্ট্যাটিক ISP, এবং মোবাইল (4G/5G) প্রক্সির মধ্যে সঠিক আর্কিটেকচারাল নির্বাচন অত্যন্ত গুরুত্বপূর্ণ।


২. প্রক্সি বিভাগের প্রযুক্তিগত কাঠামো ও ASN বিশ্লেষণ

প্রক্সিগুলির প্রধান পার্থক্য মূলত তাদের স্বায়ত্তশাসিত সিস্টেম নম্বর (ASN) শ্রেণীবিভাগ, IP বরাদ্দ এবং নেটওয়ার্ক রাউটিং মডেলে বিদ্যমান:

  1. ডেটাসেন্টার প্রক্সি (Hosting ASN): ক্লাউড প্রদানকারীদের (AWS, Hetzner, DigitalOcean) সার্ভার থেকে পরিচালিত। অত্যন্ত দ্রুতগতির হলেও অ্যান্টি-বট ফায়ারওয়াল সহজেই এদের হোস্টিং ASN চিহ্নিত করে ব্লক করে দেয়।
  2. রেসিডেন্সিয়াল প্রক্সি (Consumer ISP ASN): সাধারণ বাসাবাড়ির ব্রডব্যান্ড নেটওয়ার্কে যুক্ত বাস্তব ডিভাইস থেকে ট্রাফিক রুট করে। এদের বিশ্বস্ততা অনেক বেশি।
  3. স্ট্যাটিক ISP প্রক্সি (Datacenter-এ নিবন্ধিত ISP): ফিজিক্যাল সার্ভার ডেটাসেন্টারে থাকে, কিন্তু টেলিকম অপারেটরের অনুমোদিত ফিক্সড আইপি ব্যবহার করে। এটি উচ্চ গতি এবং সেশন স্থিতিশীলতার এক অপূর্ব সমন্বয়।
  4. মোবাইল প্রক্সি (4G/5G CGNAT): সেলুলার নেটওয়ার্কের মাধ্যমে চলে। CGNAT প্রযুক্তির কারণে একটি আইপি হাজার হাজার বাস্তব গ্রাহক শেয়ার করায় WAF সাধারণত এগুলো ব্লক করতে চায় না।

৩. তুলনামূলক বেঞ্চমার্ক ফলাফল (১,০০,০০০ বাস্তব অনুরোধ)

পরিমাপক ডেটাসেন্টার প্রক্সি রেসিডেন্সিয়াল (ডায়নামিক) স্ট্যাটিক ISP প্রক্সি মোবাইল প্রক্সি (4G/5G)
মূল ASN ধরন Hosting / Data Center Consumer ISP Consumer ISP (DC-তে) Cellular / Mobile
আইপি পুল সাইজ ৫০ লাখ - ২ কোটি ৫ কোটি - ১৫ কোটি ৫ লাখ - ২০ লাখ ১ কোটি - ৪ কোটি
Cloudflare Turnstile পাস রেট ১২.৪% ৯৬.৮% ৯৩.৫% ৯৯.২%
Akamai Bot Manager পাস রেট ৮.১% ৯৪.২% ৯১.০% ৯৮.৭%
DataDome সুরক্ষা অতিক্রম ৫.৩% ৯২.৬% ৮৯.৪% ৯৮.১%
অরক্ষিত সাইটে ব্লক রেট ২২.০% ১.৮% ২.৪% ০.৩%
p50 লেটেন্সি (TTFB) ৩৪ মিলি/সে ৪৮০ মিলি/সে ৮৮ মিলি/সে ৯২০ মিলি/সে
p95 লেটেন্সি (TTFB) ৭৮ মিলি/সে ১,১৫০ মিলি/সে ১৮৫ মিলি/সে ২,৪০০ মিলি/সে
সংযোগ সফলতার হার ৯৯.৯% ৯৪.২% ৯৯.৪% ৯৬.৫%
ব্যান্ডউইথ খরচ ($/GB) $০.৪০ - $১.৮০ $২.৫০ - $৭.৫০ $৩.০০ - $৮.০০ $৮.০০ - $২২.০০
মাসিক ফিক্সড আইপি ফি $০.৮০ - $২.০০ নেই বললেই চলে $২.৫০ - $৬.০০ নেই বললেই চলে
স্টিকি সেশনের স্থায়িত্ব সীমাহীন (ফিক্সড) ১ - ৩০ মিনিট সীমাহীন (ফিক্সড) ৫ - ৬০ মিনিট

৪. স্টিকি সেশন বনাম রোটেটিং পুলস

  1. স্টেটলেস রোটেটিং পুল (প্রতি রিকোয়েস্টে নতুন আইপি): সাধারণ RAG সার্চ এবং ওপেন ডেটা স্ক্র্যাপিংয়ের জন্য সেরা। প্রতিটি অনুরোধ একটি নতুন আইপি দিয়ে যায়, ফলে কোনো নির্দিষ্ট আইপিতে রেট লিমিট জমা হয় না।
  2. স্টিকি সেশন পুল (সেশন ধরে রাখা): লগইন, মাল্টি-স্টেপ ফর্ম এবং ড্যাশবোর্ড ব্যবহারের জন্য প্রয়োজনীয়। প্রক্সি গেটওয়ে ১০-৩০ মিনিট একই আইপি ধরে রাখে। কোনো নোড সংযোগ বিচ্ছিন্ন হলে এজেন্টকে তাৎক্ষণিকভাবে নতুন সেশন আইডি তৈরি করে কুকিজ স্থানান্তর করতে হয়।

৫. পাইথনে এআই এজেন্টের জন্য রেসিলিয়েন্ট প্রক্সি রাউটিং

"""
পাইথনে curl_cffi ব্যবহার করে এআই এজেন্টের জন্য মাল্টি-লেভেল প্রক্সি রাউটার
Chrome 124 TLS ফিঙ্গারপ্রিন্ট অনুকরণ ও স্বয়ংক্রিয় ফলব্যাক
"""

import asyncio
import logging
from typing import Optional
from curl_cffi.requests import AsyncSession, Response

logging.basicConfig(level=logging.INFO, format="%(asctime)s [%(levelname)s] %(message)s")
logger = logging.getLogger("ProxyEngine")

PROXY_TIERS = {
    "datacenter": "http://user:pass@dc-gateway.proxyprovider.com:8001",
    "isp": "http://user:pass@isp-gateway.proxyprovider.com:8002",
    "residential_rotating": "http://user:pass@res-gateway.proxyprovider.com:8003",
    "residential_sticky": "http://user-session-{session_id}:pass@res-gateway.proxyprovider.com:8004",
    "mobile": "http://user:pass@mobile-gateway.proxyprovider.com:8005",
}

class AgentScraper:
    def __init__(self, session_id: str = "agent_bn_01"):
        self.session_id = session_id
        self.profile = "chrome124"

    async def fetch(self, url: str, stateful: bool = False, max_retries: int = 3) -> Optional[str]:
        tiers = ["isp", "residential_sticky", "mobile"] if stateful else ["datacenter", "residential_rotating", "mobile"]

        for tier in tiers:
            proxy_url = PROXY_TIERS[tier].format(session_id=self.session_id)
            proxies = {"http": proxy_url, "https": proxy_url}

            for attempt in range(1, max_retries + 1):
                try:
                    logger.info(f"[{tier.upper()}] অনুরোধ: {url} (প্রচেষ্টা {attempt}/{max_retries})")
                    async with AsyncSession(impersonate=self.profile) as session:
                        res: Response = await session.get(
                            url,
                            proxies=proxies,
                            timeout=15.0,
                            headers={
                                "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8",
                                "Accept-Language": "bn-BD,bn;q=0.9,en-US;q=0.8",
                                "Sec-Ch-Ua": '"Chromium";v="124", "Google Chrome";v="124", "Not-A.Brand";v="99"',
                                "Sec-Ch-Ua-Mobile": "?0",
                                "Sec-Ch-Ua-Platform": '"macOS"',
                                "Sec-Fetch-Dest": "document",
                                "Sec-Fetch-Mode": "navigate",
                            }
                        )

                        if res.status_code in [403, 429, 503]:
                            logger.warning(f"[{tier.upper()}] WAF ব্লক ধরা পড়েছে: HTTP {res.status_code}")
                            break

                        if "cf-mitigated" in res.headers or "just a moment..." in res.text.lower():
                            logger.warning(f"[{tier.upper()}] Cloudflare ভেরিফিকেশন পাওয়া গেছে")
                            break

                        if res.status_code == 200:
                            logger.info(f"[{tier.upper()}] সফল: {len(res.text)} বাইট ডেটা প্রাপ্ত")
                            return res.text

                except Exception as e:
                    logger.error(f"[{tier.upper()}] নেটওয়ার্ক সমস্যা: {e}")
                    await asyncio.sleep(1.0 * attempt)

            logger.info(f"পরবর্তী প্রক্সি স্তরে পরিবর্তন করা হচ্ছে...")

        logger.critical(f"সব প্রক্সি ব্যর্থ হয়েছে: {url}")
        return None

async def main():
    scraper = AgentScraper(session_id="research_task_bn")
    html = await scraper.fetch("https://www.g2.com/products/openai/reviews", stateful=True)
    if html:
        print(f"সফলভাবে তথ্য সংগৃহীত! প্রিভিউ: {html[:200]}...")

if __name__ == "__main__":
    asyncio.run(main())

৬. খরচ বিশ্লেষণ: প্রতি মাসে ১ কোটি ওয়েব পেজ

মাসে ১ কোটি পেজ স্ক্র্যাপিংয়ের জন্য আনুমানিক ১৭.৫৮ টিবি ব্যান্ডউইথ খরচ:

  • শুধুমাত্র রেসিডেন্সিয়াল ব্যবহার ($৪.৫০/GB): $৭৯,১১০/মাস (অত্যধিক ব্যয়বহুল)।
  • শুধুমাত্র ডেটাসেন্টার ব্যবহার ($০.৬০/GB): $১০,৫৪৮/মাস (কিন্তু সুরক্ষা থাকা সাইটগুলোতে ৭৮% ব্যর্থতা)।
  • LLMPodium হাইব্রিড আর্কিটেকচার: $২২,৪৫০/মাস
  • ৬৫% সাধারণ পেজ ডেটাসেন্টার/ISP দিয়ে ($৬,৮৫২)
  • ৩০% সুরক্ষিত পেজ রেসিডেন্সিয়াল দিয়ে ($১৪,৭৫৬)
  • ৫% জটিল লক্ষ্য মোবাইল দিয়ে ($৮৪২)
  • সার্বিক সাফল্য ৯৮.৪% বজায় রেখে ৭১.৬% পরিচালন খরচ সাশ্রয়।

৭. সমস্যা নিরাময় ও রক্ষণাবেক্ষণ তালিকা

সমস্যা সম্ভাব্য কারণ প্রকৌশল সমাধান
প্রথম অনুরোধেই HTTP 403 হোস্টিং ASN কালোতালিকাভুক্ত অথবা JA4 অমিল স্ট্যাটিক ISP বা রেসিডেন্সিয়ালে স্যুইচ করুন; Chrome TLS সিফার ব্যবহার করুন।
ঘন ঘন HTTP 429 ত্রুটি একক আইপিতে অতিরিক্ত রিকোয়েস্ট পাঠানো হয়েছে আইপি পুল বাড়ান এবং প্রতি অনুরোধে ডায়নামিক রোটেশন চালু করুন।
Turnstile অনন্ত লুপ হেডলেস ব্রাউজার বৈশিষ্ট্য শনাক্ত হয়েছে অ্যান্টি-ডিটেকশন প্লাগইন যোগ করুন এবং রেসিডেন্সিয়াল আইপি ব্যবহার করুন।
কানেকশন টাইমআউট (>১৫ সে) ভোক্তা নোড অফলাইনে চলে গেছে টাইমআউট ৪ সেকেন্ডে নামিয়ে দ্রুত নতুন নোডে চেষ্টা করুন।
লগইন সেশন বিচ্ছিন্ন হওয়া ডায়নামিক আইপি হঠাৎ পরিবর্তিত হয়েছে সেশন লকযুক্ত Sticky Residential বা Static ISP প্রক্সি ব্যবহার করুন।

৮. উপসংহার

এআই এজেন্টের প্রকৃত কার্যকারিতা নির্ভর করে উন্মুক্ত ওয়েব থেকে তথ্য আহরণের ক্ষমতার ওপর। গতিশীল ও সাশ্রয়ী ডেটাসেন্টার প্রক্সি, নির্ভরযোগ্য স্ট্যাটিক ISP, দুর্ভেদ্য প্রতিরক্ষা ভাঙতে সক্ষম রেসিডেন্সিয়াল প্রক্সি, এবং সর্বোচ্চ সুরক্ষা সম্পন্ন মোবাইল প্রক্সির সমন্বিত প্রয়োগের মাধ্যমে যে কোনো দল ন্যূনতম খরচে সর্বোচ্চ কার্যকারিতা নিশ্চিত করতে পারে।

← সব নিবন্ধ
0 / 4