240 发简信
IP属地:上海
  • 为了更好地进行函数式编程,我们需要第三方库的支持:Vavr

    Java8_Function和BiFunction

    Function Function作为一个函数式接口,主要方法apply接收一个参数,返回一个值 首先我们来写一个计算数字的方法 然后我们调用这个方法 可以看到我们定义一个方...

  • Spring Cloud项目接入Jaeger(上)

    1、Spring Cloud Sleuth介绍 Spring Cloud Sleuth是Spring Cloud体系下的日志追踪服务,它实现了Zipkin的采集器,可以与Zi...

  • 120
    Kuberneters(K8s)CRD资源详解

    ########文章是对官网给出的文档做了翻译-_-以及实操后的个人理解所得,若有存在不足或者不同之处还望各位大神指点,临表涕零 1、K8S CRD简明及简用: Custom...

  • 关于@EventSourcingHandler,不知道是什么时候调用?我想,因为有些命令要验证聚合体状态是不是可以执行,所以要重建聚合体最新的状态,所以从create开始,重放所有的相关的event就可以得到最新的状态。所以这个注解就是这时候用的?
    而apply是把event存到相关的库里,同时发布领域事件?

    Axon Framework 从入门、深入到放弃

    DDD领域驱动/CQRS读写分离/ES事件溯源 这些前沿的时髦的技术理念汇聚在一次,落地到一套完整实现方案。这就是Axon 我们从ES事件溯源开始说 传统的数据库设计只记录数...

  • 120
    消费者驱动的契约测试 Spring Cloud Contract介绍

    什么是契约测试 测试是软件流程中非常重要,不可或缺的一个环节。一般的测试分为单元测试,集成测试,端到端的手工测试,这也是构成测试金字塔的三个层级。我们今天将要讨论的话题是契约...

  • 120
    以例服人:一遍讲透CompletableFuture

    什么高深的道理,一篇好的例子都能讲透;如果不行,那就两篇。如果还不行,文末看答案。 CompletableFuture是Java 8引入的,一个很好用的特性,但被Lambda...

  • 看有的文章说,由于叶子节点有具体的数据,非叶子没有,这点象B+树,但没有叶子之间的链表。

    Mongodb WiredTiger存储结构

    由于项目里要用到mongodb,不看一下mongodb的存储原理,实在是对这个之前没了解过的数据库不太放心,所以查了些资料学习了下。下面基于WiredTiger引擎行存储...

  • “联合索引的字段不能过多,会造成b+树的层级变高”此话在你觉得错的这篇文章中是成立的,因为每个数据页的大小是恒定的,叶子节点中如果联合索引字段过多占用的空间就会增加,叶子节点也是存储在页中,即其大小恒定,随着联合索引字段占用大小的增加,那么单个叶子节点能够存储的联合索引字段就减少了,所以就需要更多的叶子节点来保存,叶子节点增加,上层枝节点就需要生成另外的分支保存增加的叶子节点,逐级影响,是会让树的层级变高的,源头是叶子节点中的联合索引字段占用空间增多了

  • 正好BAIDU到这里,不知道现在有没有结论了,我还在找,估计要到英文专业点的网站找了。现在联合索引单词还没有查到。
    不过我先来一个猜想,如果我做一本字典,按前三个字查单词,那我会怎么设计呢?一定是在第一个的目录中具体字里再分出第二个字的目录,第二个字的具体字里再分出第三个字的目录,所以我猜想是叠罗汉的结构。第一个字叶子中是第二个字的根,第二个的叶子中是第三个的根。

    mysql的联合索引的B+树到底张什么样子?

    前天在看mysql相关文章的时候,突然有个疑问,mysql的联合索引的b+树到底张什么样子啊?于是google搜了下,搜索条件是“mysql 联合索引 b+树”,结果引擎返回...

  • @名字限制太短了 我了解的是Producer初始化时,就连接配置这几个broker,后面定时获得可用的broker连接,就是你说的所有的元数据,放入ProducerPool中。这时就建立与所有broker的连接了。

    Zookeeper 在 Kafka 中的作用

    leader 选举 和 follower 信息同步 如上图所示,kafaka集群的 broker,和 Consumer 都需要连接 Zookeeper。Producer 直接...

  • @张羽辰 请看:https://github.com/eventuate-tram/eventuate-tram-sagas-examples-customers-and-orders
    在Architecture这段最后有一句话:The Eventuate Tram CDC service tracks inserts into the MESSAGE table using the MySQL binlog and publishes messages to Apache Kafka.
    所以我认为:“Chirs 建议将发布事件放入本地的数据库事务中”,就是把事件写本地库。另外有CDC服务处理binlog,不会让应用来负责的。

    Saga - 微服务中的分布式事务

    问题 当我们在开发单体应用时,其实我们对事务(即 transaction)的印象并不会很深刻,一方面是大多数工程师所开发的后端应用对一致性的要求并不是很高,很多时候只是封装一...

  • 关于“首先每一步都必须是原子的,创建订单或者进行扣款都必须是原子操作,你依旧可以使用 local transaction 来实现这一点。并且需要考虑发布事件,Chirs 建议将发布事件放入本地的数据库事务中,我认为不一定,因为在提交时有时候会做 constraint 检查,如果失败,则需要 rollback,但是 publish event 是无法 rollback 的。"
    -----我了解的过程是发布事件只是写入本地数据库,然后saga会后台从binlog中提取消息写入kafka中。所以认为是按Chirs做的。不知道对不对?

    Saga - 微服务中的分布式事务

    问题 当我们在开发单体应用时,其实我们对事务(即 transaction)的印象并不会很深刻,一方面是大多数工程师所开发的后端应用对一致性的要求并不是很高,很多时候只是封装一...

  • “上述分析也解释了为啥把springboot应用部署到机器上,tomcat能够找到springboot的入口,并启动它。”
    因为看到“tomcat能够找到springboot的入口”,请教一下,这个是springboot通过main启动tomcat,还是打包成war,另部署到tomcat后,由tomcat启动springboot呢?

    springboot 是如何帮我们省去web.xml配置的

    概述 最开始使用原生的springmvc时,总是免不了有如下xml配置 但是,切换到springboot之后,web.xml之类的繁琐的配置基本上都不见了。出于好奇研究了下s...

  • 正好这个写法不熟悉:getSelfInitializer(),感谢作者。
    找不到从哪传进来servletContext,原来只是实现一个接口。被使用时才传入参数servletContext。

    spring-boot中tomcat的启动过程

    本文源码分析基于spring-boot 2.1.4tomcat-embed 9.0.17 废话不多说,直接进入正题 启动 springbootSpringApplicatio...

  • //指定urlmapping
    registrationBean.addUrlMappings("/rest/*");
    //指定name,如果不指定默认为dispatcherServlet
    registrationBean.setName("rest");
    ---从两面相关的几名代码,我理解,这个设置是把自定义servlet注册到servletContext中用的名字,与IOC容器没有半毛关系。registrationBean本身是@bean的,是在IOC容器中的,名字是方法名。

    在spring boot中配置多个DispatcherServlet

    spring boot为我们自动配置了一个开箱即用的DispatcherServlet,映射路径为‘/’,但是如果项目中有多个服务,为了对不同服务进行不同的配置管理,需要对不...