我的架构之路 — 配置中心(一)—简单实用的配置中心

离开淘宝,我没有去处于风口的摩拜,而是加入了铁甲网,可能也是一种中庸之道吧。不过铁甲竟然也搬家到了亮马桥河畔,不远处就是摩拜。
到铁甲第一个项目就是搭建一个配置中心,实现配置的统一管理,实现配置的动态更新,初步要求就是尽快出来,简单、稳定。

淘宝有diamond,但没有开源(内部绑定太多,很早之前有个开源版本),否决了;百度有disconf,但需要mysql、redis、zookeper、nginx 一堆东西,好吧,经过讨论,咱是要一个简单好用的配置管理,那就pass掉吧。

于是又到GitHub找了个开源项目superdiamond,搭建了一个初步的配置中心demo。实现原理是客户端通过netty连接到配置中心实时获得配置信息。参考界面如下:

但接着发现有些问题要考虑:
1、如果配置中心当掉,会导致客户端取不到配置;
2、如果网络断掉,最新配置无法同步到客户端,服务器端还需要记住这些数据,并进行重新发送尝试。维护各个端的状态信息感觉比较麻烦。
3、配置中心多台机器如何互相同步

所以,最终的想法是,自己重头开发一个简单稳定的配置中心。

主要的改造是:客户端不从配置中心读取配置,而是定时连接mysql读取数据。这就有个前提,mysql是稳定的,当然,mysql如果不稳定,那业务系统也就无法用了,谈配置中心也没意义了。

开发者还是通过配置中心界面来修改配置信息,配置修改后修改时间字段也会更新。但配置的下发不再是实时推送到客户端的方式,而是由客户端去mysql拉取。

客户端应用启动的时候,第一次会从mysql拉取本应用全部的配置,后面则每隔20秒去拉取最新的配置(客户端每次拉取后需要记录最大的时间,下次以此时间为起点去拉取变化的配置)

总体上,这种设计方案比较简单实用,只对mysql有强依赖,对配置中心本身没有强依赖,即配置中心当掉后取配置还照样转。

时间: 2024-09-20 00:32:14

我的架构之路 — 配置中心(一)—简单实用的配置中心的相关文章

我的架构之路 — 配置中心(二)— 在已有项目中实际应用

要把配置中心整合进现有的项目,要做的事情还不少 接管spring mvc属性文件 现在的java应用一般都是spring框架的,spring属性文件配置占了绝大多数比例,所以配置中心的,首要任务就是把spring配置文件集中到配置中心来管理.其实spring cloud本身也有一套配置管理,它是通过git或svn进行配置的,在版本控制上比较方便,但在界面使用上就比太方便了. spring mvc属性文件是通过PropertyPlaceholderConfigurer来管理的,所以要接管sprin

买单侠数据库架构之路

摘要:在2017杭州云栖大会阿里云HTAP技术专场上,上海秦苍信息科技有限公司DBA负责人赵怀刚为大家分享了HTPA型数据库产品在现实中的落地应用以及企业级数据库架构设计中的HTPA的应用. 本文内容根据嘉宾演讲视频以及PPT整理而成. 本次分享的主题是买单侠数据库架构之路.秦苍科技是一家互联网消费金融公司,我们所有的产品基本都是托管在阿里云上的,在自己的系统中大概应用了20多种阿里云数据库产品.基于阿里云平台,秦苍科技的数据库架构与传统RDS数据运维相比存在着本质的区别.接下来着重介绍一下在产

云栖大会分享:买单侠的数据库架构之路

互联网金融行业快速发展的浪潮中,面对海量增长的数据,买单侠走出了自己的数据库架构之路. 本文是买单侠DBA负责人赵怀刚在杭州云栖大会上的分享,介绍了数据库运维中遇到的问题.基于阿里云平台数据库架构的演变和案例和云数据库运维的思考.图1 赵怀刚在分享 秦苍科技是一家专注于为年轻人提供消费分期服务互联网消费金融公司,目前有"买单侠"和"星计划"系列产品,"买单侠"面向中国年轻蓝领用户,提供移动端消费分期服务."星计划"为年轻女性用

BaaS后端即服务 - 通往中台架构之路

该文章来自阿里巴巴技术协会(ATA)精选集 BaaS代表第二代云服务,相对于AWS.阿里云等公有云(IaaS,PaaS)是第一代云服务,通过广泛部署云数据中心解决了开发和运维系统不需要管理服务器的问题,BaaS则在第一代公有云数据中心基础之上,对云计算资源进一步封装.简化与优化,提供开发.运维和服务的一站式云服务. 这就是所谓BaaS(后端即服务)模式的兴起,BaaS将公有云数据中心资源根据前端应用场景打包,通过简化的调用接口提供给开发者使用.通过减负,开发者得以集中精力于用户的研究.APP软件

《VMware vSphere 6.0虚拟化架构实战指南》——1.3 VMware软件定义数据中心介绍

1.3.1 VMware vSphere介绍 VMware vSphere是业界领先的虚拟化平台,能够通过虚拟化纵向扩展和横向扩展应用.重新定义可用性和简化虚拟数据中心,最终可实现高可用.恢复能力强的按需基础架构,这是任何云计算环境的理想基础.同时可以降低数据中心成本,增加系统和应用正常运行时间,以及显著简化IT运行数据中心的方式. 图1-3-1显示了VMware vSphere通过一整套应用和基础架构提供一个完整的虚拟化平台.接下来简要地对VMware vSphere的主要功能特性和组件进行介

《架构之路Redis系列》Redis哨兵模式的搭建

一.哨兵模式 1.简介 Redis Sentinel是Redis官方提供的集群管理工具,可以部署在其他与redis集群可通讯的机器中监控redis集群. 2.特性 监控:能持续监控Redis的主从实例是否正常工作; 通知:当被监控的Redis实例出问题时,能通过API通知系统管理员或其他程序; 自动故障恢复:如果主实例无法正常工作,Sentinel将启动故障恢复机制把一个从实例提升为主实例,其他的从实例将会被重新配置到新的主实例,且应用程序会得到一个更换新地址的通知. 更多访问官方:https:

首届中国IT架构大师高峰论坛(十年架构之路汇成一句话!)

首届中国IT架构大师高峰论坛--一言以蔽之,十年架构之路汇成一句话 一句话概括十年技术精华,你想了解吗? 一起来聊聊吧! 拒接注水,不要修饰 干货中的精品,精品中的机密,50名一线专家将自己数年实战经验浓缩成一点,倾情奉献,IT行业从此进入干旱季,严重脱水.50位10年老枪,10年经验总结.无论成功与失败10年的经验总结的那一句话,您感觉会是什么,你想知道吗.如果是您自己,您觉得你自己的那一句话会是什么呢? 2017年6月3日北京北京南三环国际会展中心,我们不见不散,聊聊我们刻骨铭心的这十年!网

参与《一言以蔽之 十年架构之路 架构大会》总结

上周六参加了<一言以蔽之 十年架构之路 架构大会>,简单写一篇随笔,记录一些要点的 PPT. 会议日程如下:   第一场:如何应对架构的高复杂度 结构分解是永久的主旋律 微服务架构,将系统的复杂度从应用中移动到底层通用平台中. 康威定律:软件系统的结构应该匹配组织架构. 风险驱动模型 & 质量属性. 约束驱动.   第二场:微服务架构实战-京东开放式平台架构演变 从 1.0 到 3.0 的架构演变:   三个案例:   关键语句:想到抗量,就要想到redis! 第三场:58 同城的转转

本人利用三层架构设计好了一个.net项目,想配置IIS可以让其他人也可以看到

问题描述 本人利用三层架构设计好了一个.net项目,想配置IIS可以让其他人也可以看到,求详细配置步骤! 解决方案 解决方案二:是要局域网还是公网解决方案三:用VS发布,然后部署到你的目标服务器的IIS上.解决方案四:参考:解决方案五:vs发布,iis新建站点,物理路径指向你的发布文件夹就好了.解决方案六:部署在IIS上就行外网的话需要有外网IP解决方案七:在iis上挂接发布不发布都可以,配置ip和物理地址物理地址指向你项目的地址解决方案八:这个得根据你用的VS是什么版本来定步骤,不过无论什么版