کتاب Microservice APIs (میکروسرویس رابطهای برنامهنویسی کاربردی: با مثال در پایتون) راهنمای کامل و جامع و کاربردی ایجاد میکروسرویسها با استفاده از API های مختلف در زبان برنامهنویسی پایتون است که در 14 فصل نکات مهم و کاربردی آن را آموزش میدهد.
در ادامه مقدمهای از کتاب Microservice APIs را از زبان نویسنده شرح خواهیم داد.
مقدمهای بر کتاب Microservice APIs:
API ها و ریزسرویسها صنعت نرمافزار را طوفانی کردهاند. تحت فشار افزایش پیچیدگی نرمافزار و نیاز به مقیاس، سازمانهای بیشتری از معماری یکپارچه به معماری میکروسرویس مهاجرت میکنند. گزارش O’Reilly “پذیرش میکرو سرویسها در سال 2020” نشان داد که 77٪ از پاسخ دهندگان خدمات میکرو را پذیرفته اند، روندی که انتظار میرود در سالهای آینده به رشد خود ادامه دهد.
استفاده از میکروسرویسها چالشی را برای ایجاد یکپارچگی خدمات از طریق APIها ایجاد میکند. طبق APIهای نوردیک، 90 درصد توسعه دهندگان با API کار میکنند و 30 درصد از زمان خود را صرف ساختن API میکنند.
امروزه، ساخت محصولات و خدماتی که به طور کامل از طریق APIهایی مانند Twilio و Stripe ارائه میشوند، بیشتر و بیشتر رایج است. حتی بخشهای سنتی مانند بانکداری و بیمه با باز کردن APIهای خود و ادغام در اکوسیستم بانکداری باز، خطوط جدیدی از تجارت پیدا میکنند. در دسترس بودن گسترده محصولات API-first به این معنی است که ما میتوانیم در هنگام ساخت برنامههای خود روی قابلیتهای تجاری اصلی خود تمرکز کنیم، در حالی که از APIهای خارجی برای انجام کارهای رایج مانند تأیید اعتبار کاربران و ارسال ایمیل استفاده میکنیم.
هیجان انگیز است که بخشی از این اکوسیستم در حال رشد باشید. با این حال، قبل از پذیرش میکروسرویسها و API ها، باید بدانیم که چگونه میکروسرویسها را طراحی کنیم، چگونه API ها را طراحی کنیم، چگونه یک استراتژی API تعریف کنیم، چگونه مطمئن شویم که یکپارچه سازی های قابل اعتماد ارائه میدهیم، چگونه یک مدل استقرار را انتخاب کنیم، و چگونه محافظت کنیم.
سیستمهای ما طبق تجربه من، اکثر سازمانها با یک یا چند مورد از این سوالات دست و پنجه نرم میکنند و گزارش اخیر IBM نشان میدهد که 31 درصد از کسب و کارها به دلیل نداشتن تخصص داخلی، ریزسرویسها را قبول نکرده اند. که 14% از پاسخ دهندگان در 11% تا 25% مواقع با خرابیهای یکپارچهسازی API مواجه میشوند (http://mng.bz/Xa9v) و با توجه به Salt Security، 94% از سازمانها حوادث امنیتی API را در سال 2022.3 تجربه کرده اند.
بسیاری از کتابها به مشکلات ذکر شده در پاراگراف قبل می پردازند، اما آنها معمولاً این کار را از یک نقطه نظر بسیار خاص انجام میدهند: برخی بر معماری تمرکز میکنند، برخی دیگر بر روی API ها، و برخی دیگر بر روی امنیت. احساس میکنم کتابی که تمام این سؤالها را گرد هم میآورد و با رویکردی عملی به آنها میپردازد، شکافی وجود دارد: اساساً، کتابی که میتواند یک توسعهدهنده متوسط را با بهترین شیوهها، اصول و الگوهای طراحی و ساخت میکروسرویس به سرعت راهاندازی کند. API ها من این کتاب را با این هدف نوشتم.
در طول سالهای گذشته، من این فرصت را داشتهام که با مشتریان مختلف کار کنم و به آنها در معماری میکروسرویسها و ارائه ادغامهای API کمک کنم. کار بر روی آن پروژه ها به من دیدی مثبت نسبت به موانع عمده ای داد که تیم های توسعه هنگام کار با میکروسرویسها و API ها با آن مواجه هستند. همانطور که به نظر میرسد، هر دو فناوری به طرز فریبنده ای ساده هستند.
یک API خوب طراحی شده به راحتی قابل پیمایش و مصرف است، در حالی که میکروسرویسهای با معماری خوب بهره وری توسعه دهندگان را افزایش میدهند و به راحتی مقیاس پذیر هستند. در طرف دیگر طیف، APIهای بد طراحی شده مستعد خطا هستند و استفاده از آنها دشوار است، و میکروسرویسهای با معماری بد منجر به به اصطلاح یکپارچههای توزیع شده میشوند.
سوالات بدیهی مطرح میشود: چگونه API های خوبی طراحی میکنید؟ و چگونه میتوانید ریزسرویسهای با جفتشده آزاد را طراحی کنید؟ این کتاب به شما کمک میکند تا به این سوالات و موارد دیگر پاسخ دهید.
همچنین دستان خود را کثیف خواهید کرد که APIها و سرویسها را میسازید، و یاد میگیرید که چگونه آنها را ایمن کنید، آنها را آزمایش کنید و به کار ببرید. روشها، الگوها و اصولی که در این کتاب آموزش میدهم، حاصل سالها آزمایش و آزمایش است، و من از به اشتراک گذاشتن آنها با شما بسیار هیجانزده هستم. امیدوارم این کتاب منبع ارزشمندی در سفر خود به سمت تبدیل شدن به یک توسعه دهنده و معمار نرم افزار بهتر باشد.
در مورد کتاب Microservice APIs
هدف این کتاب آموزش نحوه ساخت میکروسرویسها و ادغام آنها با استفاده از API است. شما یاد خواهید گرفت که یک سکوی میکروسرویس طراحی کنید و API های REST و GraphQL بسازید تا ارتباط بین میکروسرویسها را فعال کنید. همچنین یاد خواهید گرفت که API های میکروسرویس خود را آزمایش و تأیید کنید، آنها را ایمن کنید، و آنها را در فضای ابری استقرار و اجرا کنید.
چه کسی باید کتاب Microservice APIs را بخواند؟
این کتاب برای توسعه دهندگان نرم افزاری که با میکروسرویسها و API ها کار میکنند مفید است. این کتاب از یک رویکرد بسیار عملی استفاده میکند و تقریباً هر فصل توضیحات را با مثالهای کدگذاری کامل نشان میدهد. بنابراین، توسعه دهندگان عملی که مستقیماً با API های میکروسرویس کار میکنند، محتوای کتاب را ارزشمند مییابند.
نمونههای کدنویسی در پایتون هستند. با این حال، دانش زبان لازم نیست تا بتوانید آنها را دنبال کنید. قبل از معرفی کد جدید، هر مفهومی به طور کامل توضیح داده شده است.
کتاب Microservice APIs حاوی تاکید زیادی بر استراتژیهای طراحی، بهترین شیوهها و گردشهای کاری توسعه است، و بنابراین برای مدیران ارشد فنی، معماران و معاونان مهندسی که باید تصمیم بگیرند که آیا میکروسرویسها راهحل معماری مناسبی برای آنها هستند یا چه کسانی نیاز دارند، مفید است. بین استراتژیهای مختلف API و نحوه انجام یکپارچهسازیها انتخاب کنید.
نحوه سازماندهی کتاب Microservice APIs: نقشه راه
این کتاب در چهار بخش و در مجموع 14 فصل تنظیم شده است.
بخش 1 مفاهیم میکروسرویسها و API ها را معرفی می کند، نحوه ساخت یک API ساده را نشان میدهد و نحوه طراحی یک سکوی میکروسرویس را توضیح میدهد:
فصل 1 مفاهیم اصلی کتاب را معرفی میکند: میکروسرویسها و API ها. این توضیح میدهد که چگونه میکروسرویسها با معماری یکپارچه تفاوت دارند و چه زمانی استفاده از یکپارچهها در مقابل میکروسرویسها منطقی است. همچنین توضیح میدهد که APIها چیست و چگونه به ما کمک میکنند تا بین میکروسرویسها یکپارچهسازی کنیم.
فصل 2 کتاب Microservice APIs یک راهنمای گام به گام برای پیاده سازی API ها با استفاده از چارچوب محبوب FastAPI پایتون ارائه میدهد. شما یاد خواهید گرفت که مشخصات API را بخوانید و الزامات آن را درک کنید. همچنین یاد خواهید گرفت که API ها را در مراحل تدریجی بسازید و چگونه مدل های اعتبارسنجی دادههای خود را آزمایش کنید.
فصل 3 کتاب Microservice APIs نحوه طراحی یک سکوی میکروسرویس را توضیح میدهد. این سه اصل اساسی طراحی میکروسرویس را معرفی میکند و نحوه تجزیه یک سیستم به میکروسرویسها را با استفاده از تجزیه توسط قابلیت تجاری و تجزیه توسط زیر دامنهها توضیح میدهد.
قسمت 2 نحوه طراحی، مستندسازی و ساخت REST API و نحوه ساخت میکروسرویس را توضیح میدهد:
فصل 4 کتاب Microservice APIs اصول طراحی API های REST را توضیح میدهد. این شش محدودیت معماری REST و مدل بلوغ ریچاردسون را معرفی میکند و سپس توضیح میدهد که چگونه از پروتکل HTTP برای طراحی APIهای REST با ساختار خوب و بسیار رسا استفاده میکنیم.
فصل 5 کتاب Microservice APIs نحوه مستندسازی یک REST API با استفاده از استاندارد مشخصات OpenAPI را توضیح میدهد. شما اصول نحو طرحواره JSON، نحوه تعریف نقاط پایانی، نحوه مدلسازی دادههای خود و نحوه بازسازی اسناد خود با طرحوارههای قابل استفاده مجدد را خواهید آموخت.
فصل 6 کتاب Microservice APIs نحوه ساخت API های REST را با استفاده از دو فریمورک محبوب پایتون توضیح میدهد: FastAPI و Flask. شما با تفاوتهای بین این دو فریم ورک آشنا خواهید شد، اما همچنین می آموزید که چگونه اصول و الگوهای ساخت API یکسان باقی می مانند و از جزئیات پیاده سازی هر پشته فنی فراتر میروند.
فصل 7 کتاب Microservice APIs اصول و الگوهای اساسی برای ساخت میکروسرویسها را توضیح میدهد. این مفهوم معماری شش ضلعی را معرفی میکند و نحوه اعمال کوپلینگ آزاد بین لایههای یک برنامه کاربردی را توضیح میدهد. همچنین نحوه پیاده سازی مدلهای پایگاه داده با استفاده از SQLAlchemy و نحوه مدیریت مهاجرتهای پایگاه داده با استفاده از Alembic را توضیح میدهد.
قسمت 3 نحوه طراحی، مصرف و ساخت GraphQL API را توضیح میدهد:
فصل 8 کتاب Microservice APIs نحوه طراحی API های GraphQL و نحوه عملکرد زبان تعریف طرحواره را توضیح میدهد. انواع داخلی GraphQL را معرفی می کند و نحوه تعریف انواع سفارشی را توضیح میدهد. شما یاد خواهید گرفت که چگونه روابط بین انواع ایجاد کنید، و چگونه پرس و جوها و جهشها را تعریف کنید.
فصل 9 کتاب Microservice APIs نحوه استفاده از API های GraphQL را توضیح میدهد. شما یاد خواهید گرفت که یک سرور ساختگی را اجرا کنید و چگونه اسناد GraphQL را با استفاده از GraphiQL کاوش کنید. شما یاد خواهید گرفت که پرس و جوها و جهشها را بر روی سرور GraphQL اجرا کنید و چگونه عملیات خود را پارامتری کنید.
فصل 10 کتاب Microservice APIs نحوه ساخت API های GraphQL با استفاده از چارچوب آریادنی پایتون را توضیح میدهد. شما یاد خواهید گرفت که از اسناد API برای بارگیری خودکار مدلهای اعتبارسنجی دادهها و همچنین پیادهسازی حلکنندهها برای انواع سفارشی، پرس و جوها و جهشها استفاده کنید.
قسمت 4 نحوه آزمایش، ایمن سازی و استقرار API های میکروسرویس خود را توضیح میدهد:
فصل 11 کتاب Microservice APIs توضیح میدهد که چگونه با استفاده از پروتکلهای استاندارد مانند OpenID Connect (OIDC) و Open Authorization (OAuth) 2.1، احراز هویت و مجوز را به API های خود اضافه کنید. نحوه تولید و اعتبارسنجی JSON Web Tokens (JWT) و نحوه ایجاد یک میان افزار مجوز برای API های خود را یاد خواهید گرفت.
فصل 12 کتاب Microservice APIs نحوه آزمایش و اعتبارسنجی API های خود را توضیح میدهد. شما یاد خواهید گرفت که تست مبتنی بر ویژگی چیست و چگونه از آن برای آزمایش API های خود استفاده کنید، و همچنین یاد خواهید گرفت که از چارچوبهای اتوماسیون تست API مانند Dredd و schemathesis استفاده کنید.
فصل 13 کتاب Microservice APIs نحوه Docker کردن API های میکروسرویس خود، نحوه اجرای آنها به صورت محلی با استفاده از Docker Compose و نحوه انتشار ساختهای Docker خود در AWS Elastic Container Registry (ECR) را توضیح میدهد.
فصل 14 کتاب Microservice APIs نحوه استقرار API های میکروسرویس خود را با استفاده از Kubernetes در AWS توضیح میدهد. شما یاد خواهید گرفت که یک خوشه Kubernetes را با استفاده از AWS EKS ایجاد و راه اندازی کنید، چگونه یک پایگاه داده بدون سرور Aurora را در یک شبکه امن راه اندازی کنید، چگونه پیکربندی برنامه را به طور ایمن با استفاده از رمزگذاری پاکت تزریق کنید، و چگونه خدمات خود را برای عملکرد در مقیاس تنظیم کنید.
همه فصلها یک موضوع مشترک دارند: ساخت اجزای یک سکوی تحویل قهوه ساختگی به نام CoffeeMesh. ما CoffeeMesh را در فصل 1 معرفی میکنیم و در فصل 3، سکوی را به میکروسرویسها تقسیم میکنیم. بنابراین، خواندن فصلهای 1 و 3 را برای درک بهتر مثال های معرفی شده در فصل های بعدی توصیه میکنم. در غیر این صورت، هر بخش از کتاب نسبتاً مستقل است و هر فصل کاملاً مستقل است.
برای مثال، اگر میخواهید نحوه طراحی و ساخت APIهای REST را بیاموزید، میتوانید مستقیماً به قسمت 2 بروید و اگر علاقه شما به APIهای GraphQL است، میتوانید روی قسمت 3 تمرکز کنید. به همین ترتیب، اگر میخواهید یاد بگیرید که احراز هویت را اضافه کنید. و مجوز API های خود را، میتوانید مستقیماً به فصل 11 بروید، یا اگر میخواهید نحوه آزمایش API ها را یاد بگیرید، میتوانید مستقیماً به فصل 12 بروید.
برخی از ارجاعات متقابل بین فصلها وجود دارد: به عنوان مثال، فصل 12 به پیادهسازیهای API از قسمتهای 2 و 3 اشاره میکند، اما اگر راحت هستید API ایجاد کنید، باید بتوانید مستقیماً به فصل 12 بروید. همین امر در مورد فصل های دیگر در قسمت 4 نیز صادق است.
سرفصلهای کتاب Microservice APIs:
- inside front cover
- Microservice APIs MEAP V10
- Copyright
- dedication
- contents
- front matter
- Part 1. Introducing Microservice APIs
- Chapter 1: What are microservice web APIs?
- Chapter 2: A basic API implementation
- Chapter 3: Designing and managing microservice APIs
- Part 2. Designing and building REST APIs
- Chapter 4: Designing a RESTful API
- Chapter 5: Producing a REST API specification
- Chapter 6: Implementing REST APIs with Python
- Chapter 7: Service implementation patterns for microservices
- Part 3. Designing and building GraphQL APIs
- Chapter 8: Designing GraphQL APIs
- Chapter 9: Consuming GraphQL APIs
- Chapter 10: Implementing a GraphQL API
- Part 4. Securing, testing, and deploying microservice APIs
- Chapter 11: Authorizing access to your APIs
- 12 Testing and validating APIs
- 13 Dockerizing microservice APIs
- 14 Deploying microservice APIs with Kubernetes
- Appendix A. Types of web APIs and protocols
- Appendix B. Managing an API’s life cycle
- Appendix C. API authorization using an identity provider
- index
- inside back cover
جهت دانلود کتاب Microservice APIs میتوانید پس از پرداخت، دریافت کنید.
دیدگاهها
هیچ دیدگاهی برای این محصول نوشته نشده است.