首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
技术
订阅
大男孩72837
更多收藏集
微信扫码分享
微信
新浪微博
QQ
29篇文章 · 0订阅
一文学会 Java 动态代理机制
之前的文章里讲解过了Java的反射机制、垃圾回收机制,这一次我们来讲解一个更有意思的机制:动态代理。学习下Java里为什么出现这样一个机制,什么场合下会使用这个机制。 前两者就是普通的接口和实现类,而第三个就是所谓的代理类。对于使用者而言,他会让代理类去完成某件任务,并不关心这…
一切皆按值传递
"Java 中只有按值传递",作为初学者初看到这几个字有点不敢相信,无数次通过函数改变过对象,无数次跟同事说 Java 在传对象的时候是按引用传递。后来细细想想,之所以以为 Java 传对象是按引用传递是因为其中有很多概念都没理清楚,与 C++ 中的搞混了。从 C++ 转 Ja…
面试必会之ArrayList源码分析以及手写ArrayList
对ArrayList的操作一般分为两个步骤,改变位置(size)和操作元素(e)。所以这个过程在多线程的环境下是不能保证具有原子性的,因此ArrayList在多线程的环境下是线程不安全的。 1. 属性分析 序列化是指:将对象转换成以字节序列的形式来表示,以便用于持久化和传输。 …
如何设计一个百万级用户的抽奖系统?
本文给大家分享一个之前经历过的抽奖系统的流量削峰架构的设计方案。 抽奖、抢红包、秒杀,这类系统其实都有一些共同的特点,那就是在某个时间点会瞬间涌入大量的人来点击系统,给系统造成瞬间高于平时百倍、千倍甚至几十万倍的流量压力。 比如抽奖,有一种场景:某个网站或者APP规定好了在某个…
基于Netty实现Redis协议的编码解码器
上面是Netty的服务器端基本消息处理结构,为了便于初学者理解,它和真实的结构有稍许出入。Netty是基于NIO的消息处理框架,用来高效处理网络IO。处理网络消息一般走以下步骤 步骤2拿到新连接之后,如果是开启了新线程进入步骤3,那就是走传统的多线程服务器模式。一个线程一个连接…
Kafka连接器深度解读之错误处理和死信队列
Kafka连接器是Kafka的一部分,是在Kafka和其它技术之间构建流式管道的一个强有力的框架。它可用于将数据从多个地方(包括数据库、消息队列和文本文件)流式注入到Kafka,以及从Kafka将数据流式传输到目标端(如文档存储、NoSQL、数据库、对象存储等)中。 现实世界并…
Java并发编程—synchronized保证线程安全的原理分析
程安全是并发编程中的重要关注点,应该注意到的是,造成线程安全问题的主要诱因有两点,一是存在共享数据(也称临界资源),二是存在多条线程共同操作共享数据。因此为了解决这个问题,我们可能需要这样一个方案,当存在多个线程操作共享数据时,需要保证同一时刻有且只有一个线程在操作共享数据,其…
如何优雅的使用和理解线程池
可见线程池的重要性。 线程是稀缺资源,不能频繁的创建。 解耦作用;线程的创建于执行完全分开,方便维护。 应当将其放入一个池子中,可以给其他任务进行复用。 谈到线程池就会想到池化技术,其中最核心的思想就是把宝贵的资源放到一个池子中;每次使用都从里面获取,用完之后又放回池子供其他人…
从代理机制到Spring AOP
这篇文章准备从Java的代理机制讲到Spring的AOP。 代理模式是很常见的一种设计模式,代理一词拆开来看就是代为受理,那显然是要涉及到请求被代理的委托方,提供代理的代理方,以及想要通过代理来实际联系委托方的客户三个角色。举个生活中很常见的例子,各路的明星都会有个自己的经纪人…