![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
异步编程
梦江河
聊聊高并发,数据库,存储
展开
-
RocketMQ Broker存储过程
1)接收生产者发送过来的消息,写入到commitlog,这里如果开启了堆外内存,会写到堆外内存;2)然后是commitlog文件的刷盘,有两种策略:同步刷盘和异步刷盘,如果是同步刷盘,会将commitlog文件刷回磁盘再返回给客户端,如果是异步刷盘+不开启堆外内存,那么会有异步线程定期将commitlog文件刷回磁盘,如果是异步刷盘+开启堆外内存,那么会先把数据从堆外内存拷贝到commitlog文件对应的mmap内存区,再通知异步线程定期将commitlog文件刷回磁盘;...原创 2022-06-19 22:47:13 · 129 阅读 · 0 评论 -
Dubbo网关选型
1)zuulzuul网关集成dubbo2)gatewayspringcloud gateway的底层是webflux+netty+reactor,三个重要组件分别是路由(route)路由是网关中最基础的部分,路由信息包括一个ID、一个目的URI、一组断言工厂、一组Filter组成。如果断言为真,则说明请求的URL和配置的路由匹配。断言(predicates)Java8中的断言函数,SpringCloud Gateway中的断言函数类型是Spring5.0框架中的ServerWebExchan原创 2021-09-20 23:27:50 · 1335 阅读 · 0 评论 -
CompletableFuture非常用方法
public boolean complete(T value)public boolean completeExceptionally(Throwable ex)completedFuture(U value)exceptionally(Function<Throwable,? extends T> fn)getNow(T valueIfAbsent)getNumberOfDependents()obtrudeException(Throwable ex)obtrudeValue原创 2020-09-01 16:02:35 · 327 阅读 · 0 评论