详谈为什么架构设计禁止 IP 直连

首先两个问题

  • IP直连有什么问题/li>
  • 怎么解决IP直连的问题/li>

什么是 IP 直连

看下面两个连接,一个连接字符串一个访问地址

jdbc:mysql://202.99.183.21:3306/db
http://192.168.31.205/webapp

这个两个链接被 A、B、C等程序依赖,这样有什么缺点问题呢

1 . 强耦合
如下图,应用程序链接在 192.168.31.102 服务器的 MySQL

jdbc:mysql://rm-2zedsl7662jlm54g9zo.mysql.rds.aliyuncs.com:3306/db
http://webhost/webapp

结论:在实际开发过程中使用直连方式是不可取的,对应的也有几种解决方案,接下来我进行讲解。

怎么解决 IP 直连问题

a .引入内部 DNS

可以在局域 中搭建 DNS 服务器,一般也会有相应的可视化界面来进行配置。

当引入 DNS 服务器后,这个操作就比较灵活了。当应用程序访问数据库时会根据域名进行解析对于的 IP ,然后后发起实际的请求,进而访问到实际的数据库。

如果某一天数据库需要进行迁移,只需更新 DNS 服务器域名对应得 IP 即可,无序修改对应得应用程序,起到解耦的作用。

优缺点

  • 缺点
    系统复杂度增加,注册中心相比 DNS 需要保证注册中心的高可用性。DNS 只是一个域名与 IP 的对照表,出问题的可能性极小。
  • 优点
    可以进行故障转移,更好的负载均衡策略

开发环境如何使用域名

开发环境就必须配置 Host 进行强指定喽,SwitchHosts : https://oldj.github.io/SwitchHosts/

文章知识点与官方知识档案匹配,可进一步学习相关知识MySQL入门技能树数据库组成31920 人正在系统学习中

声明:本站部分文章及图片源自用户投稿,如本站任何资料有侵权请您尽早请联系jinwei@zod.com.cn进行处理,非常感谢!

上一篇 2021年8月4日
下一篇 2021年8月5日

相关推荐