首页
学习
活动
专区
工具
TVP
发布

程序猿人

专栏作者
21
文章
29852
阅读量
16
订阅数
事务及分布式事务
事务(Transaction)是并发控制的单位,是用户定义的一个操作序列。 这些操作要么都做,要么都不做,是一个不可分割的工作单位。
早安嵩骏
2021-04-25
1.3K0
Redis的持久化
RDB是一种文件后缀名,这种持久化方案的名称也由此而来。RDB持久化既可以手动执行,也可以根据服务器配置选项定制执行,该功能可以将某个时间点上的数据库状态保存到一个RDB文件中。RDB持久化生成的RDB文件是一个经过压缩的二进制文件。
早安嵩骏
2021-03-03
3350
Netty对ThreadLocal的升级
以上是ThreadLocal的注释,大致意思是:ThreadLocal提供了线程局部变量的能力。这些变量与普通变量的不同之处在于每个线程都有自己独立的副本变量,ThreadLocal实例通常是类中希望将状态与线程关联起来的私有静态字段(例如用户ID或者事务ID)。
早安嵩骏
2020-08-11
8590
Netty之美--零拷贝
零拷贝(Zero-copy)是指计算机执行操作时,CPU不需要先将数据从某处内存复制到另一个特定区域。这种技术通常用于通过网络传输文件时节省CPU周期和内存带宽。
早安嵩骏
2020-08-11
5150
死磕Reactor模式
上两篇从I/O模型讲到了I/O多路复用器。这一篇主要总结下I/O多路复用器的主要应用——Reactor模式。
早安嵩骏
2020-08-11
4270
I/O多路复用器之隐秘的角落
上一篇文章讲到了Unix的I/O模型,以及在java中的具体实现,其中在java中我们最为关注的就是 I/O 复用了,这篇主要总结下I/O多路复用器。
早安嵩骏
2020-08-11
4140
Netty之美--I/O模型
「同步(synchronous)」是指当一个任务A的执行需要依赖于另外一个任务B的执行结果时,任务A必须等待任务B执行完成,才可以继续执行;
早安嵩骏
2020-08-11
5610
Netty之美--开篇
“ 从事广告服务端研发4年了,终于有时间总结下Netty,希望有所受益 。” Netty简介 Netty是由JBOSS提供的一个Java开源框架,Netty提供异步的、面向事件驱动的网络应用程序框架,用以快速开发高性能、高可靠性的网络IO程序; Netty可以帮助你快速、简单的开发出一个网络应用,大幅度简化和流程化了NIO的开发过程; Netty是目前最流行的NIO框架,Netty主要针对在TCP协议下,面向Clients端的高并发应用,或者Peer to Peer场景下的大量数据传输的应用,在互联网领域
早安嵩骏
2020-08-11
3060
Linux--nc命令
我们常常会面临服务器和本地机器之间的文件传输,通常情况下,lszrz命令是可以完全应付的。但是当文件过大的时候,例如前段时间需要传输一个1.7G的堆dump文件到本地,就让我犯了难,sz命令直接卡死,根本下载不下来,这个时候nc就派上了用场。
早安嵩骏
2020-08-11
4.1K0
以OpenResty搭建RTB竞价引擎接入层
OpenResty: OpenResty是一个基于Nginx与 Lua 的高性能 Web 平台,其内部集成了大量精良的 Lua 库、第三方模块以及大多数的依赖项。用于方便地搭建能够处理超高并发、扩展性极高的动态 Web 应用、Web 服务和动态网关,以下或也称之为Nginx。
早安嵩骏
2020-08-11
6630
JDK错误用法—TimSort
Tim Peters在2002年设计了该算法并在Python中使用(TimSort 是Python中list.sort的默认实现),后被引入java。TimSort算法是一种归并排序和插入排序的混合排序算法,设计初衷是为了在真实世界中的各种数据中可以有较好的性能。基本工作过程是:
早安嵩骏
2020-08-11
7450
深入理解Java内存模型
Java虚拟机规范中试图定义一种Java内存模型(Java Memory Model,JMM)来屏蔽掉各种硬件和操作系统的内存访问差异,以实现让Java程序在各种平台下都能到一致的内存访问效果。
早安嵩骏
2020-08-11
3530
Raw use of parameterized class 'Future'
警告:Raw use of parameterized class 'Future' Inspection info: Reports any uses of parameterized classes where the type parameters are omitted. Such raw uses of parameterized types are valid in Java, but defeat the purpose of using type parameters, and may mask bugs. This inspection mirrors the rawtypes warning of javac.
早安嵩骏
2020-08-11
9.7K0
JDK错误用法——throwable.getCause
最近上线发现一个恶心的问题,就是 vert.x 把异常日志吞掉了,异常操作全部成了超时日志(系统设置有请求超时时间)。vert.x 是一个响应式框架,它是把任务放到 eventLoop 中异步执行的,但是吞日志,这怎么能行?
早安嵩骏
2020-08-11
6050
你该懂得操作系统知识—内核态和用户态
现代操作系统一般将 OS 划分非若干层次,再将 OS 的不同功能分别设置在不同的层次中。通常将一些与硬件紧密相关的模块(如中断处理程序等)、各种常用设备的驱动程序以及运行频率较高的模块(如时钟管理、进程调度和许多模块所公用的一些基本操作),都安排在紧靠硬件的软件层次中,将它们常驻内存,即通常所称为的OS 内核。这种安排方式的目的在于两个方面:
早安嵩骏
2020-08-11
1.6K0
计算广告——收入分解
PV(Page View): 是系统一天的访问量(有的媒体公司,广告和内容分开,PV则代表他们的广告曝光,访问量用request代表,其实是一个意思);
早安嵩骏
2020-08-11
3.8K0
读源码——Guava-Cache
今天,听同事介绍了Cuava-cache,这是个老牌缓存了,虽然近来被Caffine的出现遮盖了风头,但依然不能掩盖它往日的辉煌,至少在我们团队,还有很多项目在使用它,索性就以它为基础,对缓存做一次总结。
早安嵩骏
2020-08-11
7640
读源码——cglib动态代理
在Spring Aop的实现中,动态代理有2种实现:第一种是JDK自带的,在读源码——JDK动态代理写过了;第二种就是本文要写的cglib动态代理的实现了。
早安嵩骏
2020-08-11
7200
算法——递归
如上,这道题目的解法主要还是应用了递归的编程技巧。递归,去的过程称为“递”,回来的过程称为“归”。一般所有的递归问题都可以用递归公式来解决。写出递归公式,问题就解决了一多半。
早安嵩骏
2020-08-11
5260
读源码——JDK动态代理
在 java 中,动态代理算的上是底层架构的发动机。最熟悉的包括 Spring 的 aop、rpc 的实现中也都少不了它的影子。所以,从源码的角度对 jdk 实现的动态代理加以总结。
早安嵩骏
2020-08-11
2950
点击加载更多
社区活动
Python精品学习库
代码在线跑,知识轻松学
【玩转EdgeOne】征文进行中
限时免费体验,发文即有奖~
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·干货材料·成员作品·最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档