|
所在平台: Udemy |
课程主页: https://www.udemy.com/course/microservices-nodejs/
课程评论:没有评论
课程名称:微服务 - 构建微服务的方法与实践 课程概述: 本 Coursera 课程深入探讨了微服务架构,旨在帮助学习者理解并掌握构建可扩展、高可用和易于维护的微服务系统。课程强调微服务如何解决传统单体应用在横向扩展、技术栈更新、代码耦合和交付效率等方面遇到的挑战。 课程内容亮点: * **微服务优势与挑战**:分析微服务架构的原子性如何提升弹性、容错性和可维护性,同时也指出其在设计和实现上的新要求。 * **核心设计模式**:深入讲解了交互模式、服务拆分(Decomposition)、命令与查询(CQRS)的实现、领域事件(Domain Events)模型等关键设计模式。 * **实践经验分享**:课程基于讲师在不同公司实施微服务的真实经验,揭示了在微服务落地过程中可能遇到的各种“坑”。 * **技术栈(TypeScript/Node.js/NestJS)**:虽然课程示例代码使用 TypeScript、Node.js 和 NestJS 框架编写,强调理论的普适性,适用于其他语言的学习者。 * **关键技术与实践**: * 项目拆分到服务的具体算法。 * 应用架构的描述性表示法。 * 使用 NX Monorepo 管理项目。 * 微服务间的通信组织。 * 领域事件的生成与处理。 * 消息队列(Message Queues)和 RabbitMQ 的应用。 * 使用 NestJS 构建微服务。 * 实现 CQRS 模式。 * 构建可扩展的异步架构。 * 数据一致性保证与 Saga 模式。 * 微服务测试的最佳实践。 * API 实现模式。 * 数据库操作模式。 * 微服务的部署与运维。 * **理论与实践结合**:课程将理论讲解与“Live-code”环节相结合,学员可以跟随讲师一起构建真实的后端项目。 * **知识巩固**:每个模块后提供测验,以巩固所学知识。 课程目标: 学完本课程后,学员将获得在项目或公司中有效实施微服务方法的知识和技能。课程中展示的所有代码均已在生产环境中使用,所介绍的方法适用于各种复杂度的系统。讲师曾成功实现过包含超过 70 个微服务的系统架构。 **总而言之,这是一门面向实战的微服务课程,通过理论、模式和实际编码相结合的方式,帮助开发者掌握构建复杂、可扩展微服务系统的能力。**
Всё больше компаний обращает своё внимание на микросервисную архитектуру, так как она решает множество проблем монолитных приложений: непростое горизонтальное масштабирование, устаревающий стек, высокая связанность и запутанность кода, а так же медленные процессы сборки, тестирования и выкладки. За счёт атомарности, микросервисная архитектура призвана решить все эти проблемы, а так же повысить отказоустойчивость и упростить поддержку. Но для всего есть и обратная сторона. Микросервисная архитектура требует совершенно другого подхода в проектировании и реализации.В курсы мы как раз посмотрим на все особенность построения микросервисной архитектуры. Мы разберём паттерны взаимодействия, декомпозиции, реализации команд и запросов, модели доменных событий и множество подводных камней, которые вы встретите при внедрении микросервисов. Курс был составлен исходя из моего реального опыта внедрения микросервисов в разных компаниях и тех трудностей, с которыми мне пришлось столкнуться. Несмотря на то, что в курсе мы будем писать код на TypeScript под Node.js, на фреймворке NestJS, он будет полезен и тем, кто пишет на других языках так как содержит много полезного теоретического материала. Мы изучим:- Алгоритм декомпозиции проекта на сервисы- Нотацию описания архитектуры приложения- Работу с репозиторием NX- Организацию коммуникации между микросервисами- Доменные события - их обработку и генерацию- Работу с шинами сообщения и в частности с RabbitMQ- Написание Микросервисов на NestJS- Реализацию паттерна CQRS- Построение масштабируемой асинхронной архитектуры- Обеспечение консистентности данных и паттерн Сага- Особенностям тестирования микросервисов- Паттерны реализации API- Паттерны работы с базами данных- Особенности выкладки и эксплуатации микросервисовЛекции чётко разделены на теоретическую часть и live-code, где мы вместе будем писать код, создавая реальные backend для моей школы PurpleSchool. Благодаря этому разделению независимо от языка вы сможете получить полезные знания. В конце каждого модуля вас ожидает тест, который позволит укрепить ваши знания.В результате курса вы получите знания и навыки для эффективного внедрения микросервисного подхода в вашем проекте или компании. Весь написанный в курсе код в реальности используется на production и все подходы справедливы для систем любой сложности. На практике я реализовывал архитектуру системы, которая состояла более чем из 70 микросервисов.