مجموعه ای نوظهور از فروشندگان در تلاش هستند تا کار توسعه وب را دوباره ساده کنند. آیا این نسل بعدی پلتفرم به عنوان یک سرویس است یا چیزی کاملاً متفاوت؟
در اواسط دهه ۲۰۰۰، صنعت نرمافزار و سرمایهگذاران مخاطرهآمیز که به استارتآپهای نرمافزاری کمک مالی میکردند، به ایده پلتفرم بهعنوان یک سرویس (PaaS) علاقهمند شدند و نوید یک فروشگاه ساده و یکجا را داد. بستری برای توسعه دهندگان نرم افزار تا ایده های خود را از کد منبع به تولید برسانند.
علیرغم موفقیت اولیه برخی از این پلتفرمها –بهویژه Heroku، که اکنون یک شرکت Salesforce است، PaaS هرگز به یک روش اصلی برای ساخت برنامههای کاربردی در سطح سازمانی تبدیل نشد، زیرا توسعهدهندگان عموماً به دنبال کارهای بیشتری بودند. کنترل و مقیاس پذیری با شرایط خاص خود. این ما را در عوض به دوران کانتینر و Kubernetes سوق داد.
اما اکنون، با ادامه پیچیدگی هرچه بیشتر کار توسعه نرم افزار در عصر ابر بومی، مجموعه ای از پلتفرم ها در حال ظهور هستند که تلاشهای مشابه با تلاشهای ارائهدهندگان PaaS گذشته: ارائه یک تجربه توسعهدهنده زیبا برای ساخت برنامههای شما، و یک مسیر ساده برای ارائه آن برنامهها در مقابل کاربران.
به عنوان تحلیلگر RedMonk، جیمز گاورنر در سال ۲۰۲۰ نوشت، “مجموعهای از پلتفرمها و رویکردهای جدید طراحی شدهاند تا با اتوماسیون جامد، حفظ جریان را برای توسعهدهندگان آسانتر کنند. شرکتهای جدید بر اساس ابزارهای عقیدهای تأسیس شدهاند که واقعاً درک میکنند که توسعهدهندگان مدرن چگونه میخواهند کار کنند. این کد جدید به جای کد چسب است.”
بازیگرهای قدرتمند PaaS
در قلب آنها، این ارائه دهندگان – به ویژه Vercel و Netlify، به علاوه سیل دنبال کنندگان سریع – قول می دهند که وظیفه توسعه وب فرانت اند را از کار اجرای واقعی آن کد در تولید جدا کنند.
با ایجاد شبکه های لبه جهانی در بالای ارائه دهندگان اصلی ابر، این فروشندگان یک مسیر مدیریت شده برای استقرار برنامه های کاربردی وب مدرن، بدون قطع جریان یا نیاز به استخدام تیم توسعه< ارائه می دهند. /a> نگران اجرای آنها در مقیاس باشید.
این رویکرد باعث شده است که باکی مور، سرمایه گذار کلاینر پرکینز راهحلهای زیرساخت بدون سرور شخص ثالث را فرا میخواند. این پلتفرمها با بدون سرور بودن، انتزاع کامل وظایف پشتیبان مورد نیاز برای میزبانی و اجرای یک برنامه وب، از جمله مقیاسبندی خودکار، وصلهسازی، پشتیبانگیری، نگهداری و تکرار را وعده میدهند.
بلوغ این قابلیتهای بدون سرور، همراه با افزایش طراحی وب ماژولار و محبوب چارچوب های وب مانند React، فرصت قابل توجهی را برای گروه کوچکی از بنیانگذاران باز کرده است تا نه تنها دسترسی مدیریت شده به زیرساخت های بدون سرور را فراهم کنند، بلکه تلاش کنند واقعاً تجربه توسعه دهندگان را متحول کنند.
میلیونها توسعهدهنده در جستجوی تجربه توسعهدهنده بهتر به این پلتفرمها هجوم آوردهاند، و رویکرد کمکد آنها به وضوح چشم سرمایهگذاران خطرپذیر را نیز به خود جلب کرده است، که مجموعاً بیش از ۵۰۰ میلیون دلار در Vercel و Netlify سرمایهگذاری کردهاند. تاریخ.
Vercel: CDN برای توسعه دهندگان فرانت اند
Vercel تفاوتهای بین توسعه و تولید را با جریانهای کاری بسیار مولد از بین میبرد و کار سختی را برای تنظیم چیزها برای توسعهدهنده انجام میدهد. Governor تحلیلگر RedMonk نوشت: این یک [شبکه تحویل محتوا] است، اما برای توسعه دهندگان جلویی ساخته شده است.
ورسل که در سال ۲۰۱۵ توسط گیلرمو راخ در سانفرانسیسکو تأسیس شد، بر اساس محبوبیت چارچوب جاوا اسکریپت Next.js او برای کتابخانه React که عمدتاً توسط فیسبوک نگهداری میشود، ساخته شده است. مانند Ruby on Rails قبل از آن، React به حالت غالب توسعه وب مدرن تبدیل شده است و طبق Stack Overflow و قدرت بخشیدن به وب سایت های محبوب Hulu، Hilton، Reddit، Twitter، و BBC.
راوچ به InfoWorld گفت: «ما میخواستیم ساختمان، استقرار و همکاری در بالای پروژههای فرانتاند را واقعاً ساده کنیم. “ما از سرورها استفاده کردیم و روی محاسبات بدون سرور و لبه سرمایه گذاری کردیم تا نه تنها پیچیدگی را پنهان کنیم، بلکه در واقع آن را حذف کنیم.”
درک اصلی Vercel از Next.js چیزی است که در نهایت مهندسان شعبه بیمه را مجبور به تغییر از کرد. یک پشته AWS تا حد زیادی خود مونتاژ شده از S3، CloudFront، و Lambda@Edge در اواخر سال ۲۰۲۱.
جو ایمیسون، مدیر ارشد فناوری شعبه بیمه، به InfoWorld گفت: «در معماری میکروسرویسها، ایده این است که میتوانید چیزها را جابهجا کنید تا بهترین راه برای رسیدگی به مشکلات خاص پیدا کنید. “در حال حاضر ماندن با یک سرویس آمازون که بدتر از یک رقیب است، منطقی نیست.”
بهعنوان توسعهدهنده فرانتاند Thom Krupa در بررسی محصول نوشت، “Vercel خیلی شبیه اپل است اما در دنیای جلویی. پلتفرم مانند MacBook است و Next.js مانند MacOS است. آنها مناسب هستند. حفظ زیرساخت و کار بر روی نرم افزار یک مزیت بزرگ است و به کاربر و توسعه دهنده نسل بعدی تجربه می دهد.”
این تعهد به تجربه توسعهدهنده زمانی که ورسل خلق کامپایلر محبوب Svelte، ریچ هریس را در نوامبر ۲۰۲۱ استخدام کرد، کاملاً نشان داده شد. «هم Svelte و هم Vercel میخواهند برای راوش نوشت، وب هم لذت بخش و هم سریع زمان.
Netlify: Jamstack اساس این جفت شدن CDN و خدمات back-end را تشکیل می دهد
درباره Vercel اغلب با Netlify صحبت می شود، پلتفرمی مشابه بر اساس مدل توسعه Jamstack. با استفاده از این معماری، به توسعهدهندگان یک رابط Jamstack از قبل اجرا شده ارائه میشود که روی یک شبکه توزیع محتوا مستقر شده است، که محتوا را در چندین سرور منعکس میکند تا بتواند با تأخیر کم به هر کسی در جهان تحویل داده شود.
سپس مؤلفههای جاوا اسکریپت، سرویسهای پشتیبان مرتبط، مانند دادهها از پایگاه داده یا عملکردهای اضافی مانند تأیید اعتبار کاربر یا پرداختها از طریق API، همه از طریق یک داشبورد کاربر پسند را میکشند.
Peloton و Nike از تبدیلهای قابل توجه Jamstack هستند.
«Netlify با Jamstack به گردشهای کاری توسعهدهندگان مدرن نگاه کرد، آن را در پلتفرم تعبیه کرد، و متوجه شد که این مبادله شامل فعال کردن همه چیز و اضافه کردن لایهای از سربار شناختی، یا محدود کردن چیزها و افزایش بهرهوری افراد است. فرماندار، تحلیلگر RedMonk در مصاحبه ای به InfoWorld گفت.
مد بیلمن، مدیر عامل Netlify، یافتن مناطقی است که توسعهدهندگان میخواهند به آنها کمک شود، و به آنها گزینههایی میدهیم که میخواهند کارها را خودشان انجام دهند.
«توسعهدهندگان به شکلی جادویی تکامل نیافتهاند تا از پیچیدگیهای بیشتری نسبت به قبل برخوردار شوند. [بنابراین] ما همیشه باید پیچیدگی را تغییر دهیم و بفهمیم که چگونه به آنها اجازه دهیم تا روی پیچیدگیهایی تمرکز کنند که برای مشکلاتی که برای حل آنها اهمیت دارد، بیلمان به InfoWorld گفت. “اگر بتوانید آن خط را پیدا کنید، آنها را قادر میسازید تا روی انجام کاری که به بهترین شکل انجام میدهند تمرکز کنند.”
ارائه دهندگان لبه به دنبال ساخت ابزارهای توسعه دهنده بر روی CDN های خود هستند
شبکههای تحویل محتوا یک عنصر کلیدی در این پشته جدید هستند، بنابراین جای تعجب نیست که شرکتهایی مانند Cloudflare، Stackpath و Fastly به دنبال لایهبندی ابزارهای مناسب برای توسعهدهندگان در بالای CDNهای خود هستند.
Cloudflare از زمان عرضه محصول Workers بدون سرور خود در سال ۲۰۱۷ به طور پیوسته وارد این فضا شده است. اکنون، طیف وسیعی از گزینه ها را برای میزبانی ثابت، از جمله Workers Sites و Pages، یک CI/CD کامل برای پروژه های Jamstack ارائه می دهد. که مستقیماً از مخزن GitHub راه اندازی می شود. جان گراهام-کامینگ، مدیر ارشد فناوری Cloudflare، به InfoWorld گفت: «ما برای شبکه خود به عملکرد توسعهدهنده نیاز داشتیم.
و در حالی که Workers ممکن است مانند Vercel و Netlify در یک تجربه توسعهدهنده نرم نباشند، گراهام-کامینگ سخت تلاش میکند تا آن را تغییر دهد. او گفت: “Cloudflare Cloudflare را بر روی پلتفرم های توسعه دهنده Cloudflare ساخته است.” ما یک شرکت مهندسی هستیم و با مهندسی هدایت میشویم تا همه چیز به اندازه کافی برای توسعهدهندگان خوب باشد.» اگر استانداردهای آنها را برآورده نکند، او گفت: “شما در مورد آن خواهید شنید.”
Cloudflare از تجربه توسعهدهندگان خود استفاده میکند که میتواند با ارائهدهندگان رقیب در این فضا مطابقت داشته باشد، اما همچنین امیدوار است که قیمتگذاری آن، از جمله دریافت نکردن هزینه خروج دادههای خروجی، پیشنهاد قانعکنندهای باشد. p>
فرماندار RedMonk گفت که پلتفرمهایی مانند Cloudflare و Fastly دارای مزایای مشخصی نسبت به رقبای جدیدتر خود هستند: «این پلتفرمها واقعاً تجربهای عالی از دو طرف ارائه میدهند، تجربه کاربر نهایی سریعتر که سریعتر و بومیتر به نظر میرسد، و به طور بالقوه، یک تجربه توسعه دهنده بهتر.”
کاری که ارائه دهندگان ابر انجام می دهند
ارائه دهندگان ابر مقیاس با این اکوسیستم جدید در کجا قرار می گیرند؟ همانطور که مور در Kleiner Perkins نوشت، “آنچه که حتی بیشتر از آن شگفتانگیز بوده است، پاسخ یا عدم پاسخ ارائه دهندگان ابر به این تهدید رو به رشد است.”
سرویس وب آمازون با اصول اولیه همراه است، اما AWS Amplify مسیر متفاوتی را ارائه میکند
در واقع، ورنر ووگلز، مدیر ارشد فناوری AWS، تمرکز AWS را بر روی ارائه پلتفرمهای اولیه به مشتریان تا پایان سال ۲۰۲۱ دوچندان کرد. او روی صحنه گفت: «شما همیشه از ما این مؤلفهها را بیشتر خواستهاید» کنفرانس Re:Invent فروشنده. “تاکنون، ما بیش از ۲۰۰ مورد از این خدمات را داریم و باور کنید، گاهی اوقات بسیار زیاد است. اما به یاد داشته باشید، شما این را خواسته اید – این اساساً تقصیر شماست.”
اگرچه برخی از حاضران از عدم تغییر مشخص ناامید شدند AWS برای پلتفرمهای خوشنظرتر، بتای عمومی Amplify Studio را اعلام کرد، یک محیط توسعه کمکد برای ساخت برنامههای وب و موبایل.
در قلب خود، Amplify Studio به توسعهدهندگان اجازه میدهد فایل طراحی Figma یک طراح را انتخاب کرده و بهطور خودکار آن را به کد جزء React UI ترجمه کنند، جایی که میتوان آن را در منابع مناسب AWS مستقر کرد و با استفاده از یک رابط توسعه بصری بهینهسازی کرد.
کن اکسنر، مدیر کل برای ایجاد یک برنامه کاربردی فرانتاند، به روشی که همیشه میتوانید از آن فرار کنید، میخواهیم این را سادهترین راه برای ساختن یک برنامه کاربردی جلویی کنیم، با قابلیت توسعه به سطوح پایینتر. ابزارهای توسعه دهنده AWS، به InfoWorld گفته شد.
از آنجایی که معماریهای سرویسگرا همچنان محبوبیت خود را افزایش میدهند، توسعهدهندگان همچنین میتوانند از GraphQL یا حتی سرویس مدیریت شده AppSync برای اتصال به فروشگاههای داده قدیمی یا کشیدن اجزای از پیش ساخته شده برای نقشهها استفاده کنند. احراز هویت کاربر یا سایر APIهای چند منظوره. این همچنین یک منطقه تمرکز قوی برای Vercel و Netlify است، که اخیراً استارتآپ OneGraph را خریداری کرده است که بر کمک به توسعهدهندگان برای استفاده و اتصال این APIهای GraphQL مختلف تمرکز دارد.
فرماندار RedMonk گفت: «در زمینه آمازون، Amplify زمان بیشتری را صرف فکر کردن به تجربه توسعهدهنده نسبت به سایر محصولات کرده است. “تیم AWS Amplify در ردیابی گرایشها و نیازهای توسعهدهندگان مدرن کار بسیار خوبی انجام میدهد و احتمالاً در حال حاضر متمرکزترین گروه محصول در شرکت است.”
«اگر AWS تجربه توسعهدهنده Vercel را داشت، تمام پول من را برای بقیه دوران حرفهای من دریافت میکرد،» توسعهدهنده سیمون ویلیسون توییت در طول Re:Invent. همانطور که Exner گفت، “این یک پایگاه مشتری است که به خصوص تجربه کاربری ضعیف را نمی بخشد.”
هنوز، فراتر از تلاشهای نوپای AWS با استودیوی Amplify، هیچ یک از سه ارائهدهنده بزرگ ابر تا کنون به دنبال این نبوده اند که با Vercel یا Netlify پا به پای یکدیگر باشند.
مایکروسافت: “نوآوری یکپارچه” آن شکاف تجربه توسعه دهنده را برطرف نمی کند
مایکروسافت مدتهاست که با توجه به ویرایشگر بسیار محبوب کد ویژوال استودیو، مخزن کد منبع گیت هاب، CI/CD از طریق Actions، در بهترین موقعیت برای جمعآوری همه این رویکردها در نظر گرفته میشود. و استقرار در سراسر Azure. فرماندار Redmonk نوشت: “به گفته وی، مایکروسافت برای تحقق وعده آنچه قبلا “نوآوری یکپارچه” می نامید و واقعاً شکاف تجربه توسعه دهندگان را برطرف می کند، راه درازی در پیش دارد.”
Google: هنوز مجموعه نظری وجود ندارد، اما ممکن است تغییر کند
Google همچنین با پلتفرم توسعهدهنده Firebase و سرویس Cloud Run خود برای استقرار سادهشده بدون سرور، میراثی در این فضا دارد، اما همچنین هنوز این قطعات را به روشی متفکرانه جمعآوری نکرده است.
Google اخیراً مدیر سابق تجربه توسعهدهنده در Netlify، سارا دراسنر، را استخدام کرده است، که به اندازه سایرین در صنعت زمان صرف میکند تا چگونه توسعهدهندگان وب را سازندهتر کند.
جانشینان بدون سرور PaaS و Heroku ممکن است کاربرد محدودی داشته باشند
آیا همه این پروژه ها فقط پلتفرم به عنوان سرویس برای دوران React نیستند؟ Rauch از Vercel گفت: “من از جهاتی فکر می کنم بله، اما ترکیب عناصر مهم زیرساخت، پلت فرم، و CDN برای یک پلتفرم سرتاسر برای موفقیت در وب”.
“شاید این PaaS باشد. Graham-Cumming از Cloudflare گفت: “ما از این اصطلاح استفاده نکردهایم، “من آن را بیشتر به عنوان روشی جدید برای نوشتن کد میدانم تا نگران سیستمعامل، مقیاسپذیری یا بخش شبکه نباشیم، اما به هر زبانی که میخواهید. این تفاوت جزئی اینجاست.”
Biilmann Netlify بدون شرمندگی تحت تأثیر Heroku قرار گرفته است و در واقع، Adam Wiggins یکی از بنیانگذاران Heroku یک سرمایه گذار اولیه در Netlify بود. با این حال، Biilmann مصمم است از اشتباهات مشابه که باعث شد بسیاری از مشتریان پلتفرم Heroku را با رسیدن به مقیاس معینی رها کنند، اجتناب کند. من زمان زیادی را صرف فکر کردن به این می کنم که چگونه از آن اجتناب کنم. هر چیزی که ما ارائه می دهیم باید از پروژه سرگرمی تا مقیاس بزرگ سازمانی باشد.
Exner از AWS همچنین از Heroku به عنوان یک تجربه توسعهدهنده «خیرکننده» استقبال کرد. اکنون، او تلاشهایی مانند استودیو Amplify را میبیند که «در آن تصویر» از وعده اصلی PaaS ساخته شدهاند، اما بدون اینکه ببیند کاربران «به دیواری برخورد میکنند» که معمولاً با آن پلتفرمها درگیر است.
حتی گمانه زنی هایی وجود دارد مبنی بر اینکه Heroku به دنبال چرخش به دوران بدون سرور تحت Salesforce است، به خصوص پس از راه اندازی توابع Salesforce. با این حال، توابع Salesforce در حال حاضر عمیقاً به پلتفرم Salesforce مرتبط هستند، و اگرچه Heroku و Salesforce Functions میتوانند توسط توسعهدهندگانی که مایل به انجام کار هستند با هم کار کنند، اما همچنان راههای متمایز برای ایجاد برنامههای کاربردی سازمانی هستند.
جاناتان لیستر پارسونز، که در سال ۲۰۱۴ سرویس تلفیق حقوق بازنشستگی در بریتانیا را در هروکو ایجاد کرد، میگوید که اگر امروز میتوانست این کار را دوباره انجام دهد، ریزسرویسها را برای معماری بدون سرور جهش میکرد.
او به InfoWorld گفت: «من بدون سرور را واکنشی به این واقعیت میدانم که ساختن چیزی مقیاسپذیر در معماری میکروسرویسها بسیار پیچیده است. “کار کردن در دنیای بدون سرور باعث می شود که یک فراخوانی API به عملکرد خود شما و شخص دیگری تقریباً یکسان باشد.”
و در حالی که امروزه «هروکو محیطی نیست که برای عملکردهای بدون سرور آماده شده باشد»، لیستر پارسونز معتقد است که برنامههای بدون سرور و بدون سرور میتوانند در یک محیط سازمانی هماهنگ باشند، بنابراین انتخاب بهترین ابزار برای کار است.
آیا PaaS بدون سرور جدید برای طولانی مدت قابل اجرا است؟
فرماندار RedMonk معتقد است که این پلتفرمهای بدون سرور در «دیافراگم باریکتر» نسبت به ارائهدهندگان قبلی PaaS کار میکنند، دیافراگم که مناسب «روش خاصی برای ساخت برنامههایی است که در حال حاضر محبوب است». این بدان معنا نیست که آنها قدرتمند نیستند، اما ممکن است طول عمر آنها را محدود کند.
اگرچه فینتان رایان، تحلیلگر گارتنر، شتاب اولیه خوبی برای این پلتفرمها در میان تیمهایی که برنامههای کاربردی متمرکز بر مصرفکننده سبز فیلد را با تقاضاهای مقیاس قابل توجهی ایجاد میکنند، میبیند، او گفت که “شرکت برای رسیدن به این امر کند خواهد بود.”
او هنوز معتقد است که این روند اساسی “دوام خواهد داشت، زیرا مردم خواهان توزیع گسترده یک برنامه کاربردی یا تجربه در سراسر شبکه های لبه بدون مشکلات تاخیر هستند.” در حال حاضر، Vercel و Netlify جدیدترین ابزارهایی هستند که از «براق و جدید بودن» سود میبرند و این بخش از زمان متوسط تا دوپامین کلید پذیرش است.
مور Kleiner Perkins در راهحلهای زیرساخت بدون سرور که در طراحی و ارگونومی کاربر نهایی متمایز میشوند، همچنان صعودی است. واضح است که توسعهدهندگان در سالهای آینده بیشتر و ارائهدهندگان ابر کمتر با آنها ارتباط برقرار خواهند کرد.»
صرف نظر از اینکه ما در نهایت به این دسته برچسب میزنیم و چه کسی بر آن تسلط پیدا میکند، هر تیم توسعهدهندهای که میخواهد تا حد امکان سریع و بدون دردسر از ایده به برنامه زنده برسد، مقاومت در برابر جذابیت آنها به طور فزایندهای دشوار خواهد بود.
پست های مرتبط
Vercel، Netlify و عصر جدید PaaS بدون سرور
Vercel، Netlify و عصر جدید PaaS بدون سرور
Vercel، Netlify و عصر جدید PaaS بدون سرور