27 पॉइंट द्वारा baeba 2026-01-05 | 14 टिप्पणियां | WhatsApp पर शेयर करें

हाल ही में मैंने विदेश के एक टेक ब्लॉग पर चर्चा में रहे "Microservices Killed Our Startup. Monoliths Would’ve Saved Us" शीर्षक वाले लेख को पढ़ा। उसकी बात इतनी चुभने वाली और साथ ही relatable लगी कि उसका सार साझा कर रहा हूँ。

यह बिना सोचे-समझे नई टेक्नोलॉजी अपनाने के ख़तरे को दिखाने वाली एक बेहतरीन "गलतियों की नोटबुक" जैसी लगती है।


1. शुरुआत: "हम भी Netflix की तरह करते हैं"
  • स्थिति: $2.5M की seed investment, मासिक revenue में 40% growth, 50,000 users। Rails monolith पर बहुत अच्छी तरह चल रहा startup।
  • समस्या की शुरुआत: lead architect आया और "Scalability" का नारा देते हुए MSA migration का प्रस्ताव रखा।
  • तर्क: "अभी की structure में coupling बहुत ज़्यादा है। Netflix और Uber को देखो। अगर हमें भी उनकी तरह बनना है, तो microservices पर जाना होगा।"
  • हकीकत: 4 developers और 1 DevOps वाले team ने Netflix architecture अपनाने का फ़ैसला कर लिया।
2. नर्क जैसे 6 महीने (MSA adoption timeline)

[पहला महीना: honeymoon]

  • notification service को अलग करने में सफलता। "देखा! बढ़िया चल रहा है, है न?" कहते हुए जश्न मनाया।
  • लेकिन deployment time बढ़ना, repositories बढ़ना जैसी शुरुआती चेतावनियाँ शुरू हो गईं।

[दूसरे~तीसरे महीने: दरार की शुरुआत]

  • billing service को अलग किया गया। यह users, inventory, और order services — सबसे जुड़ा हुआ था।
  • नतीजा: network latency की वजह से response time 200ms → 800ms तक धीमा हो गया। एक service बंद होती तो chain failure से पूरा system ठप हो जाता।

[चौथे~पाँचवें महीने: distributed transactions का दुःस्वप्न]

  • monolith में जहाँ एक DB transaction से काम हो जाता था, distributed environment में Saga pattern तक लाना पड़ा।
  • inventory कम हो गई, payment fail हो गया, rollback उलझ गया... data inconsistency की वजह से CS requests की बाढ़ आ गई।
  • एक साधारण column जोड़ने के लिए 6 services छूनी पड़ती थीं, इसलिए 2 घंटे का काम 3 दिन लेने लगा।

[छठा महीना: टीम का टूटना]

  • developers feature development के बजाय अपना सारा समय infra management में लगाने लगे।
  • infra cost $3,000 → $12,000 (4 गुना उछाल)।
  • core developer ने इस्तीफ़ा दे दिया ("मैं यहाँ product बनाने आया था, पूरा दिन Kubernetes से जूझने नहीं")
3. फैसला: "हम Netflix नहीं हैं"

architect अब भी कह रहा था, "service mesh लाते हैं और monitoring tools बढ़ाते हैं", लेकिन लेखक फट पड़ा।

> "हम Netflix नहीं हैं! Netflix में 500 engineers हैं, और हम सिर्फ 4 हैं!"

आख़िरकार architect ने कंपनी छोड़ दी, और team ने monolith पर वापस जाने (rollback) का फ़ैसला किया।

4. monolith में वापसी, और पुनर्जीवन
  • 8 हफ्तों में code को फिर से monolith में जोड़ा गया।
  • नतीजा:
  • feature release speed वापस आई (महीने में 4 → 20)
  • response time 220ms पर स्थिर हुआ
  • infra cost कम हुई
  • और सबसे बढ़कर developers की खुशी बढ़ी
5. मुख्य सीख (इस लेख का निष्कर्ष)
  1. MSA 'तकनीकी समस्या' नहीं, बल्कि 'organizational problem' सुलझाने का टूल है।
  • इसका इस्तेमाल तब होता है जब developers 50+ हों और वे एक-दूसरे के काम पर चढ़ रहे हों, या deployment cycles बहुत अलग-अलग हों।
  1. Netflix/Google आपके role model नहीं हैं।
  • वे भी शुरुआत में monolith थे। scale बढ़ने पर उन्होंने बदलाव किया, शुरू से ऐसा नहीं था।
  1. complexity एक tax है।
  • हर नई service के साथ management cost compound interest की तरह बढ़ती है।
  1. network calls मुफ़्त नहीं होतीं।
  • in-memory function call (nanoseconds) और network call (milliseconds) में ज़मीन-आसमान का फ़र्क है।

एक पंक्ति में सार:
"monolith दुश्मन नहीं है। बुरी architecture दुश्मन है। 4 लोगों की team हो तो कृपया बस monolith ही इस्तेमाल करो।"

14 टिप्पणियां

 
ahwjdekf 2026-01-05

लो, अब MSA के कट्टर समर्थक उमड़ पड़ेंगे।

 
aer0700 2026-01-06

यह सही बात है कि network calls मुफ़्त नहीं होते। function call और API call वाकई अलग होते हैं।

 
bungker 2026-01-05

मैं यहाँ प्रोडक्ट बनाने आया हूँ, दिन भर Kubernetes से छेड़छाड़ करने नहीं —> यह मैंने सुनी सबसे बेवकूफी भरी बात है

 
hohemian 2026-01-06

क्यों? अगर स्थिति ऐसी है कि k8s सिर्फ़ k8s के लिए ही किया जा रहा है, तो यह बात सही लगती है, है ना?

 
roxie 2026-01-23

मुझे bungker की टिप्पणियाँ पसंद हैं, इसलिए मैं उन्हें एक-एक करके क्लिक करके पढ़ता हूँ, लेकिन इस बात से मैं सहमत नहीं हो पा रहा हूँ, हूँ। क्या आप थोड़ा और विस्तार से समझा सकते हैं?

 
passerby 2026-01-05

यह बिना सार वाला AI पोस्ट है, इसलिए आजकल मैं Medium लगभग देखता ही नहीं हूँ

 
mhj5730 2026-01-12

अगर यह 4 लोगों द्वारा बनाई गई service है, तो लगता है कि इसे MSA में बाँटने की कोई वजह नहीं थी।

 
moderato 2026-01-05

MSA करने के लिए संगठन को भी MSA के हिसाब से ढालना पड़ता है...

 
ifmkl 2026-01-05

मुझे लगता है कि नीचे दिए गए सारांश में 4वें बिंदु का असली मतलब शायद यही है। और कुल मिलाकर, सामग्री खुद भी काफ़ी relatable लगी।

 
bsh998 2026-01-05

उम्... कुछ अजीब सा लग रहा है
लगता है यह लेख AI से लिखा गया है।

 
baeba 2026-01-05

मुझे भी आजकल यह बात काफी महसूस हो रही है..
मुझे लगता है कि कई ब्लॉग पोस्ट शायद लेखक के अपने अनुभव + AI की मदद लेकर
लिखी जा रही हैं।
क्योंकि बहुत-सी लिखाइयाँ इतनी तार्किक और पढ़ने में आसान होती हैं।

 
bsh998 2026-01-05

मैं जो कहना चाहता था, वह यह है कि यह काफ़ी AI-जैसा लगता है और इसमें कोई reference भी नहीं है, इसलिए मेरी राय है कि ऐसी पोस्ट साझा नहीं करनी चाहिए।

 
baeba 2026-01-05

यह Hacker News पर पोस्ट किया गया लेख है। मैं जो ज़्यादातर लेख पोस्ट करता हूँ, वे Hacker News पर आए हुए होते हैं.

https://news.ycombinator.com/item?id=46469845

जैसा आपने कहा.. लगता है कि मुझे Hacker News रेफ़रेंस भी जोड़ना चाहिए।

 
baeba 2026-01-05

1) लेख की विश्वसनीयता पर शक: इसमें marketing/AI-generated कंटेंट जैसी गंध आती है

सार

  • “यह कुछ ज़्यादा ही अच्छी तरह किसी नैतिक नाटक की तरह लिखा गया है” → शक हुआ कि यह HN को पसंद आने वाली ‘मोरल स्टोरी’ के हिसाब से ऑप्टिमाइज़ किया गया है
  • मुख्य लेख में paid resources के लिंक बहुत ज़्यादा चिपकाए गए हैं, इसलिए “आख़िरकार यह sales post ही तो नहीं?” जैसी राय काफ़ी मज़बूत थी
  • lists की भरमार और emoji जैसी writing style को “AI slop (जल्दबाज़ी में निकाला गया AI कंटेंट)” का signal बताया गया

तथ्यात्मक तीखा उद्धरण (अनुवाद)

“पूरा लेख ऐसा लगता है जैसे linked paid resources बेचने के लिए ही बनाया गया हो। और इतनी सारी lists की वजह से इसमें AI slop वाली feel आती है.”
(मूल: Seems like the whole thing is just there to sell you on the linked resources. And it feels like AI slop with all the lists.)

एक-पंक्ति टिप्पणी

  • “बात सही है या ग़लत, उससे पहले ही बेचने की गंध + AI की गंध बहुत तेज़ आती है” — यही पहली प्रतिक्रिया थी।

2) leadership/architect पर आलोचना: समस्या technology नहीं, ‘decision-making structure’ थी

सार

  • “4 लोगों की टीम में architect?” — इस बात पर ही बहुतों को लगा कि शुरुआत से ही मामला गड़बड़ था
  • ख़ासकर ऐसा architect जो code नहीं लिखता / अलग DevOps role — इसे कई लोगों ने ‘bottleneck + CV optimization’ की तरह देखा
  • टोन यह था कि कंपनी को microservices ने नहीं, बल्कि “ऐसी structure ने मारा जिसमें कोई deployment/operations/recovery की जिम्मेदारी लेने वाला नहीं था”

चुभता हुआ उद्धरण (अनुवाद)

“ऐसे architects जिनका काम सिर्फ़ ‘rules’ और ‘patterns’ तय करना है, जबकि वे खुद कुछ implement नहीं करते, लगभग हमेशा बुरा idea होते हैं। बस shipping पर ध्यान दो। जो आदमी code की 10 lines भी नहीं लिखेगा, अगर वही decisions monopolize करे, तो बात बिगड़नी ही है.”
(मूल: Architects who's job it is to define 'rules' and 'patterns' without actually implementing anything are almost always a bad idea. Just focus on shipping...)

एक-पंक्ति टिप्पणी

  • काफ़ी मज़बूत राय यह थी कि समस्या MSA नहीं, बल्कि “ऐसे role design की जिसमें अधिकार है लेकिन जवाबदेही नहीं” थी।

3) business नज़रिया: क्या startup की नाकामी की असली वजह सच में MSA थी?

सार

  • कुछ comments ने “architecture की वजह से कंपनी डूबी” वाली framing पर ही भरोसा नहीं किया
  • मुख्य तर्क: अगर PMF/demand/customer lock-in कमज़ोर हो, तो कोई भी stack हो, startup डूब सकता है
  • ख़ासकर “customers दो दिन धीमा होने पर ही छोड़ देते हैं?” जैसी details से यह सवाल उठाया गया कि कहीं product value शुरू से ही कमज़ोर तो नहीं थी
  • और लेख के अंदर की contradiction पर भी उंगली उठी: “MSA ने startup को लगभग मार दिया” कहकर अंत में “लेकिन बच गया?” — इससे narrative exaggeration का शक हुआ

तथ्यात्मक तीखा उद्धरण (अनुवाद)

“Startup को इस बात ने मारा कि उसने ऐसा product बनाया जिसे लोग चाहते ही नहीं थे। यह वैसा ही है जैसे कहना कि Python vs Go ने startup को मार दिया...”
(मूल: Pretty sure making a product that people don’t want killed your startup. This is like saying using Python vs Go killed your startup...)

एक-पंक्ति टिप्पणी

  • यह नज़रिया साफ़ मौजूद था कि “architecture तो बहाना है, असली वजह market/product/cash flow भी हो सकती है।”

4) तकनीकी insight: monolith vs MSA पर experience-based सलाह (यही हिस्सा सच में काम का था)

सार

  • “MSA पर fixed-cost यानी operational complexity tax लगता है” → छोटे team के लिए यह घातक हो सकता है, ऐसे कई अनुभव साझा किए गए
  • मुख्य keywords थे: Premature distribution (बहुत जल्दी distribution), modular monolith/modulith, और “boundary को ‘कमाओ’”
  • यह भी व्यावहारिक ढंग से बताया गया कि MSA कब ज़रूरी बनता है: जब team size इतना बढ़ जाए कि conflicts/deployment/organizational issues सचमुच सामने आने लगें
  • उल्टा, performance/scale की समस्या हो तो भी अक्सर सलाह यह थी कि “सीधे MSA से solve मत करो”; पहले algorithm/bottleneck/sharding/partitioning देखो

चुभता हुआ उद्धरण (अनुवाद)

“Startup को microservices ने नहीं, बल्कि ‘बहुत जल्दी distribution’ ने मारा। असली boundaries बनने से पहले ही system को तोड़ दिया गया, इसलिए सिर्फ़ latency और coordination cost बढ़ी। modular monolith से शुरू करो, boundaries को कमाओ, फिर extract करो.”
(मूल: Premature distribution killed the startup, not microservices... Start with a modular monolith, earn your boundaries, then extract.)

एक-पंक्ति टिप्पणी

  • community ने जिस असली सीख से सबसे ज़्यादा सहमति जताई, वह यही थी:
    “monolith से शुरू करो, और services को तभी अलग करो जब boundaries ‘स्वाभाविक’ रूप से उभरें.”

community की कुल राय, एक वाक्य में

ज़्यादातर लोग “हम Netflix नहीं हैं” वाली बात से सहमत थे, लेकिन साथ ही यह शक भी काफ़ी मज़बूत था कि “यह लेख खुद Netflix-रोग बेचने वाली narrative (= marketing/AI) भी हो सकता है.”