Flyway简介Flyway是一个简单开源数据库版本控制器(约定大于配置),主要提供migrate、clean、info、validate、baseline、repair等命令。它支持SQL(PL/SQL、T-SQL)方式和Java方式,支持命令行客户端等,还提供一系列的插件支持(Maven、Gradle、SBT、ANT等)。官方网站:https://flywaydb.org/本文对于Flyway的自身功能不做过多的介绍,读者可以通过阅读官方文档或利用搜索引擎获得更多资料。下面我们具体说说在Spring Boot应用中...
本文演示如何利用Uniconnector平台,自动生成Mysql数据库的API,节约开发人员编写后台API的时间。使用生成API的前提是开发者有自己的数据库,有数据库的管理权限,并能通过外网IP访问数据库。 案例内容:生成UniChat App数据库交互接口 案例实施:利用Uniconnector平台,生成微服务 1.创建UniChat 应用,数据库类型选择Mysql 2.配置应用 - 基本信息,可修改应用名称、应用编码、应用类型和状态。 3.配置应用 - 配置数...
单独的数据库:
微服务设计的一个关键是数据库设计,基本原则是每个服务都有自己单独的数据库,而且只有微服务本身可以访问这个数据库。它是基于下面三个原因。优化服务接口:微服务之间的接口越小越好,最好只有服务调用接口(RPC或消息),没有其他接口。如果微服务不能独享自己的数据库,那么数据库也变成了接口的一部分,这大大拓展了接口范围。错误诊断:生产环境中的错误大部分都是和数据库有关的,要么是数据出了问题,要么...
蚂蚁花呗一面(一个小时):JDK 中有哪几个线程池?顺带把线程池讲了个遍Java容器有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理, 注解原理?JDK 中有哪几个线程池?顺带把线程池讲了个遍TCP 和 UDP 的区别?TCP 数据传输过程中怎么做到可靠的?说说一致性 Hash 原理新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?HashMap push方法的执行过程?HashMa...
蚂蚁花呗一面(一个小时):JDK 中有哪几个线程池?顺带把线程池讲了个遍Java容器有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理, 注解原理?JDK 中有哪几个线程池?顺带把线程池讲了个遍TCP 和 UDP 的区别?TCP 数据传输过程中怎么做到可靠的?说说一致性 Hash 原理新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?HashMap push方法的执行过程?HashMa...
蚂蚁花呗一面(一个小时):JDK 中有哪几个线程池?顺带把线程池讲了个遍Java容器有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理, 注解原理?JDK 中有哪几个线程池?顺带把线程池讲了个遍TCP 和 UDP 的区别?TCP 数据传输过程中怎么做到可靠的?说说一致性 Hash 原理新生代分为几个区?使用什么算法进行垃圾回收?为什么使用这个算法?HashMap push方法的执行过程?HashMa...
程序员:给多少工资,干多少事
我们不是经常会看到一个关于西游记的“悖论”吗:为什么孙悟空初期大闹天宫的时候那么厉害?因为他自己当老板,打一群天庭的打工仔。
为什么取经路上又变得不行了?作为一个打工仔,去跟一群出来自己创业的妖怪打架。很多程序员想跟老板说,但又不太敢说,实际却在做的一件事。
事实却是:
“拿着10K的工资,做着20K的事,还要操着30K的心!”
其实,这些情况都不奇怪,甚至是人之常情。
什么是 CAP
...
每个人都拥有大厂梦,我也不例外,在小公司待久了,感觉人会荒废掉,太轻松,没有压迫感。在众多大厂中,最终选择了阿里。“年轻、活力、富有激情”是我听到得最多对它的形容词,所以毅然决然,希望自己能够在这个舞台上展示出自己。
以下分享这次面试阿里中间件和蚂蚁的面试题,另外还对自己的面试做了一些总结,总结里含有一些学习方法和资料,需要的朋友可以直接在文末免费领取!
开始~~阿里中间件(四面)
Java中间件一面
技术...
不可以,因为String类有final修饰符,而final修饰的类是不能被继承的,实现细节不允许改变。
关于final修饰符,介绍如下:
根据程序上下文环境,Java关键字final有“这是无法改变的”或者“终态的”含义,它可以修饰非抽象类、非抽象类成员方法和变量。你可能出于两种理解而需要阻止改变:设计或效率。 final类不能被继承,没有子类,final类中的方法默认是final的。 final方法不能被子类的方法覆盖,但可以被继承。 f...
搭建微服务框架(数据库持久层-SpringDataJPA)用惯了Mybatis,这次来换换口味,在SQuid中集成SpringDataJPA。本文源地址:搭建微服务框架(数据库持久层-SpringDataJPA)Github地址:SQuid介绍
以前都是听说过的是 HibernateJPA ,却从来没有使用过,一直在项目中使用的是 Mybatis。
SpringDataJPA是基于Hibernate的底层封装的一套ORM框架,使用起来的第一感觉是代码量真的很少,相较传统的Mybatis来说,感觉最起码少了60%,当然大...
过去几年来,“微服务架构”这个术语持续火热,它描述了一种将软件应用程序设计为可独立部署的服务套件的特定方式。尽管这种架构风格没有确切的定义,但围绕业务能力,自动化部署,网点智能以及语言和数据的分散控制等方面存在着某些共同特征。简而言之,微服务架构是一种将单应用程序作为一套小型服务开发的方法,每种应用程序都在其自己的进程中运行,并与轻量级机制(通常是HTTP资源的API)进行通信。这些服务是围绕业务功能构建...
JAVA中的几种基本数据类型是什么,各自占用多少字节。String类能被继承吗,为什么。String,Stringbuffer,StringBuilder的区别。ArrayList和LinkedList有什么区别。讲讲类的实例化顺序,比如父类静态数据,构造函数,字段,子类静态数据,构造函数,字段,当new的时候,他们的执行顺序。用过哪些Map类,都有什么区别,HashMap是线程安全的吗,并发下使用的Map是什么,他们内部原理分别是什么,比如存储方式,hashcode,扩容,默认容...
微服务架构往往是一个服务一个单独的数据库那么像用户账号信息这种基础的公用数据 原来可以一个sql关联查询的东西, 现在只能通过API调用, 这样会不会降低性能以及增加不可靠性???有什么好的解决办法???回复内容:微服务架构往往是一个服务一个单独的数据库那么像用户账号信息这种基础的公用数据 原来可以一个sql关联查询的东西, 现在只能通过API调用, 这样会不会降低性能以及增加不可靠性???有什么好的解决办法???性能由缓存解决账...
单独的数据库:
微服务设计的一个关键是数据库设计,基本原则是每个服务都有自己单独的数据库,而且只有微服务本身可以访问这个数据库。它是基于下面三个原因。优化服务接口:微服务之间的接口越小越好,最好只有服务调用接口(RPC或消息),没有其他接口。如果微服务不能独享自己的数据库,那么数据库也变成了接口的一部分,这大大拓展了接口范围。
错误诊断:生产环境中的错误大部分都是和数据库有关的,要么是数据出了问题,要么...
本文源码:GitHub·点这里 || GitEE·点这里
更新进度(共6节):01:项目技术选型简介,架构图解说明
02:业务架构设计,系统分层管理
03:数据库选型,业务数据设计规划一、数据库选择
1、数据库分类数据库类型
常见数据库关系型
MySQL、Oracle、DB2、SQLServer等。非关系型
Hbase、Redis、MongodDB等。行式存储
MySQL、Oracle、DB2、SQLServer等。列式存储
Hbase、ClickHouse等。分布式存储
Cassandra、Hbase、MongodDB等。键值存储...