- 博客(4)
- 收藏
- 关注
原创 理解分布式系统中的垂直拆分和水平拆分
概念水平拆分简单字面意思是:水平方向上由一个拆分为多个。垂直拆分简单字面意思是:垂直方向上由一个拆分为多个。1,垂直拆分垂直拆分指按照功能进行拆分,秉着“专业的人干专业的事”的原则,把一个复杂的功能拆分为多个单一、简单的功能,不同单一简单功能组合在一起,和未拆分前完成的功能是一样的。由于每个功能职责单一、简单,使得维护和变更都变得更简单、容易、安全,所以更易于产品版本的迭代,还能够快速的进行敏捷发布和上线。2,水平拆分水平拆分是指由于单一节点无法满足需求,需要扩展为多个节点,多个节点具有
2021-01-23 18:14:14 7001 1
转载 【数据结构】什么是红黑树?
————————————二叉查找树(BST)具备什么特性呢?1.左子树上所有结点的值均小于或等于它的根结点的值。2.右子树上所有结点的值均大于或等于它的根结点的值。3.左、右子树也分别为二叉排序树。下图中这棵树,就是一颗典型的二叉查找树:1.查看根节点9:2.由于10 > 9,因此查看右孩子13:3.由于10 < 13,因此查看左孩子11:4.由于10 < 11,因此查看左孩子10,...
2021-01-19 22:56:18 138
原创 Spring事务-教你如何在一个事务中开启另外一个事务
Spring项目,需要在一个事务中开启另一个事务。上面提到的情景可能不常见,但是还是会有的,一旦遇到,如果业务比较复杂,就会很麻烦,但是还是有解决的方案的,比如将一个service方法拆成两个方法,也就是将两个操作的事务分开。但是这只适用于业务比较简单的,如果出现多次数据库的写操作,而我们调用的系统只需要其中一个写操作的最新数据,如果我们将它分开,那么如果调用目标系统出现异常的时候,那么之前的写操作就不能回滚了。举个简单的例子:@ServicepublicclassServi...
2021-01-16 08:40:14 5254 1
原创 为什么Arrays.asList() 不能使用其修改方法?
引语: 问题分析: 总结: 引语:阿里巴巴java开发规范说到使用工具类Arrays.asList()方法把数组转换成集合时,不能使用其修改集合相关的方法,它的add/remove/clear方法会抛出UnsupportedOperationException()案例:其实在我使用Arrays.asList()方法市也遇到过一个坑,当时是我在为我们微服务做单元测试时,方法入口需要传入一个集合,为了方便传入了一个Arrays.asList(“1”,“2”),发现如何测试..
2021-01-16 08:15:03 1373
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人