Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >解决DNS问题|WunderGraph云使用NATS JetStream

解决DNS问题|WunderGraph云使用NATS JetStream

作者头像
CNCF
发布于 2023-02-12 09:14:51
发布于 2023-02-12 09:14:51
1.2K0
举报
文章被收录于专栏:CNCFCNCF

作者:Dustin Deus

WunderGraph

在 WunderGraph,我们正在为开发人员构建一个无基础设施的云,这意味着我们将开发人员从处理基础设施中解放出来。我们认为开发人员不需要精通部署和维护基础设施来构建全球 SaaS

WunderGraph 就是为了让我们的生活变得更简单(我们使用 WunderGraph 来构建WunderGraph 云[1])。它允许你将不同类型的数据源(如 REST、GraphQL数据库)集成到一个统一的表示(虚拟图)中,从而使使用 API 依赖项的工作成为一种愉快的体验。

由于这种架构,我们可以为不同的平台和编程语言,自动生成优化的客户端,并且像身份验证、授权和缓存这样的核心功能都是现成的。因此,专注于编写你的业务逻辑,而不是管道设施。

以可伸缩和可靠的方式部署网关,并提供工具来操作它是一项复杂的任务。我们希望让客户,尽可能轻松地完成这项任务。因此,我们正在构建 WunderGraph 云。这是一项托管服务,可让你在几分钟内在全球范围内部署、构建和管理完全可定制的无服务器网关。在这方面,无服务器意味着当你不使用服务时,你不需要付费。WunderGraph 针对冷启动和高性能进行了优化,允许你支付无服务器价格,同时获得完整的服务器体验。

DNS 问题

图 1:之前

如果你需要独立解决这个问题,那么在全球部署 WunderNodes 听起来是一个具有挑战性的问题。幸运的是,我们依靠合适的基础设施合作伙伴,通过几个 HTTP 调用就可以实现这一点。从高层次的角度来看,WunderNode 是一个隔离网络中的虚拟机,它被小心地暴露在互联网上。最初,我们使用 Cloudflare Workers 将用户请求路由到正确的公共 IPv4 地址。所有数据都存储在最终一致的 Cloudflare KV 存储中。使用这种方法,我们经常会遇到 DNS 传播问题,因为每个新的 Ipv4 地址都必须在全球范围内进行分配和分发。此外,IPv4 地址的短缺让我们重新思考我们的架构。

解决方案:JetStream 作为全球分布式键/值存储

引入 Heimdall。Heimdall 是我们部署到所有接入点(point-of-presence,POP)的定制边缘代理。它负责管理主机->IP 路由,并作为我们分析仓库的事实来源。我们也不再依赖公共 IPv4 地址。相反,我们在BGP Anycast[2]网络中使用私有 IPv6 地址。每个应用程序都与其他应用程序隔离,只有 Heimdall 暴露在互联网上。这使我们能够将网络扩展到无限数量的应用,而不会遇到任何 IP 地址限制。

图 2:使用 NATS JetStream 后

当在 WunderGraph 云上提供新的应用程序时,我们需要一种可靠的方法来存储主机->IP 映射,并将更改传播到所有全局 Heimdall 实例。在尝试了不同的解决方案后,我们使用NATS JetStream[3]作为我们的分布式键/值存储。

它非常适合我们的用例。键/值存储是一致的、高度可用的和水平可伸缩的。此外,JetStream 允许我们观察变化,因此 Heimdall 实例可以得到有关变化的通知,并更新其路由表。重启后,它会将 JetStream 的最新状态加载到内存中。实际上,我们在不到一秒钟的时间内将更新发布到全球各地。

除了功能性,我们还喜欢 NATS 生态系统的质量。Golang 客户端维护积极,界面设计精良[4]

因此,JetStream 也非常适合我们架构的其余部分。我们希望 JetStream 不仅仅用于存储路由表。NATS & JetStream 将是我们计划提供的其它几项服务的支柱。

未来,WunderGraph 云将为你提供类型安全的 API,以支持以下用例:

  • 跨请求的持久数据的键/值存储。
  • WunderGraph 函数之间的发布/订阅功能。
  • 可靠实施工作流的类似时间的体验。
  • 还有更多……

总之,我们对 JetStream 及其可能性感到非常兴奋。作为早期采用者,我们很高兴与社区分享我们的经验和知识。如果你有兴趣帮助我们解决未来的一些挑战,请随时联系我们。我们在招人[5]

关于作者

Dustin Deus 是 WunderGraph 的联合创始人兼技术主管。他对 web、分布式系统和基础设施充满热情。他也是一个开源爱好者,喜欢与社区分享他的知识。你可以在Twitter[6]或者GitHub[7]上找到他。

参考资料

[1]

WunderGraph 云: https://wundergraph.com/

[2]

BGP Anycast: https://en.wikipedia.org/wiki/Anycast

[3]

NATS JetStream: https://docs.nats.io/nats-concepts/jetstream

[4]

设计精良: https://twitter.com/dustindeus/status/1613203957857361920

[5]

招人: https://wundergraph.com/jobs

[6]

Twitter: https://twitter.com/dustindeus

[7]

GitHub: https://github.com/StarpTech

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-02-07,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 CNCF 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
DNS多点部署IP Anycast+BGP实战分析
DNS领域的多点部署大多采用IP Anycast+BGP方式,采用这种方式不需要额外采购设备,部署灵活多样。但像其他所有技术一样,IP Anycast+BGP技术只有在适当的领域和范围内才能发挥它的最大优势。
星哥玩云
2022/07/03
2K0
我国首个IPv6公共DNS正式发布
下一代互联网国家工程中心正式宣布推出IPv6公共DNS:240c::6666。通过免费提供性能优异的公共DNS服务,为广大IPv6互联网用户打造安全、稳定、高速、智能的上网体验,助力我国《推进互联网协议第六版(IPv6)规模部署行动计划》全面落实。同时,工程中心还联合全球IPv6论坛(IPv6 Forum)启动IPv6 公共DNS的全球推广计划,旨在为全球用户提供更优质的上网解析服务。
小俊是我
2018/08/02
13.5K0
我国首个IPv6公共DNS正式发布
DNS+Anycast 均衡负载实战(IPV4)
我们都知道google的公共DNS为:8.8.8.8,甚至我们可以在全球任何地方都能ping通这个IP或者通过dig能解析域名,例如如下操作:
全栈程序员站长
2022/08/31
2.8K0
DNS+Anycast 均衡负载实战(IPV4)
Matrix Dendrite 从 Kafka 迁到 NATS
Matrix[1]是建立在分布式数据结构之上的用于实时通信的联邦协议,Dendrite[2]是遵循微服务架构建立的 Matrix homeserver 的实现。它最初的目的是帮助我们克服早期单体实现中出现的一些负载问题。因此,灵活性、性能和可伸缩性一直是我们开发中关注的三个关键领域。
CNCF
2022/11/28
1.8K0
回顾互联网的过去十年(上)
任何技术的进化之路通常都会遇到奇怪的和意想不到的曲折和转折。在某种程度上,简单性和简约性可以被复杂性和装饰性所取代,而在某些时候,戏剧性的切入能够揭示该技术的核心概念,并去除多余的内容。
SDNLAB
2018/07/30
4880
回顾互联网的过去十年(上)
IPv6网络演进方案之广域网IPv6方案,附SRv6技术解析【IPv6连载04】
广域网对业务主要起承载管道的作用,目前,业界已达成共识:很长时间IPv4和IPv6是共存的。
Ponnie
2022/04/18
3.6K0
IPv6网络演进方案之广域网IPv6方案,附SRv6技术解析【IPv6连载04】
与SDN之父共享一场云上网络的技术盛宴​
2019年5月28日,UCloud用户大会暨Think in Cloud 2019(TIC大会)将于北京盛大开幕。大会将全面解读UCloud的战略布局及行业洞察,重磅发布UCloud核心技术的创新成果,生动呈现经海量企业用户验证的解决方案和应用实践。
SDNLAB
2019/05/22
1.6K0
与SDN之父共享一场云上网络的技术盛宴​
浅析AnyCast网络技术「建议收藏」
BGP anycast就是 利用一个(多个) as号码在不同的地区广播相同的一个ip段。 利用bgp的寻路原则,短的as path 会选成最优路径(bgp寻路原则之n),从而优化了访问速度。
全栈程序员站长
2022/08/31
5.6K0
浅析AnyCast网络技术「建议收藏」
你的应用是否真正实现了游牧化?
随着边缘原生计算以及多区域、多云、多边缘部署的兴起,我们已经进入了与位置无关的游牧应用时代。
云云众生s
2025/03/07
980
你的应用是否真正实现了游牧化?
「  [DNS]国内常用DNS介绍  」
有的时候很苦恼,有的网站打不开,甚至打开却不是该出现的内容,还有时候,网速慢,有可能就是DNS劫持什么的问题啦,本文主要介绍国内常用DNS
青益
2023/01/03
3.3K0
MPLS/IP与SRv6:困局与破局
从1969年阿帕网的诞生到2019年IPv4地址的正式枯竭,多年来互联网技术在不断地更新迭代。运营商承载网经历了SDH、PTN、IP RAN等多种技术演进,在移动基站全IP、大带宽的发展趋势下,IP MPLS技术得到了广泛应用。
SDNLAB
2022/12/14
2.4K0
MPLS/IP与SRv6:困局与破局
腾讯高性能分布式路由技术,亮相亚太网络研讨会APNet
亚太网络研讨会(APNet)汇聚亚太地区计算机网络和系统领域最优秀的研究人员,分享各自最新的研究成果,讨论当前最前沿的热点研究问题。2020年8月3-4号,为期两天的第四届亚太网络研讨会(APNet’20)在线上举行,包括腾讯、阿里、微软、英伟达、思科、字节跳动等分别分享了各自在网络领域的最新成果,其中腾讯TEG网络平台部架构师吕建超做了主题为Scalable and Flexible Routing Service for Tencent Cloud Access Network的演讲。 htt
鹅厂网事
2020/08/19
1.5K0
云计算安全的新阶段:云上风险发现与治理
云计算当前已经成为新型基础设施的关键支撑技术,在疫情期间,推动了大量远程办公、政务防疫、百姓生活等SaaS应用和移动应用。要回答云计算未来数年的发展,则需要回首云计算在过去的发展。需要注意到,云计算在国内发展具有鲜明的中国特色,跟国外同期是不同的,总体看分为三个阶段。
绿盟科技研究通讯
2022/06/06
1.3K0
云计算安全的新阶段:云上风险发现与治理
IPV6精髓浅析
IPV6关键特性有哪些? IPV6的路由表是如何生成的,与IPV4有何区别?SLAAC工作流程及哪些字段协作生成了IPV6地址?DAD为什么能实现重复地址检测?IPV6包头设计精要有哪些?DHCPv6自动获取IPV6地址工作过程是怎样的?希望本文能给您带来一点帮助!
锅总
2024/10/09
2870
IPV6精髓浅析
DNS应从何谈起篇一---从Facebook的故障谈起
2021年10月4日,FB例行维护做全球骨干网容量评估的操作时无意中断了网络连接,且内置审计工具触发bug未能阻止命令执行,FB的Auth DNS会在无法连接数据中心时关闭BGP广播,Auth DNS服务异常后,很多内部工具无法正常工作,工程师无法远程修复,最终造成了6小时的停机;
hermanzeng
2021/12/28
4.1K2
DNS应从何谈起篇一---从Facebook的故障谈起
「译文」比较开源 k8s LoadBalancer-MetalLB vs PureLB vs OpenELB
在这篇文章中,我们讨论了三个开源的负载平衡器控制器,它们可以与任何Kubernetes的发行版一起使用。
东风微鸣
2022/04/22
3K0
两小时卷走13000美金!MyEtherWallet DNS劫持事件深度分析
Myetherwallet,是目前最受欢迎的以太坊钱包。4月24日发生的一连串事故,让很多用户在一脸懵逼中钱包被清空,两个小时的时间里,黑客卷走至少13000美元。一度怀疑是平台遭黑客入侵,毕竟此前发生加密货币交易平台被黑客攻击的案例并不少见。
FB客服
2018/07/30
5660
两小时卷走13000美金!MyEtherWallet DNS劫持事件深度分析
IPv4 地址已耗尽,IPv6 涅槃重生:腾讯云IPv6改造综述
引言:近日,全球 IPv4 地址正式耗尽的消息刷遍各大技术媒体,IPv6 再一次被推到人们面前。IP,作为网络世界的通行证,其重要性不言而喻。IPv4 地址枯竭,IPv6 作为IPv4地址枯竭的解决方案,其在中国的发展历程是怎样的?产品环环相扣的腾讯云,是如何进行大规模 IPv6 改造的?「云加社区」特别策划「IPv6」系列专题,为你揭秘。关注「云加社区」公众号,回复“IP”,获取更多内容。(本文作者:秦振华,编辑:尾尾)
尾尾
2019/12/04
10.3K0
全面理解云上网络
作者:ronaldoliu,腾讯 IEG 后台开发工程师 公司一直在推动业务上云,同时越来越多的项目也要开始出海,对云的依赖会越来越多。但是云并不像它宣传的那么简单易用,尤其是云上网络,是大家理解云的一大阻碍。本文比较全面地梳理了云上网络的各种概念以及简要的原理,希望能够帮助大家建立一个知识索引,以备不时之需。由于本人不是云的专家,因此文章中有不对的地方也欢迎指正。 私有网络 VPC VPC 全称 Virtual Private Cloud,翻译成私有网络其实不太准确,但是它确实就是对网络资源的一种抽象。我
腾讯技术工程官方号
2022/06/20
12.4K1
全面理解云上网络
更多场景、更多选择,Milvus 新消息队列 NATS 了解一下
在 Milvus 的云原生架构中,消息队列(Log Broker)可谓任重道远,它不仅要具备流式数据持久性、支持 TT 同步、事件通知等能力,还要确保工作节点从系统崩溃中恢复时增量数据的完整性。
Zilliz RDS
2023/09/19
1K0
更多场景、更多选择,Milvus 新消息队列 NATS 了解一下
相关推荐
DNS多点部署IP Anycast+BGP实战分析
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档