![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
服务端技术
文章平均质量分 80
foreach_break
专注web、分布式、数据库、数据处理。
展开
-
高性能大并发server的基础
一、背景进入多核时代已经很久了,大数据概念也吵得沸沸扬扬,不管你喜欢不喜欢,不管你遇到没遇到,big-data或bigger-data都必须正视.处理大数据,基本都离不开分布式计算和分布式存储,这其中以hadoop最为使用广泛和经典。分布式系统,就离不开计算系统、网络系统、文件系统和数据库系统。这么多系统,之间又是如何协作的呢? 通讯过程又是如何保障高性能的呢?1.单处理器在以前的单核心cpu下,原创 2015-05-04 14:17:04 · 1866 阅读 · 2 评论 -
【高级java程序员应该知道的小知识】weak reference
本篇态度: simple & stupidweak reference Weak reference objects, which do not prevent their referents from being made finalizable, finalized, and then reclaimed. Weak references are most often used to imp原创 2015-05-06 05:16:52 · 1088 阅读 · 0 评论 -
【高级java程序员应该知道的小知识】 WeakHashMap
本篇宗旨:simple & stupidWeakHashMap (弱引用的哈希表) Hash table based implementation of the Map interface, with weak keys. An entry in a WeakHashMap will automatically be removed when its key is no longer in or原创 2015-05-06 04:56:15 · 1025 阅读 · 0 评论 -
【高级java程序员应该知道的小知识】 volatile
本篇态度:stupid&simplevolatile用法:private volatile Service.STATE state;优点:比其他的锁机制(synchronized、lock)简单;不阻塞;对volatile修饰的变量允许并发读.谨记: Java Memory Model ensures that all threads see a consistent value for原创 2015-05-06 03:07:32 · 897 阅读 · 0 评论 -
【Hadoop】RpcServer 线程模型
RpcServer 线程模型NameNode启动过程:线程模型Listener 1个:监听并接受来自客户端的连接.将新建连接放入pendingConnections.清理空闲连接.唤醒Reader.Reader N个 : 从pendingConnections中获取连接,读取数据,从RpcRequest构造Call,并放入callQueue.Handler N 个:从callQueue原创 2015-05-07 01:01:37 · 1015 阅读 · 0 评论 -
高性能server分析 - Hadoop的RpcServer
一、ListenerListener线程,当Server处于运行状态时,其负责监听来自客户端的连接,并使用Select模式处理Accept事件。同时,它开启了一个空闲连接(Idle Connection)处理例程,如果有过期的空闲连接,就关闭。这个例程通过一个计时器来实现。当select操作调用时,它可能会阻塞,这给了其它线程执行的机会。当有accept事件发生,它就会被唤醒以处理全部的事件,处理事原创 2015-05-05 01:06:36 · 1817 阅读 · 0 评论 -
你真的很熟分布式处理和事务吗?
本文从码农角度出发,聊聊分布式和事务.原创 2015-07-08 11:23:17 · 1400 阅读 · 2 评论