视频

了解更多
三位获胜者。三个独特的应用——以及实时应用性能方面的丰富创新。
2022 年 Redis 黑客马拉松于 2022 年 8 月与 DEV 合作启动。Redis 呼吁 dev.to 社区最积极、最有创意的头脑,利用 Redis Enterprise 的众多功能、模块和产品构建应用。Redis 的优势远不止缓存,因此本次竞赛挑战社区展示在企业级性能支持下构建应用的潜力。
下载我们的电子书 企业级缓存:优化应用性能的策略。
我们在四个项目类别中收到了 91 份有效提交
Redis 黑客马拉松评选出五名大奖得主、20 名亚军以及 25 名提交作品附带五分钟或更长视频的额外参与者。
他们都取得了非凡的成就,因此我们邀请了三位大奖得主分享他们的项目技术细节,包括利用 Redis 扩展应用的计划。
大家好,我是 Subham Sahu,一名热爱探索和构建事物的工程师。我最近刚从印度罗帕尔理工学院本科毕业。
OneSocial 的作用是什么?
这是一个为创作者及其受众打造的应用。通过 OneSocial,任何人都可以通过博客分享想法、管理活跃的通讯、组织活动,并让其内容更容易被发现。想要更多?还可以销售数字产品,例如 notion 模板、设计插图或库存图片,以及提供视频咨询、模拟面试、简历评审等服务。
OneSocial 如何让创作者/影响者的生活更轻松?
创作者必须使用多个网站和社交平台来运营他们的业务。因此,创作者的受众分散在许多社交媒体渠道。为了确保最新公告能触达他们,创作者必须在各种网站上重复发布相同的内容。这既耗时又繁琐,还可能对个人品牌造成损害,因为要求忠实粉丝订阅你在多个平台上的内容可能是一个很大的要求。
OneSocial 的目标是构建一个单一平台,为创作者提供自上而下所需的所有工具和功能,以便他们可以将所有受众集中管理。
技术细节:你是如何构建应用的?
服务器到服务器、服务器到客户端以及客户端到服务器的通信通过 GraphQL 进行。前端使用 Next.js 构建,后端使用 Express (Node.js 库)。我们使用 Cloudinary 和 Google Cloud Storage 安全地存储图像和文件。
Stripe 为支付模块提供支持,而Redis 队列用作通知系统。聊天模块使用Redis Streams、WebSockets 和 GraphQL 订阅来保持持久连接并即时传递消息。
数据以Redis JSON 格式存储,我们使用Redis-OM Node.JS 库与数据库交互。所有主要字段和属性都根据设计要求进行了索引或排序以获得最佳性能。我们还使用RediSearch 对 Redis 中的数据执行全文搜索。最后,我们使用Redis Streams 在多个服务之间发布和订阅事件。
与 Subham 保持联系
查看 Subham 的提交作品
作品集:subhamx.dev
在 Twitter 上关注 Subham:@subhamx
您好。我是 Nabil,一位来自尼日利亚的合同开发者。
Pic-Placeholder 是一个时尚的图片占位符,包含六个类别的 500 多张图片:动物、猫、狗、房屋、风景和人物。
是什么灵感时刻催生了 Pic-Placeholder?
当我听说 Redis 黑客马拉松时,我并不知道要构建什么,但我仍然想参与。我听说 Redis 已有一段时间了,但从未有机会使用它。
我当时正在帮助一位朋友开发一个房地产应用,我们想使用lorem picsum 作为占位符图片的基础,但由于它过于通用,我们无法使用,所以我最终自己构建了一个。
Pic-Placeholder 用户希望通过此应用实现什么?
该项目的目标是创建一个用于构建以图片为中心的网站时快速原型设计的工具。
您是如何使用 Redis 开发应用的,以及在创建最终产品的过程中使用了哪些其他组件?
我开始开发时,从 Unsplash 获取了我所有类别的图片,并将它们转换为 JSON 作为元数据。RedisJSON 和RediSearch 用于存储这些数据;图片存储在 AWS S3 上。
整个应用使用 Next.js 构建,它充当了演示客户端和调用端点的服务器。端点包括
获取更多关于 Nabil 提交作品的详细信息
查看 Pic-Placeholder 演示
查看 Pic-Placeholder 仓库
我的名字是 Fred Spencer,我是美国的一名体验架构师。我是Elm Story 的创始人,这是一个用于互动故事创作的设计工具和平台。
项目:Meatballs.live,由Redis Stack 和 HackerNews 提供支持,是一个自动化推荐网络和 Web 应用,用于发现社交新闻中有趣的对话。
哪些技术组件帮助您实现了这个项目?
整个 Meatballs.live 项目使用 TypeScript 编写,利用了 Redis Stack 的特性,包括RedisGraph、RedisJSON、RedisTimeSeries、Pub/Sub 和缓存。我广泛使用了RedisInsight 来可视化地展示实时收集的数据洞察。Redis Cloud 托管着主要的 Redis 数据库。
在dev.to 上获取更多技术细节。
Meatballs.live 旨在解决哪些专业痛点?
您可以将此项目视为一个“超级聚合器”,旨在摄取、重新混合和融合来自不同聚合源的数据。
通过连接和分析大量的结构化时间数据,meatballs.live 可以生成每日热门故事合集,并偏重评论区。每日合集提供了最吸引人的评论和相关故事的推荐。该应用体验可以通过减少令人上瘾的滚动来节省用户的时间和认知负荷。时间方面提供了上下文。
实时聊天功能使 meatballs.live 用户能够实时互动。来自 Hacker News 的最新评论与流数据混合,提供相关主题的链接。
您是否计划进一步开发这个项目?如果可以/有机会改进它,您会添加什么?
我的首要任务是存储历史数据。使用一个数据源,Meatballs.live 每月生成 1 GB 数据。考虑到当前应用的功能集,所有这些数据都存储在内存中是不必要且低效的。接下来,我希望增加对更多数据源的支持,例如 Reddit 和 Twitter。
我还想将摄取服务从 Node 移植到 Rust,增强实时聊天以支持更多实时洞察,并扩展用户功能以包括合集反馈。
使用Redis Stack 重新混合大数据时,没有限制。
与 Fred 保持联系
查看 Fred 的提交作品。
在 Twitter 上关注 Fred:@r1tsuke / @elmstorygames
我们要感谢所有参与我们与 dev.to 合作举办的黑客马拉松的人。我们看到了一些真正受启发的好想法得以实现,并希望这些基于 Redis 构建的应用能尽快推向市场!
要查看更多使用 Redis 构建的应用,请访问我们的Launchpad 网站,其中充满了引人入胜的演示,并为所有构建应用的人提供灵感。