随笔分类 - 每日小知识
摘要:需求是这样的: 我们线上有些数据存在不一致的情况,leader 给了我一张 excel 表格, 叫我对比表格,写出更新的 sql 。 刚开始,我觉得也没有什么,打开表格就开始复制粘贴,查询起来。 但是做到一半,猛然觉得身为程序员却做这么多重复的工作简直就是一种耻辱。 于是乎,写了一个小demo,自动
阅读全文
摘要:官网给的架构图如下。 有一些基本概念我们需要了解。NameServer Cluster相当于一个轻量级的注册中心,Broker 会将自己注册上去,生产者和消费者能够从这个注册中心获取 Broker 的信息。 Broker Cluster通过轻量级的TOPIC和QUEUE机制来实现消息存储,支持推拉模
阅读全文
摘要:使用 CompletableFuture 异步组装数据 一种快捷、优雅的异步组装数据方式 实际项目中经常遇到这种情况: 从多个表中查找到数据然后拼装成一个VO返回给前端。 这个过程有可能会非常耗时。因为最终每一条返回的VO数据是由多个表中的数据拼装而成,如果项目还是微服务需要从其他服务获取数据,那将
阅读全文
摘要:1. 实体类 2. 测试类 最近看外国小哥的一个lambda视频觉得讲得很好,大家是可以看看, "这个视频" 个人总结一下: Java 是面向对象,但有的时候面向过程、动作会更加轻量级一点, 所以Java lambda 就是将动作作为参数,再重量级的面向对象参杂一些面向过程的tools帮助我们更快捷
阅读全文
摘要:洗牌算法 洗牌算法,刚在知乎 "这个回答" 上看到的一个算法,非常有趣。 通过概率论的知识原地实现了一个公平的随机算法。 大致的过程就是一个数组(假设有n个数),从后往前取第一个数A,第二个数随机从前面的数据中选取。最后算下来随机的概率是1/n。 代码如下
阅读全文
摘要:同源策略(Same origin policy)是一种约定,它是浏览器最核心也最基本的安全功能,如果缺少了同源策略,则浏览器的正常功能可能都会受到影响。 可以说Web是构建在同源策略基础之上的,浏览器只是针对同源策略的一种实现。 如果两个页面的协议,端口(如果有指定)和域名都相同,则两个页面具有相同
阅读全文
摘要:数据库事务(简称:事务)是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。 一个数据库事务通常包含了一个序列的对数据库的读/写操作。它的存在包含有以下两个目的: 为数据库操作序列提供了一个从失败中恢复到正常状态的方法,同时提供了数据库即使在异常状态下仍能保持一致性的方法。 当
阅读全文
摘要:CAS(Compare-and-Swap),即比较并替换,是一种实现并发算法时常用到的技术,Java并发包中的很多类都使用了CAS技术。CAS需要有3个操作数:内存地址V,旧的预期值A,即将要更新的目标值B。CAS指令执行时,当且仅当内存地址V的值与预期值A相等时,将内存地址V的值修改为B,否则就什
阅读全文
摘要:所谓数据源也就是数据的来源。它存储了所有建立数据库连接需要的信息。算是对数据库的一个抽象映射,即一个数据源对于一个数据库。 数据源有以下属性 1. databaseName String 数据库名称,即数据库的SID。 2. dataSourceName String 数据源接口实现类的名称。 3.
阅读全文