Мікросервіси – це останній ‘модний’ та гарячий тематичний розділ у сфері веб-розробки на даний момент, і в наш час володіння мікросервісами стає все більш важливим у навичках розробника. Цей курс покликаний навчити вас, як створювати програму на основі мікросервісів, використовуючи .Net для бекенд-сервісів та Next.js для клієнтської програми. Ми починаємо з нуля і поступово створюємо додаток доти, доки у нас не буде завершеної програми, яку ми зможемо розмістити в кластері Kubernetes в інтернеті.
У цьому курсі розглядаються такі теми:
Створення кількох бекенд-сервісів з використанням .Net, що надають функціональність для програми.
Взаємодія між сервісами з використанням RabbitMQ та gRPC.
Використання IdentityServer як постачальника ідентифікації.
Створення шлюзу за допомогою Microsoft YARP.
Створення клієнтської програми за допомогою Next.js за допомогою нової функціональності маршрутизації додатків (починаючи з Next.js 13.4).
Використання SignalR для надсилання повідомлень на клієнтську програму.
Створення образів Docker для різноманітних сервісів.
Налаштування робочих процесів CI/CD за допомогою GitHub Actions.
Додавання контролерів входу.
Розміщення програми локально за допомогою Docker Compose.
Основна мета основної частини цього курсу – створити цю програму і мати можливість запускати та розміщувати все локально, не підписуючись та не оплачуючи будь-які хмарні послуги. Після завершення основної частини курсу є 3 додаткові програми, які охоплюють:
Юніт-тестування та інтеграційне тестування.
Розміщення локально у Kubernetes.
Розміщення програми у кластері Kubernetes в інтернеті.
Інструменти, необхідні для цього курсу:
У цьому курсі всі уроки демонструються за допомогою Visual Studio Code, безкоштовного (і фантастичного) редактора коду, сумісного з різними операційними системами. Звичайно, ви можете використовувати будь-який редактор коду та будь-яку операційну систему, але вони мають бути Windows, Linux або Mac. Будь ласка, переконайтеся, що ваш комп’ютер може запускати Docker, оскільки це потрібно для цього курсу.
Чи для вас цей курс?
Цей курс дуже практичний, близько 90% уроків включатимуть спільне програмування над проектом. Якщо ви той тип людини, яка найкраще вчиться, роблячи, то цей курс є точно для вас.
У цьому курсі ми створимо приклад програми для аукціонів з кількома сервісами, які ми використовуватимемо для забезпечення його функціональності. Для клієнтської частини ми використовуємо Next.js, щоб скористатися його можливостями як на стороні клієнта, так і на стороні сервера, що ідеально підходить для нашого проекту. Вам буде потрібно лише комп’ютер з вашою улюбленою операційною системою, здатною запускати Docker, і бажання навчитися створювати програму на основі мікросервісів з використанням .Net та Next.js.