لطفا جهت اطلاع از آخرین دوره ها و اخبار سایت در
کانال تلگرام
عضو شوید.
آموزش کار با Microservices در Go (Golang)
Working with Microservices in Go (Golang)
نکته:
آخرین آپدیت رو دریافت میکنید حتی اگر این محتوا بروز نباشد.
نمونه ویدیوها:
توضیحات دوره:
برنامههای کاربردی توزیعشده بسیار در دسترس، مقیاسپذیر و انعطافپذیر را با استفاده از Go بسازید میکروسرویسها چیست و چه زمانی از آنها استفاده کنید چگونه برنامههای کاربردی تک منظورهای با جفت آزاد ایجاد کنیم که به عنوان یک برنامه توزیع شده با هم کار میکنند. نحوه انتقال رویدادها به میکروسرویس ها با استفاده از پروتکل پیشرفته صف پیام (AMQP) با استفاده از RabbitMQ نحوه استقرار برنامه توزیع شده خود در Docker Swarm نحوه استقرار برنامه توزیع شده خود در یک خوشه Kubernetes پیش نیازها: درک اساسی از زبان برنامه نویسی Go Macintosh ، رایانه ویندوز یا لینوکس با اتصال به اینترنت
برای مدت طولانی، برنامه های کاربردی وب معمولاً یک برنامه کاربردی واحد بودند که همه چیز را مدیریت می کرد - به عبارت دیگر، یک برنامه یکپارچه. این یکپارچه احراز هویت کاربر، ورود به سیستم، ارسال ایمیل و هر چیز دیگری را مدیریت می کرد. در حالی که این هنوز یک رویکرد محبوب (و مفید) است، امروزه، بسیاری از برنامه های کاربردی در مقیاس بزرگتر تمایل دارند موارد را به میکروسرویس ها تقسیم کنند. امروزه، بیشتر سازمانهای بزرگ با استفاده از این رویکرد و با دلایل موجه، بر روی ساخت برنامههای کاربردی وب متمرکز شدهاند.
میکروسرویسها، که به عنوان معماری میکروسرویس نیز شناخته میشوند، یک سبک معماری هستند که یک برنامه کاربردی را بهعنوان مجموعهای از برنامههای کوچکتر به هم پیوسته تشکیل میدهند. معماری میکروسرویس امکان تحویل سریع و مطمئن برنامه های بزرگ و پیچیده را فراهم می کند. برخی از رایج ترین ویژگی های یک میکروسرویس عبارتند از:
قابل نگهداری و آزمایش است؛
به طور آزاد با سایر بخشهای برنامه همراه است؛
می تواند به خودی خود مستقر شود؛
بر اساس قابلیتهای تجاری سازماندهی شده است؛
اغلب متعلق به یک تیم کوچک است.
در این دوره آموزشی، ما تعدادی میکروسرویس کوچک، مستقل و با اتصال آزاد ایجاد خواهیم کرد که با یکدیگر ارتباط برقرار می کنند و یک برنامه کاربردی ساده با یک REST API، با RPC، از طریق gRPC و توسط ارسال و مصرف پیام ها با استفاده از AMQP، پروتکل پیشرفته صف پیام. میکروسرویس هایی که ما می سازیم شامل عملکردهای زیر خواهد بود:
یک سرویس Front End، که فقط صفحات وب را نمایش می دهد؛
یک سرویس احراز هویت، با پایگاه داده Postgres؛
یک سرویس ورود به سیستم، با پایگاه داده MongoDB؛
یک سرویس شنونده، که پیامها را از RabbitMQ دریافت میکند و بر اساس آنها عمل میکند؛
یک سرویس کارگزار، که یک نقطه ورودی اختیاری به خوشه میکروسرویس است؛
یک سرویس ایمیل، که یک بار JSON را می گیرد، به یک ایمیل فرمت شده تبدیل می کند و آن را ارسال می کند.
همه این سرویسها در Go نوشته میشوند، که معمولاً به آن Golang گفته میشود، زبانی که مخصوصاً برای ساخت برنامههای وب توزیعشده مناسب است.
همچنین یاد خواهیم گرفت که چگونه برنامه توزیع شده خود را در Docker Swarm و Kubernetes مستقر کنیم، و چگونه در صورت لزوم، افزایش و کاهش دهیم، و میکروسرویس های جداگانه را با زمان کم یا بدون توقف به روز کنیم.
سرفصل ها و درس ها
معرفی
Introduction
معرفی
Introduction
نصب کد ویژوال استودیو
Installing Visual Studio Code
در حال نصب Make
Installing Make
درخواست کمک
Asking for help
معرفی
Introduction
معرفی
Introduction
درمورد من
About me
درمورد من
About me
در حال نصب Go
Installing Go
در حال نصب Go
Installing Go
نصب کد ویژوال استودیو
Installing Visual Studio Code
در حال نصب Make
Installing Make
نصب Docker
Installing Docker
نصب Docker
Installing Docker
درخواست کمک
Asking for help
اشتباهات: همه ما مرتکبشان می شویم.
Mistakes: we all make them.
اشتباهات: همه ما مرتکبشان می شویم.
Mistakes: we all make them.
ساخت یک جلوی ساده و یک میکروسرویس
Building a simple front end and one Microservice
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
اولین خدمات ما: کارگزار
Our first service: the Broker
ایجاد برخی از توابع کمکی برای مقابله با JSON و موارد دیگر
Creating some helper functions to deal with JSON and such
ساخت یک جلوی ساده و یک میکروسرویس
Building a simple front end and one Microservice
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
راه اندازی قسمت جلویی
Setting up the front end
راه اندازی قسمت جلویی
Setting up the front end
بررسی کد جلویی
Reviewing the front end code
بررسی کد جلویی
Reviewing the front end code
اولین خدمات ما: کارگزار
Our first service: the Broker
ساخت یک تصویر داکر برای سرویس بروکر
Building a docker image for the Broker service
ساخت یک تصویر داکر برای سرویس بروکر
Building a docker image for the Broker service
اضافه کردن یک دکمه و جاوا اسکریپت به قسمت جلو
Adding a button and JavaScript to the front end
اضافه کردن یک دکمه و جاوا اسکریپت به قسمت جلو
Adding a button and JavaScript to the front end
ایجاد برخی از توابع کمکی برای مقابله با JSON و موارد دیگر
Creating some helper functions to deal with JSON and such
ساده کردن کارها با Makefile (مک و لینوکس)
Simplifying things with a Makefile (Mac & Linux)
ساده کردن کارها با Makefile (مک و لینوکس)
Simplifying things with a Makefile (Mac & Linux)
ساده کردن کارها با Makefile (ویندوز)
Simplifying things with a Makefile (Windows)
ساده کردن کارها با Makefile (ویندوز)
Simplifying things with a Makefile (Windows)
ساخت یک سرویس احراز هویت
Building an Authentication Service
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
ایجاد و اتصال به Postgres از سرویس Authentication
Creating and connecting to Postgres from the Authentication service
افزودن مسیر و کنترلر برای پذیرش JSON
Adding a route and handler to accept JSON
بروکر را برای قالب استاندارد JSON به روز کنید و به سرویس Auth ما وصل شوید
Update the Broker for a standard JSON format, and conect to our Auth service
ساخت یک سرویس احراز هویت
Building an Authentication Service
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
راه اندازی یک سرویس احراز هویت خرد
Setting up a stub Authentication service
راه اندازی یک سرویس احراز هویت خرد
Setting up a stub Authentication service
ایجاد و اتصال به Postgres از سرویس Authentication
Creating and connecting to Postgres from the Authentication service
یادداشتی در مورد PostgreSQL
A note about PostgreSQL
یادداشتی در مورد PostgreSQL
A note about PostgreSQL
در حال بهروزرسانی docker-compose.yml برای Postgres و سرویس احراز هویت
Updating our docker-compose.yml for Postgres and the Authentication service
در حال بهروزرسانی docker-compose.yml برای Postgres و سرویس احراز هویت
Updating our docker-compose.yml for Postgres and the Authentication service
پر کردن پایگاه داده Postgres
Populating the Postgres database
پر کردن پایگاه داده Postgres
Populating the Postgres database
افزودن مسیر و کنترلر برای پذیرش JSON
Adding a route and handler to accept JSON
بروکر را برای قالب استاندارد JSON به روز کنید و به سرویس Auth ما وصل شوید
Update the Broker for a standard JSON format, and conect to our Auth service
به روز رسانی قسمت جلویی برای احراز هویت کامل بروکر و امتحان کردن چیزها
Updating the front end to authenticate thorough the Broker and trying things out
به روز رسانی قسمت جلویی برای احراز هویت کامل بروکر و امتحان کردن چیزها
Updating the front end to authenticate thorough the Broker and trying things out
ساخت یک سرویس چوبگیر
Building a Logger Service
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
شروع کار با سرویس Logger
Getting started with the Logger service
راه اندازی مدل های داده Logger
Setting up the Logger data models
راهاندازی مسیرها، کنترلکنندهها، کمککنندهها و یک وب سرور در سرویس لاگر ما
Setting up routes, handlers, helpers, and a web server in our logger-service
افزودن MongoDB به فایل docker-compose.yml ما
Adding MongoDB to our docker-compose.yml file
امتحان کردن چیزها
Trying things out
ساخت یک سرویس چوبگیر
Building a Logger Service
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
شروع کار با سرویس Logger
Getting started with the Logger service
راه اندازی مدل های داده Logger
Setting up the Logger data models
در حال تکمیل مدل های داده Logger
Finishing up the Logger data models
در حال تکمیل مدل های داده Logger
Finishing up the Logger data models
راهاندازی مسیرها، کنترلکنندهها، کمککنندهها و یک وب سرور در سرویس لاگر ما
Setting up routes, handlers, helpers, and a web server in our logger-service
افزودن MongoDB به فایل docker-compose.yml ما
Adding MongoDB to our docker-compose.yml file
Logger-service را به docker-compose.yml و Makefile اضافه کنید
Add the logger-service to docker-compose.yml and the Makefile
Logger-service را به docker-compose.yml و Makefile اضافه کنید
Add the logger-service to docker-compose.yml and the Makefile
افزودن مسیر و کنترل کننده در بروکر برای ارتباط با سرویس لاگر
Adding a route and handler on the Broker to communicate with the logger service
افزودن مسیر و کنترل کننده در بروکر برای ارتباط با سرویس لاگر
Adding a route and handler on the Broker to communicate with the logger service
قسمت جلویی را برای ارسال به لاگر، از طریق کارگزار، به روز کنید
Update the front end to post to the logger, via the broker
قسمت جلویی را برای ارسال به لاگر، از طریق کارگزار، به روز کنید
Update the front end to post to the logger, via the broker
ورود به سیستم اولیه را به سرویس Authentication اضافه کنید
Add basic logging to the Authentication service
ورود به سیستم اولیه را به سرویس Authentication اضافه کنید
Add basic logging to the Authentication service
امتحان کردن چیزها
Trying things out
ساخت یک سرویس پستی
Building a Mail Service
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
افزودن Mailhog به docker-compose.yml ما
Adding Mailhog to our docker-compose.yml
راه اندازی میکروسرویس پست خرد
Setting up a stub Mail microservice
ایجاد منطق برای ارسال ایمیل
Building the logic to send email
چالش: افزودن سرویس Mail به docker-compose.yml و Makefile
Challenge: Adding the Mail service to docker-compose.yml and the Makefile
راه حل چالش
Solution to challenge
به روز رسانی قسمت جلویی برای ارسال نامه
Updating the front end to send mail
یادداشتی در مورد پست و امنیت
A note about mail and security
ساخت یک سرویس پستی
Building a Mail Service
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
افزودن Mailhog به docker-compose.yml ما
Adding Mailhog to our docker-compose.yml
راه اندازی میکروسرویس پست خرد
Setting up a stub Mail microservice
ایجاد منطق برای ارسال ایمیل
Building the logic to send email
ساخت مسیرها، کنترلکنندهها و الگوهای ایمیل
Building the routes, handlers, and email templates
ساخت مسیرها، کنترلکنندهها و الگوهای ایمیل
Building the routes, handlers, and email templates
چالش: افزودن سرویس Mail به docker-compose.yml و Makefile
Challenge: Adding the Mail service to docker-compose.yml and the Makefile
راه حل چالش
Solution to challenge
تغییر سرویس کارگزار برای رسیدگی به نامه
Modifying the Broker service to handle mail
تغییر سرویس کارگزار برای رسیدگی به نامه
Modifying the Broker service to handle mail
به روز رسانی قسمت جلویی برای ارسال نامه
Updating the front end to send mail
یادداشتی در مورد پست و امنیت
A note about mail and security
ساخت سرویس شنونده: AMQP با RabbitMQ
Building a Listener service: AMQP with RabbitMQ
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
ایجاد یک سرویس شنونده خرد
Creating a stub Listener service
اتصال به RabbitMQ
Connecting to RabbitMQ
نوشتن توابع برای تعامل با RabbitMQ
Writing functions to interact with RabbitMQ
افزودن یک تابع logEvent به میکروسرویس Linder
Adding a logEvent function to our Listener microservice
URL سرور RabbitMQ را به آدرس Docker تغییر دهید
Change the RabbitMQ server URL to the Docker address
ایجاد یک تصویر Docker و به روز رسانی Makefile
Creating a Docker image and updating the Makefile
امتحان کردن چیزها
Trying things out
ساخت سرویس شنونده: AMQP با RabbitMQ
Building a Listener service: AMQP with RabbitMQ
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
ایجاد یک سرویس شنونده خرد
Creating a stub Listener service
افزودن RabbitMQ به docker-compose.yml ما
Adding RabbitMQ to our docker-compose.yml
افزودن RabbitMQ به docker-compose.yml ما
Adding RabbitMQ to our docker-compose.yml
اتصال به RabbitMQ
Connecting to RabbitMQ
نوشتن توابع برای تعامل با RabbitMQ
Writing functions to interact with RabbitMQ
افزودن یک تابع logEvent به میکروسرویس Linder
Adding a logEvent function to our Listener microservice
در حال به روز رسانی main.go برای شروع عملکرد Linder
Updating main.go to start the Listener function
در حال به روز رسانی main.go برای شروع عملکرد Linder
Updating main.go to start the Listener function
URL سرور RabbitMQ را به آدرس Docker تغییر دهید
Change the RabbitMQ server URL to the Docker address
ایجاد یک تصویر Docker و به روز رسانی Makefile
Creating a Docker image and updating the Makefile
به روز رسانی کارگزار برای تعامل با RabbitMQ
Updating the broker to interact with RabbitMQ
به روز رسانی کارگزار برای تعامل با RabbitMQ
Updating the broker to interact with RabbitMQ
نوشتن منطق برای Emit رویدادها به RabbitMQ
Writing logic to Emit events to RabbitMQ
نوشتن منطق برای Emit رویدادها به RabbitMQ
Writing logic to Emit events to RabbitMQ
افزودن یک تابع جدید در Broker برای ثبت موارد از طریق RabbitMQ
Adding a new function in the Broker to log items via RabbitMQ
افزودن یک تابع جدید در Broker برای ثبت موارد از طریق RabbitMQ
Adding a new function in the Broker to log items via RabbitMQ
امتحان کردن چیزها
Trying things out
برقراری ارتباط بین سرویس ها با استفاده از تماس های رویه از راه دور (RPC)
Communicating between services using Remote Procedure Calls (RPC)
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
راه اندازی سرور RPC در میکروسرویس Logger
Setting up an RPC server in the Logger microservice
گوش دادن به تماسهای RPC در میکروسرویس Logger
Listening for RPC calls in the Logger microservice
فراخوانی Logger از بروکر با استفاده از RPC
Calling the Logger from the Broker using RPC
فراخوانی Logger از بروکر با استفاده از RPC
Calling the Logger from the Broker using RPC
امتحان کردن چیزها
Trying things out
برقراری ارتباط بین سرویس ها با استفاده از تماس های رویه از راه دور (RPC)
Communicating between services using Remote Procedure Calls (RPC)
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
راه اندازی سرور RPC در میکروسرویس Logger
Setting up an RPC server in the Logger microservice
گوش دادن به تماسهای RPC در میکروسرویس Logger
Listening for RPC calls in the Logger microservice
امتحان کردن چیزها
Trying things out
سرعت بخشیدن به کارها (به طور بالقوه) با gRPC
Speeding things up (potentially) with gRPC
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
نصب ابزارهای لازم برای gRPC
Installing the necessary tools for gRPC
نصب ابزارهای لازم برای gRPC
Installing the necessary tools for gRPC
تعریف یک پروتکل برای gRPC: فایل .proto
Defining a Protocol for gRPC: the .proto file
تعریف یک پروتکل برای gRPC: فایل .proto
Defining a Protocol for gRPC: the .proto file
تولید کد gRPC از خط فرمان
Generating the gRPC code from the command line
تولید کد gRPC از خط فرمان
Generating the gRPC code from the command line
شروع کار با سرور gRPC
Getting started with the gRPC server
شروع کار با سرور gRPC
Getting started with the gRPC server
گوش دادن به اتصالات gRPC در میکروسرویس Logger
Listening for gRPC connections in the Logger microservice
گوش دادن به اتصالات gRPC در میکروسرویس Logger
Listening for gRPC connections in the Logger microservice
نوشتن کد مشتری
Writing the client code
به روز رسانی کد جلویی
Updating the front end code
به روز رسانی کد جلویی
Updating the front end code
امتحان کردن چیزها
Trying things out
امتحان کردن چیزها
Trying things out
سرعت بخشیدن به کارها (به طور بالقوه) با gRPC
Speeding things up (potentially) with gRPC
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
نوشتن کد مشتری
Writing the client code
استقرار برنامه توزیع شده ما با استفاده از Docker Swarm
Deploying our Distributed App using Docker Swarm
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
ساختن تصاویر برای میکروسرویس های ما
Building images for our microservices
ساختن تصاویر برای میکروسرویس های ما
Building images for our microservices
ایجاد یک فایل استقرار ازدحام Docker
Creating a Docker swarm deployment file
راه اندازی و راه اندازی Docker Swarm
Initializing and starting Docker Swarm
شروع جلو و ضربه زدن به دسته ما
Starting the front end and hitting our swarm
خدمات مقیاس بندی
Scaling services
خدمات مقیاس بندی
Scaling services
به روز رسانی خدمات
Updating services
به روز رسانی خدمات
Updating services
توقف ازدحام داکر
Stopping Docker swarm
به روز رسانی سرویس Broker و ایجاد یک Dockerfile برای قسمت جلویی
Updating the Broker service, and creating a Dockerfile for the front end
به روز رسانی سرویس Broker و ایجاد یک Dockerfile برای قسمت جلویی
Updating the Broker service, and creating a Dockerfile for the front end
راه حل چالش
Solution to the Challenge
راه حل چالش
Solution to the Challenge
افزودن Front end به فایل استقرار swarm.yml ما
Adding the Front end to our swarm.yml deployment file
افزودن Front end به فایل استقرار swarm.yml ما
Adding the Front end to our swarm.yml deployment file
افزودن Caddy به ترکیب به عنوان یک پروکسی به سمت جلو و کارگزار
Adding Caddy to the mix as a Proxy to our front end and the broker
تغییر فایل میزبان ما برای افزودن یک ورودی "پشتیبان" و بالا آوردن ازدحام ما
Modifying our hosts file to add a "backend" entry and bringing up our swarm
چالش: تصحیح URL به سرویس کارگزار در قسمت جلویی
Challenge: correcting the URL to the broker service in the front end
چالش: تصحیح URL به سرویس کارگزار در قسمت جلویی
Challenge: correcting the URL to the broker service in the front end
راه حل چالش
Solution to challenge
راه حل چالش
Solution to challenge
به روز رسانی Postgres به 14.2 - چرا نظارت مهم است!
Updating Postgres to 14.2 - why monitoring is important!
به روز رسانی Postgres به 14.2 - چرا نظارت مهم است!
Updating Postgres to 14.2 - why monitoring is important!
در حال چرخش دو سرور جدید در Linode
Spinning up two new servers on Linode
راه اندازی یک حساب غیر ریشه و قرار دادن فایروال در محل.
Setting up a non-root account and putting a firewall in place.
نصب داکر روی سرورها
Installing Docker on the servers
نصب داکر روی سرورها
Installing Docker on the servers
تنظیم نام میزبان برای سرور ما
Setting the hostname for our server
تنظیم نام میزبان برای سرور ما
Setting the hostname for our server
افزودن ورودی های DNS برای سرورهای ما
Adding DNS entries for our servers
افزودن ورودی DNS برای سرویس Broker
Adding a DNS entry for the Broker service
افزودن ورودی DNS برای سرویس Broker
Adding a DNS entry for the Broker service
راه اندازی یک مدیر، و اضافه کردن یک کارگر
Initializing a manager, and adding a worker
راه اندازی یک مدیر، و اضافه کردن یک کارگر
Initializing a manager, and adding a worker
در حال بهروزرسانی فایل docker swarm.yml و Caddy برای تولید
Updating our swarm.yml and Caddy dockerfile for production
در حال بهروزرسانی فایل docker swarm.yml و Caddy برای تولید
Updating our swarm.yml and Caddy dockerfile for production
امتحان کردن چیزها، و اصلاح برخی از اشتباهات
Trying things out, and correcting some mistakes
امتحان کردن چیزها، و اصلاح برخی از اشتباهات
Trying things out, and correcting some mistakes
پر کردن پایگاه داده راه دور با استفاده از یک تونل SSH
Populating the remote database using an SSH tunnel
فعال کردن گواهیهای SSL در میکروسرویس Caddy
Enabling SSL certificates on the Caddy microservice
استقرار برنامه توزیع شده ما با استفاده از Docker Swarm
Deploying our Distributed App using Docker Swarm
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
ایجاد یک فایل استقرار ازدحام Docker
Creating a Docker swarm deployment file
راه اندازی و راه اندازی Docker Swarm
Initializing and starting Docker Swarm
شروع جلو و ضربه زدن به دسته ما
Starting the front end and hitting our swarm
خدمات مقیاس بندی
Scaling services
به روز رسانی خدمات
Updating services
توقف ازدحام داکر
Stopping Docker swarm
افزودن Caddy به ترکیب به عنوان یک پروکسی به سمت جلو و کارگزار
Adding Caddy to the mix as a Proxy to our front end and the broker
تغییر فایل میزبان ما برای افزودن یک ورودی "پشتیبان" و بالا آوردن ازدحام ما
Modifying our hosts file to add a "backend" entry and bringing up our swarm
در حال چرخش دو سرور جدید در Linode
Spinning up two new servers on Linode
راه اندازی یک حساب غیر ریشه و قرار دادن فایروال در محل.
Setting up a non-root account and putting a firewall in place.
افزودن ورودی های DNS برای سرورهای ما
Adding DNS entries for our servers
پر کردن پایگاه داده راه دور با استفاده از یک تونل SSH
Populating the remote database using an SSH tunnel
فعال کردن گواهیهای SSL در میکروسرویس Caddy
Enabling SSL certificates on the Caddy microservice
استقرار برنامه توزیع شده ما در Kubernetes
Deploying our Distributed App to Kubernetes
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
نصب minikube
Installing minikube
نصب minikube
Installing minikube
نصب Kubectl
Installing kubectl
راه اندازی یک خوشه
Initializing a cluster
راه اندازی یک خوشه
Initializing a cluster
معرفی داشبورد k8s
Bringing up the k8s dashboard
معرفی داشبورد k8s
Bringing up the k8s dashboard
ایجاد یک فایل استقرار برای Mongo
Creating a deployment file for Mongo
ایجاد یک فایل استقرار برای RabbitMQ
Creating a deployment file for RabbitMQ
ایجاد یک فایل استقرار برای سرویس Broker
Creating a deployment file for the Broker service
وقتی همه چیز خراب می شود ...
When things go wrong...
ایجاد یک فایل استقرار برای MailHog
Creating a deployment file for MailHog
ایجاد یک فایل استقرار برای MailHog
Creating a deployment file for MailHog
ایجاد یک فایل استقرار برای میکروسرویس Mail
Creating a deployment file for the Mail microservice
ایجاد یک فایل استقرار برای سرویس Logger
Creating a deployment file for the Logger service
ایجاد یک فایل استقرار برای سرویس Logger
Creating a deployment file for the Logger service
ایجاد یک فایل استقرار برای سرویس Listener
Creating a deployment file for the Listener service
Postgres را روی ماشین میزبان اجرا می کنیم، بنابراین می توانیم از k8s به آن متصل شویم
Running Postgres on the host machine, so we can connect to it from k8s
Postgres را روی ماشین میزبان اجرا می کنیم، بنابراین می توانیم از k8s به آن متصل شویم
Running Postgres on the host machine, so we can connect to it from k8s
ایجاد یک فایل استقرار برای سرویس Authentication
Creating a deployment file for the Authentication service
با افزودن یک سرویس LoadBalancer همه چیز را امتحان کنید
Trying things out by adding a LoadBalancer service
با افزودن یک سرویس LoadBalancer همه چیز را امتحان کنید
Trying things out by adding a LoadBalancer service
ایجاد یک فایل استقرار برای میکروسرویس Front End
Creating a deployment file for the Front End microservice
ایجاد یک فایل استقرار برای میکروسرویس Front End
Creating a deployment file for the Front End microservice
اضافه کردن یک nginx Ingress به خوشه ما
Adding an nginx Ingress to our cluster
اضافه کردن یک nginx Ingress به خوشه ما
Adding an nginx Ingress to our cluster
در حال امتحان کردن Ingress ما
Trying out our Ingress
در حال امتحان کردن Ingress ما
Trying out our Ingress
خدمات مقیاس بندی
Scaling services
خدمات مقیاس بندی
Scaling services
به روز رسانی خدمات
Updating services
به روز رسانی خدمات
Updating services
استقرار در خدمات ابری
Deploying to cloud services
استقرار برنامه توزیع شده ما در Kubernetes
Deploying our Distributed App to Kubernetes
آنچه در این بخش به آن خواهیم پرداخت
What we'll cover in this section
نصب Kubectl
Installing kubectl
ایجاد یک فایل استقرار برای Mongo
Creating a deployment file for Mongo
ایجاد یک فایل استقرار برای RabbitMQ
Creating a deployment file for RabbitMQ
ایجاد یک فایل استقرار برای سرویس Broker
Creating a deployment file for the Broker service
وقتی همه چیز خراب می شود ...
When things go wrong...
ایجاد یک فایل استقرار برای میکروسرویس Mail
Creating a deployment file for the Mail microservice
ایجاد یک فایل استقرار برای سرویس Listener
Creating a deployment file for the Listener service
ایجاد یک فایل استقرار برای سرویس Authentication
Creating a deployment file for the Authentication service
خدمات مقیاس بندی
Scaling services
به روز رسانی خدمات
Updating services
استقرار در خدمات ابری
Deploying to cloud services
تست میکروسرویس ها
Testing Microservices
مسیرهای تست
Testing Routes
مسیرهای تست
Testing Routes
شروع با الگوی Repository برای بسته داده ما
Getting started with the Repository pattern for our data package
در حال بهروزرسانی مدلها، کنترلکنندهها و عملکرد اصلی برای استفاده از مخزن ما
Updating our models, handlers, and the main function to use our repository
راه اندازی یک مخزن تست
Setting up a Test repository
راه اندازی یک مخزن تست
Setting up a Test repository
تصحیح یک غفلت (بسیار احمقانه) در models.go
Correcting a (rather stupid) oversight in models.go
کنترل کننده های تست
Testing Handlers
تمسخر تماس ما با Logger-service برای آزمایش
Mocking our call to the logger-service for tests
بخش تست در حال انجام است...
Testing section in progress...
تست میکروسرویس ها
Testing Microservices
شروع با الگوی Repository برای بسته داده ما
Getting started with the Repository pattern for our data package
در حال بهروزرسانی مدلها، کنترلکنندهها و عملکرد اصلی برای استفاده از مخزن ما
Updating our models, handlers, and the main function to use our repository
تصحیح یک غفلت (بسیار احمقانه) در models.go
Correcting a (rather stupid) oversight in models.go
کنترل کننده های تست
Testing Handlers
تمسخر تماس ما با Logger-service برای آزمایش
Mocking our call to the logger-service for tests
بخش تست در حال انجام است...
Testing section in progress...
افکار نهایی
Final Thoughts
فقط چند نظر و مشاهدات نهایی
Just some final thoughts and observations
فقط چند نظر و مشاهدات نهایی
Just some final thoughts and observations
نمایش نظرات