Создавайте масштабируемые и производительные fullstack приложения на сервере с использованием современных технологий, таких как AppSync, Lambda, DynamoDB и Vue.js. Научитесь строить производительные и масштабируемые полностековые приложения, создавая клон Twitter с нуля.
Технологии serverless позволяют вам создавать масштабируемые и производительные приложения без управления инфраструктурой. GraphQL позволяет создавать мощные API, которые легко использовать и расширять. Вместе они являются идеальным инструментом для создания современных приложений.
Создайте клон Twitter, используя эти современные технологии:
AWS Lambda для обработки серверной части
AWS AppSync для построения гибких API
AWS Cognito для управления аутентификацией
AWS DynamoDB для хранения данных
Vue.js для построения интерфейса
Tailwind CSS для стилизации
Serverless Framework для управления инфраструктурой
AWS Amplify для упрощения разработки
Приобретите практические навыки, ценные для работодателей
Не тратьте время на очередной урок "Hello, World!". Углубитесь и освойте практические навыки, которые на самом деле сделают вас лучшим разработчиком и помогут выделиться из толпы.
Тестирование и отладка
Научитесь тестировать функции Lambda и API AppSync как локально (юнит- и интеграционные тесты), так и удаленно (тесты end-to-end).
Наблюдаемость
Освойте beweb практики ведения журнала, мониторинга и трассировки, чтобы быстро выявлять и устранять проблемы в продакшене.
Паттерны проектирования
Изучите архитектурные паттерны проектирования для серверных приложений и техники моделирования для DynamoDB.
Безопасность
Как обеспечить безопасность вашего приложения и предотвратить несанкционированный доступ.
Опыт современной fullstack разработки
Создайте нетривиальное fullstack приложение, используя современные технологии (GraphQL, AWS, serverless, Vue.js) и практики разработки (инфраструктура как код, непрерывная интеграция/непрерывная доставка, тестирование нагрузки, прогрессивные веб-приложения).
AWS
Получите практический опыт работы с популярными сервисами AWS, такими как AppSync, Lambda, DynamoDB и Cognito.
Vue.js и Tailwind CSS
Изучите, создавая нетривиальное прогрессивное веб-приложение с использованием популярного фреймворка Vue.js и стилизации с Tailwind CSS.
GraphQL
Узнайте, как работает GraphQL, как он сравнивается с REST API и лучшие практики моделирования схем GraphQL.
CI/CD с GitHub Actions
Постоянно тестируйте и развертывайте ваше API с помощью GitHub Actions.
Создайте fullstack клон Twitter
Воплотите в жизнь функции, такие как регистрация пользователей, управление профилем пользователя, отправка твитов, ответы/ретвиты/лайки к твитам, подписки/отписки от пользователей, хэштеги, поиск, личные сообщения и уведомления.
Аутентификация пользователей
Реализуйте процессы регистрации, входа и выхода пользователей с использованием Cognito и Amplify, включая 3-шаговый интерфейс для регистрации в Twitter.
Управление профилем пользователя
Загружайте профиль пользователя с твитами; позволяйте пользователям редактировать свои данные профиля и загружать изображения профиля в S3.
Твитинг
Пользователи могут отправлять твиты, отвечать на твиты или ставить лайк. Твиты будут распространяться в хронологии подписчиков.
Социальные возможности - подписки, ЛС
Пользователи могут подписываться друг на друга и получать твиты в своей хронологии, а также обмениваться личными сообщениями.
Уведомления в реальном времени
Реализуйте уведомления в реальном времени с использованием веб-сокетов.
Готовьтесь к продакшну!
Заставить приложение работать - легкая часть. Сложность заключается в подготовке его к продакшну. Сможет ли оно масштабироваться при росте числа пользователей? Сможете ли вы быстро устранять проблемы? Будет ли оно хорошо работать как на настольных компьютерах, так и на мобильных устройствах?
Прогрессивное веб-приложение (PWA)
Обеспечьте хорошее функционирование интерфейса на настольных компьютерах, планшетах и мобильных устройствах, чтобы пользователи всегда получали отличный опыт, независимо от форм-фактора.
Отслеживание аналитики
Получите представление о том, как пользователи используют ваше приложение. Используйте Kinesis Firehose для загрузки событий кликовых потоков и анализируйте их с помощью Athena.
Наблюдаемость
Настройте оповещения и панели инструментов CloudWatch; исследуйте проблемы производительности с помощью X-Ray; получите подробную метрику разрешения с помощью CloudWatch Insights.
Оптимизация производительности
Оптимизируйте время холодного запуска Lambda и используйте кеширование на уровне разрешения AppSync для улучшения масштабируемости и производительности.
Посмотреть больше
Это пробный урок. Оформите подписку, чтобы получить доступ ко всем материалам курса. Премиум
Ограничение времени просмотра
Вы можете просматривать пробный урок только 10 минут. Получите полный доступ, чтобы смотреть без ограничений.
6.27. Home page- adding Reply- Retweet- Like and Unlike
Урок 105.
00:06:43
6.28. Profile page- setup and styling with Tailwind
Урок 106.
00:13:24
6.29. Profile page- rendering profile details
Урок 107.
00:11:52
6.30. Profile page- rendering profile timeline
Урок 108.
00:31:49
6.31. Profile page- edit profile details
Урок 109.
00:27:08
6.32. Profile page- following-unfollowing a user
Урок 110.
00:18:49
6.33. UI- add infinite scrolling
Урок 111.
00:09:59
6.34. UI- add loading indicator
Урок 112.
00:02:58
6.35. Wrap up
Урок 113.
00:05:28
7.1. Welcome back-
Урок 114.
00:07:02
7.2. Why not Elasticsearch-
Урок 115.
00:01:54
7.3. Sign up to Algolia
Урок 116.
00:12:52
7.4. Sync users and tweets to Algolia
Урок 117.
00:16:34
7.5. Securely handle Algolia API key
Урок 118.
00:04:12
7.6. Add search to GraphQL schema
Урок 119.
00:21:18
7.7. Implement search query
Урок 120.
00:18:54
7.8. Add tests for search query
Урок 121.
00:03:20
7.9. Add getHash Tag to GraphOL schema
Урок 122.
00:10:30
7.10. Implement getHash Tag query
Урок 123.
00:10:34
7.11. Add tests for getHash Tag query
Урок 124.
00:06:47
7.12. What are AppSync subscriptions-
Урок 125.
00:14:56
7.13. Add subscriptions to GraphQL schema
Урок 126.
00:03:31
7.14. Restricting access to on Notified subscription
Урок 127.
00:30:55
7.15. Add subscription for retweets
Урок 128.
00:08:47
7.16. Add subscription for likes
Урок 129.
00:12:35
7.17. Add subscription for mentions
Урок 130.
00:05:53
7.18. Add subscription for replies
Урок 131.
00:19:40
7.19. Add e2e tests for retweeted notifications
Урок 132.
00:08:56
7.20. Use serverless-layers to reduce package size
Урок 133.
00:09:09
7.21. Add e2e tests for liked- replied and mentioned notificatio
Урок 134.
00:05:26
7.22. Support Direct Messages in the GraphQL schema
Урок 135.
00:19:01
7.23. Implement sendDirectMessage mutation
Урок 136.
00:05:52
7.24. Implement listConversations query
Урок 137.
00:10:42
7.25. Implement getDirectMessages query
Урок 138.
00:02:32
7.26. Support notifyDMed in the GraphQL schema
Урок 139.
00:09:37
7.27. Implement the notifyDMed notification
Урок 140.
00:04:33
7.28. What about group messaging*
Урок 141.
00:08:57
7.29. Understanding AppSync caching
Урок 142.
00:20:07
7.31. Configure per-resolver caching
Урок 143.
00:25:30
7.32. Use BatchInvoke to reduce the number of Lambda invocations
Урок 144.
00:09:09
7.34. Report individual errors in a BatchInvoke request
Урок 145.
00:10:22
7.35. How can we implement two-way pagination
Урок 146.
00:03:17
7.36. Wrap up
Урок 147.
00:22:44
8.1. Add search page
Урок 148.
00:23:26
8.2. Add hashtag page
Урок 149.
00:22:13
8.3. Add notifications page
Урок 150.
00:17:36
8.4. Add messages page
Урок 151.
00:13:52
8.5. Send direct messages
Урок 152.
00:13:02
8.6. Layout and Profile page integration
Урок 153.
00:01:34
8.7. Wrap up
Урок 154.
00:03:14
9.1. Welcome back-
Урок 155.
00:12:28
9.2. Kinesis Firehose 101
Урок 156.
00:12:18
9.3. Configure Kinesis Firehose
Урок 157.
00:14:25
9.4. Configure Cognito Identity Pool and IAM role
Урок 158.
00:05:34
9.5. Update schema to return Kinesis Firehose stream name
Урок 159.
00:08:44
9.6. How to create unauthenticated GraphOl operations in AppSync
Урок 160.
00:08:20
9.7. Catalog and query analytics events
Урок 161.
00:01:21
9.9. Wrap up
Урок 162.
00:19:24
10.1. Mobile styling
Урок 163.
00:27:15
10.2. How to make a Progressive Web Application
Урок 164.
00:04:35
10.3. Get IAM credentials from Cognito Identity Pool
Урок 165.
00:07:26
10.4. Track - sign up- button clicks
Урок 166.
00:18:20
11.1. Understanding the AppSync logging options
Урок 167.
00:10:33
11.2. Configure AppSync Logging
Урок 168.
00:16:52
11.3. Implement sampling for resolver logs
Урок 169.
00:05:57
11.4. Set log retention for all log groups
Урок 170.
00:18:08
11.5. Configure tracing with X-Ray
Урок 171.
00:06:32
11.6. X-Ray shortcomings
Урок 172.
00:07:06
11.7. My observability strategy
Урок 173.
00:12:34
11.8. Set up dashboards in CloudWatch
Урок 174.
00:09:10
11.9. Set up CloudWatch alerts
Урок 175.
00:14:42
11.10. Configuring Lumigo
Урок 176.
00:02:25
11.11. Wrap up
Урок 177.
00:05:30
12.1. How to configure custom domain names
Урок 178.
00:07:12
12.2. Considerations for scaling an AppSync API
Урок 179.
00:25:47
12.3. Load testing the AppSync API
Урок 180.
00:07:15
12.4. Versioning AppSync APIs
Урок 181.
00:14:21
12.5. How to model multi-tenant applications with Cognito
Урок 182.
00:05:08
12.6. How to model multi-tenant applications with Lambda authorizer
Урок 183.
00:05:44
12.7. How to handle advanced multi-tenant use cases
Урок 184.
00:08:31
12.8. GraphCDN
Урок 185.
00:58:47
13.1. Live Q-A -1 -27th Nov 2020
Урок 186.
01:09:24
13.2. Live Q-A -2 -12th Mar 2021
Урок 187.
01:05:50
13.3. Live Q-A -3 -30th July 2021
Автор - Yan Cui
Yan Cui
Я являюсь AWS Serverless Hero. С 2010 года я разворачиваю продуктивные рабочие нагрузки на платформе AWS и помог тысячам разработчиков быстро освоить AWS и серверный подход.
У меня богатый опыт архитектора и главного инженера в различных отраслях, включая банковское дело, электронную коммерцию, трансляцию спортивных событий и мобильные игры. В настоящее время я помогаю клиентам внедрять AWS и серверный подход в качестве независимого консультанта
Команда внимательно читает ваши комментарии и оперативно на них реагирует. Вы можете спокойно оставлять запросы на обновления или задавать любые вопросы о курсе здесь.
Разверните бессерверное приложение Javascript на основе GraphQL и React JS в облаке AWS с помощью AWS AppSync и AWS Amplify. AWS AppSync и AWS Amplify - лучший способ начать развертывание приложений на основе GraphQL в облаке AWS без развертывания каких-либо серверов с неограниченным масштабированием. Добро пожаловать в великий мир бессерверных вычислений!
Масштабируемые Offline-Ready приложения GraphQL с AWS AppSync и React
Scalable Offline-Ready GraphQL Applications with AWS AppSync & React
С GraphQL вы можете определить форму ваших данных в схеме, и GraphQL выполнит запрос с точными данными, которые вам нужны. Когда вам это нужно. Это не обходится без затрат. GraphQL значительно усложняет ваше приложение, требуя от вас определения схем с помощью типов, мутаций и распознавателей.