待兔 待兔
4年前
ThreadLocal源码分析
最近在学多线程并发的知识,发现好像ThreadLoca还挺重要,决定看看源码以及查找各方资料来学习一下。ThreadLocal能够提供线程的局部变量,让每个线程都可以通过set/get来对这个局部变量进行操作,不会和其它线程的局部变量进行冲突,实现了线程的数据隔离。首先是ThreadLocal的结构:每个Thread维护一个ThreadLocalMap,这个
京东云开发者|软件架构可视化及C4模型:架构设计不仅仅是UML
软件系统架构设计的目标不在于设计本身,而在于架构设计意图的传达。图形化有助于在团队间进行高效的信息同步,但不同的图形化方式需要语义一致性和效率间实现平衡。C4模型通过不同的抽象层级来表达系统的静态结构,并提供了最小集的抽象建模元素,为设
Stella981 Stella981
3年前
Prometheus时序数据库
Prometheus时序数据库内存中的存储结构前言笔者最近担起了公司监控的重任,而当前监控最流行的数据库即是Prometheus。按照笔者打破砂锅问到底的精神,自然要把这个开源组件源码搞明白才行。在经过一系列源码/资料的阅读以及各种Debug之后,对其内部机制有了一定的认识。今天,笔者就来介绍
Stella981 Stella981
3年前
IM移动端怎么搜索本地聊天记录
!(https://oscimg.oschina.net/oscnet/a26c4beb353d57e0a235a4166187c17c430.jpg)IM软件客户端需要支持本地存储的聊天记录的搜索功能,对于这类非结构化数据(全文数据)一般有两种检索方法。一、思路1、顺序扫描法比如要找内容包含某一个字符串的聊天
Easter79 Easter79
3年前
Springmvc+mybatis+Dubbo+ZooKeeper+Redis+KafKa
开发工具1.EclipseIDE:采用Maven项目管理,模块化。2.代码生成:通过界面方式简单配置,自动生成相应代码,目前包括三种生成方式(增删改查):单表、一对多、树结构。生成后的代码如果不需要注意美观程度,生成后即可用。技术选型(只列了一部分技术)1、后端服务框架:Dubbo、zookeeper、Rest服务缓存:redis
Wesley13 Wesley13
3年前
Java多线程之线程安全队列Queue
在Java多线程应用中,队列的使用率很高,多数生产消费模型的首选数据结构就是队列。Java提供的线程安全的Queue可以分为阻塞队列和非阻塞队列,其中阻塞队列的典型例子是BlockingQueue,非阻塞队列的典型例子是ConcurrentLinkedQueue,在实际应用中要根据实际需要选用阻塞队列或者非阻塞队列。注:什么叫线程安全?这个首先要明确。
Stella981 Stella981
3年前
Dubbo 支持哪些序列化协议?
面试题dubbo支持哪些通信协议?支持哪些序列化协议?说一下Hessian的数据结构?PB知道吗?为什么PB的效率是最高的?面试官心理分析上一个问题,说说dubbo的基本工作原理,那是你必须知道的,至少要知道dubbo分成哪些层,然后平时怎么发起rpc请求的,注册、发现、调用,这些是基本的。接着
Wesley13 Wesley13
3年前
Java进阶:基于TCP的网络实时聊天室(socket通信案例)
目录开门见山一、数据结构Map二、保证线程安全三、群聊核心方法四、聊天室具体设计0、用户登录服务器1、查看当前上线用户2、群聊3、私信4、退出当前聊天状态5、离线6、查看帮助五、聊天室服务完整代码六、效果演示:基于TCP的网络实时聊天室结语开门见山最近一个月记
深度学习 深度学习
1个月前
2013年蓝桥杯国赛C组危险系数(洛谷P8604):图论算法解密
一、问题描述地下网络由多个站点和连接通道组成。当某个站点被敌人破坏后,可能导致其他站点间失去联系。DF(x,y)定义为:使站点x和y断开连接的所有关键点z的数量。二、核心思想1.表示:使用网络结构1.连通性检查:算法1.关键点判定:逐个排除节点后检查连通性
codigger codigger
1星期前
代码的“活”艺术:Object Sense 的元编程与运行时灵活性如何解锁编程新境界?
聚焦OSE在动态代码生成、反射机制及注解等元编程方面的强大能力,洞察它如何赋予开发者在运行时操作代码的超能力,开辟前所未有的开发模式与创新空间。传统编程语言仿佛被浇筑在混凝土中的建筑——编译时便固化了结构,运行时难以应对突发变化。当软件系统日益复杂,用户需