TopCoder

关注程序员技术成长,用简洁的文字,分享复杂的技术。
40 篇文章
12 人订阅

全部文章

luoxn28

Linux Cgroup浅析

cgroups是Linux下控制一个(或一组)进程的资源限制机制,全称是control groups,可以对cpu、内存等资源做精细化控制,比如目前很多的Doc...

5310
luoxn28

大数据存储的秘密之分区

常常和分区一并提及的概念是复制,分区通常与复制结合使⽤,使得每个分区的副本存储在多个节点上。这意味着,即使每条记录属于⼀个分区,它仍然可以存储在多个不同的节点上...

6630
luoxn28

如何优雅地执行dubbo"单测"

很多小伙伴所在的公司是基于Dubbo来构建技术栈的,日常开发中必不可少要写dubbo单测(单元测试),如果单测数据依赖已有的外部dubbo服务,一般是mock数...

5410
luoxn28

开发者不可不知的 Docker 命令

Docker是基于go语言开发,底层技术(Linux下)主要基于cgroups、namespace以及联合文件技术实现的一种进程级别的轻量级虚拟化解决方案。由于...

5010
luoxn28

高可用的本质: 复制

服务和数据的高可用性本质上是靠“复制”来解决的,比如服务通过集群部署多台机器来完成,数据通过冗余的多副本机制来完成。对于服务来说,只需要部署多个实例即可,特别是...

5010
luoxn28

Netty 总结篇

Netty一个主要的目标就是促进“关注点分离”:使业务逻辑从网络基础设施应用程序中分离。不仅仅是Netty框架,其他框架的设计目的也大都是为了使业务程序和底层技...

5910
luoxn28

Netty ByteBuf原理剖析

JDK为了解决网络通信中的数据缓冲问题,提供了ByteBuffer(heap或者直接内存缓存)来解决缓存问题,通过缓冲区来平衡网络io和CPU之间的速度差异,等...

7530
luoxn28

从Netty EventLoop实现上可以学到什么

EventLoop是一个Reactor模型的事件处理器,一个EventLoop对应一个线程,其内部会维护一个selector和taskQueue,负责处理客户端...

4710
luoxn28

Netty 黏包拆包机制

黏包和拆包的产生是由于TCP拥塞控制算法(比如angle算法)和TCP缓冲区机制导致的,angle算法简单来说就是通过一些规则来尽可能利用网络带宽,尽可能的发送...

5910
luoxn28

代码到底需不需要注释?

好的代码需不需要注释,这个问题其实不能直接说需要或者不需要,因为要视情况而定。如果一段代码功能较为简单且独立,同时代码风格较好,是不需要注释的,因为代码本身已经...

3610
luoxn28

Netty Pipeline与ChannelHandler那些事

每个channel内部都会持有一个ChannelPipeline对象pipeline,pipeline默认实现DefaultChannelPipeline内部维...

5410
luoxn28

Java nio 空轮询bug到底是什么

epoll机制是Linux下一种高效的IO复用方式,相较于select和poll机制来说。其高效的原因是将基于事件的fd放到内核中来完成,在内核中基于红黑树+链...

11220
luoxn28

彻底搞懂 netty 线程模型

netty线程模型netty单线程模型Reactor多线程模型Reactor主从多线程模型netty线程模型思考netty线程模型实践

9520
luoxn28

Netty 处理连接那些事

Netty的连接处理就是IO事件的处理,IO事件包括读事件、ACCEPT事件、写事件和OP_CONNECT事件。

5610
luoxn28

Netty 启动流程解析

Netty的启动流程(ServerBootstrap),就是创建NioEventLoopGroup(内部可能包含多个NioEventLoop,每个eventLo...

7710
luoxn28

Netty 入门,这一篇文章就够了

netty旨在为可维护的高性能、高可扩展性协议服务器和客户端的快速开发提供异步事件驱动的网络应用程序框架和工具。换句话说,Netty是一个NIO客户端服务器框架...

6110
luoxn28

java lambda 深入浅出

标注为@FunctionalInterface的接口是函数式接口,该接口只有一个自定义方法。注意,只要接口只要包含一个抽象方法,编译器就默认该接口为函数式接口。

6730
luoxn28

java lambda 原理分析

以上代码就会产生一个Application$1.class文件和一个lambda$main$0的方法。既然lambda实现不是内部类,那么在lambda中thi...

8230
luoxn28

java lambda 容易掉进的2个坑

这是为什么呢?因为默认情况下,也就是Collectors.toMap(k -> k, v -> v)未指定BinaryOperator<U> mergeFunc...

9620
luoxn28

Eureka 原理分析

注册中心是分布式开发的核心组件之一,而eureka是spring cloud推荐的注册中心实现,因此对于Java开发同学来说,还是有必要学习eureka的,特别...

8020

扫码关注云+社区

领取腾讯云代金券

年度创作总结 领取年终奖励