flyway是什么意思 (flyway数据库版本控制)
创始人
2026-04-08 06:29:57
0次

本文目录导航:

  • flyway是什么意思
  • 微服务架构通常 - 你只懂docker与spring boot就够了吗?
  • Flyway 数据库版本治理 | 专业处置打算

flyway是什么意思

Flyway是一个英语单词,它有两个关键的含意和用法。

微服务架构通常 - 你只懂docker与spring boot就够了吗?

背景

随着公司一年多的生长,咱们曾经开发了数十个名目了,后盾有JAVA的有PHP的,为了更好地优化开发与治理效率,各技术大牛小牛们时常启动强烈的PK,碰撞出了许许多多爱的火花,比如其中之一:微服务虚践

设计

只有要有一套base微服务,base微服务生成业务系统微服务虚例,供各个业务系统调用;业务系统不间接调用base,只能调用微服务INSTANCE。

这是运维的疑问,让运维去处置,运维经常使用工具,实践也不算艰巨,反正执行的都是脚本,不须要手工操作。

单点缺点影响全局,咱们选用了稳固更关键;另外saas的话,为了应答不同行业,会存在适度设计的嫌疑;私有化更容易。

调用逻辑

设计理念

非模块化,谈不上微服务,比如咱们上方的用户微服务、产品微服务、地址微服务等,都须要先模块化,为了更好地落实开发,你或许不得不,边模块化边微服务,模块化的时刻要留意,不能无关联查问,包要齐全独立,到时刻微服务能力拆开。

松耦合示意咱们模块之间不间接依赖,有形态,可以独自地为外界提供服务;

强内聚是指,咱们只管要拆分红一个个小的微服务,但是也要思考某些性能的强关联性,比如一个凳子是由四个脚与一个板组成,咱们不能把四个脚与板分销售卖,就没无心义了。

开发

spring-boot :较springmvc愈加繁复了,springmvc有一大零的性能文件,比如spring-servlet、spring-mybatis、与,这些在spring-boot都不须要了,只有要弱小的注解性能即可,boot更适合微服务。

spring-cloud :外面有比拟多组件,用于支持微服务,比如spring cloud config一致性能中心,用于多环境的性能文件性能,大家再也不用为多个微服务的开发、测试与消费环境的性能文件治理而忧虑了;spring cloud eureka用于服务注册与发现,上方有独自引见;其它的组件大家可以去官方看看,这里不逐一引见,总之假设JAVA平台,尽量经常使用spring体系的内容。

咱们驳回mysql,由于咱们是运行多,但数据量单表并不算大,多则不超越百万,mongodb也试验过,开发十分快,也十分灵敏,但由于不是相关型数据库,保养老本较高。

RESTFUL :URL的资源与操作解耦,让URL愈加合乎语义,上百个接口也十分好治理,网上有很多文章讲得十分透彻,这玩意不是特意好了解,要多领悟,在名目中通常,就有矛塞盾开的觉得,这里不做具体引见。

接口文档swagger :比起传统全手工写接口文档,swagger有一致的输入格局,不论是几团体写的;swagger驳回写代码的模式来写接口文档,以前修正了代码,还必定关上wiki手工修正接口文档,如今只有要修正一下代码即可,程序员更情愿修正了,老本更低了,前端与其它调用者不会天天吼着,你这接口咋又变了,新加的字段是啥意思呀。

RocketMQ:不时纠结kafka与rocketMQ,最终选用了RocketMQ

为了性能上方的思考,尽量经常使用异步编程,比如注册送活动券,那么注册成功就可以给用户前往注册成功了,但是送活动券可以是异步伐用的,不阻塞注册的线程。

微服务框架下,日志无法能还扩散在各个服务节点上,必定有一致的日志中心。

ELK是一个实时日志剖析平台,就是将各个服务的日志汇总于日志中心,而后可以依照系统、节点等启动搜查,除上述搜查条件外,咱们还在各个微服务虚现了依照业务id(一次性恳求生成一个业务id)与用户id搜查日志,繁难跟踪与定位疑问。

当然或许有愈加轻量级与好用的disconf或spring cloud config,但是咱们有php开发的运行,以上二者都不支持。

假设全是JAVA运行,驳回disconf还是十分不错的。

测试

每个程序员都有这样的教训,刚上线,客户又反应了bug,原来是咱们修正某特性能代码的时刻,造成了其它性能的bug,每次上线心里都没底;这就表现了接口测试的必定性,尤其是每次版本更新的时刻,都须要执行一遍,以防修正某个接口造成其它接口报错,比手动测试靠谱许多。

部署

docker曾经众所周知了,这是继虚构机以后,又一严重改革,将一切的单个微服务都放在docker中,这样你何时何地想部署,间接丢过去就OK了,快到爆。

用几句繁难的命令就搞定了负载平衡,而且还可以平滑更新,版本更新的时刻,大家就不用通知客户:系统通知,某日某晚00:00-08:00我行处于系统更新保养中,大家不要去取钱哦,由于你或许取不进去,呵呵。

更新

咱们驳回工具flyway,可以对数据库脚本启动版本控制。

传统的版本更新,

1.开发推代码并同时记载自己提交了哪些文件;

2.名目经理依据svn查看文件,并打包成war包;

3.投到测试环境让测试公司测试;

4.中途修正了文件,或许须要从新打包;

我都写不下去了,名目经理像个超人似的。

如今用继续集成(CI)十分繁难,咱们用的工具是Jenkins,推完代码,点几下按钮就实现了上线,不论是测试环境,还是消费环境都十分繁难,不然名目经理核查文件眼睛都绿了。

开头

本文关键是引见微服务开发上的选型,关于细则不做深究,大家感兴味可以了解下各个组件。

当然,咱们的选型难免正确,不同场景运行或许齐全不同,本文仅供参考。

Flyway 数据库版本治理 | 专业处置打算

飞way:数据库版本治理的理智选用

在当今数据驱动的环球中,数据库版本治理至关关键。
flyway数据库版本控制
Flyway,这款开源神器,以其出色的特性和易用性锋芒毕露。

它不只支持SQL脚本和Java代码,而且无需繁琐的性能,为开发者提供了高效、牢靠的处置打算。

让咱们一同探求它的弱小性能和实践运行。

外围性能与长处

实战指南

在实践运行中,例如与MySQL 8.0配合,你可以经过Maven轻松增加Flyway外围依赖和MySQL驱动,而后创立迁移文件,如src/main/resources/db/migration/V1__Create_person_。

启动运行时,只有在主启动函数中调用(),执行数据迁移。

接着,创立新的迁移文件V2__Add_,并在其中编写SQL语句,如拔出数据。

为了更好地集成到SpringBoot名目中,增加spring-boot-starter-jdbc、mysql-connector-java和flyway-core依赖,性能数据库衔接,如jdbc:mysql://127.0.0.1:3306/flyway...

当你的名目中曾经成功创立了flyway_schema_history和PERSON表,数据迁移就功败垂成。

更新与留意事项

更新时,只有在db/migration目录下增加新的SQL文件。

但是,务必设置baseline-on-migrate: true,防止因漠视V1__扫尾文件造成的失误。

假设遇到疑问,可以思考删除flyway_schema_history表,而后设置baseline-version: 0,或许调整迁移文件名的命名规定,遵照如V1.0_create_person_的命名规范。

SpringBoot 2.4.4-2.6.0版本的flyway集成对应相关为:2.4.4-7.1.1(Oracle12.1.0.2企业版或许不实用),而2.6.0-8.0.4版本则兼容Oracle12.1.0.2。

在编写SQL脚本时,务必遵照上述命名商定。

结语与资源

深化钻研Flyway、Liquibase等数据库版本治理工具,以及相关教程和博客,将让你的数据库治理愈加随心所欲。

飞way,无疑是优化名目稳固性和可保养性的关键工具。

如今就执行起来,为你的名目削减这一弱小武器吧!

相关内容

热门资讯

大浪淘金APP黑幕揭秘:内盘操...   大浪淘金APP平台最隐蔽的黑幕,在于其完全封闭的内盘交易系统。这个看似与国际市场接轨的交易平台,...
告别固定工资实现财富自由?一品...   普通投资者被广告宣传诱导,注册就送现金,充值返现金券等等这些宣传方式,都是在引流到平台开户,不怕...
哈易购APP打着现货交易幌子搞...   网络上各类白银、铂金等贵金属投资广告铺天盖地,不少平台以"现货交易"为名,暗中却从事着非法期货交...
5元起投!高额收益?中国白银、...   上海华通白银国际交易中心有限公司(以下简称“华通白银国际”)打着“白银、铂金现货订购”的旗号,实...
"九州订购APP、起...   近年来,贵金属投资热度持续攀升,但乱象也随之而来。一些不法分子趁机搭建虚假交易平台,打着"低门槛...
坚锅淘金APP投资者频繁爆仓亏...   坚锅淘金APP对外宣称是贵金属现货交易平台,日常出入金看似畅通无阻,给人一种合规运营的假象。但事...
斗金订购APP“5元订购现货”...   斗金订购APP“5元订购现货”骗局揭秘:充值易、回本难,越陷越深!  许多投资人在未核实平台合规...
贵金属APP乱象曝光:&quo...   当前市场上部分贵金属类APP未取得正规交易资质,涉嫌误导消费者参与白银、铂金等商品的非合规交易!...
华通白银、银宝街APP被指虚假...   警惕现货白银投资陷阱:上海华通白银背后的平台涉嫌非法期货交易  近年来,各类现货白银交易平台以“...
充值送300,月入过万?别被量...   如今,网络上充斥着大量未经批准的贵金属及其他产品订购交易平台。这些平台普遍缺乏合法经营资质,却将...
鑫汇智投APP贵金属非法期货、...   鑫汇智投APP贵金属非法期货、人为控盘,大量投资者遭恶意收割  鑫汇智投APP长期以“低门槛、高...
矅光智策APP非法贵金属交易骗...   不少投资人在矅光智策APP上进行贵金属交易后出现了严重亏损。许多人在下载该平台时,根本不清楚其是...
飞鸽订购APP非法期货交易骗局...   飞鸽订购APP非法期货交易骗局,很多投资者根本没搞懂规则就盲目充值,买涨买跌跟买cai票一样!平...
天龙白银APP被操控的非法期货...   中小投资者在网络平台参与商品现货订购交易,表面看似合规合法,实则暗藏诸多难以察觉的风险。商品现货...
下载送试玩金?千万别碰!带你揭...   当前,许多贵金属APP交易平台正采用欺诈性营销手段。它们通过抖音等短视频平台,以“5元起投”“充...
泡泡淘金APP骗局:打着&qu...   泡泡淘金APP骗局:打着"商品订购"幌子,实则非法期货收割投资者!投资需谨慎,切勿轻信“高额回报...
南商云购APP虚假电子盘背后的...   南商云购是虚假电子盘吗?它是否具备合规的交易资质?这个曾经的"现货电子盘"如今摇身一变,披上了"...
警惕"祥龙订购&qu...   祥龙订购APP、掌上银牛APP等平台背后的运营方——四川禄宏商品现货市场有限公司,仅具备现货交易...
中国白银、华银:虚假宣传、后台...   中国白银APP宣称是上市公司“中国白银集团”与“上海华通白银国际交易中心”旗下的现货交易平台,提...
起底“优品订购”APP非法期货...   “优品订购”APP根本不具备任何合法的交易资质。其背后的运营方仅凭随便注册一家公司、开发一款交易...