自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(206)
  • 资源 (3)
  • 收藏
  • 关注

原创 高可用方法论

列出了高可用常见的问题和应对措施。问题 典型案例 增大 MTBF 减小 MTTR 程序、配置 Bug 程序、配置 Bug 提升研发、测试质量,灰度发布 监控告警、快速回滚 机器、机房故障 宕机、机房断电 硬件冗余、多机房 自动故障转移,切流到其他冗余机器、机房 突发流量 上游系统异常重试、外部攻击 上游系统容错调度防雪崩、流量配额、防攻击、防抓取 其他同容量不足 容量不足 主流程容量不足 容量规划、容量预

2021-08-08 12:44:56 269

原创 TCP连接的建立与销毁

1. 服务器 listen 时,计算了全/半连接队列的长度,还申请了相关内存并初始化。2. 客户端 connect 时,把本地 socket 状态设置成了 TCP_SYN_SENT,选则一个可用的端口,发出 SYN 握手请求并启动重传定时器。3. 服务器响应 ack 时,会判断下接收队列是否满了,满的话可能会丢弃该请求。否则发出 synack,申请 request_sock 添加到半连接队列中,同时启动定时器。4. 客户端响应 synack 时,清除了 connect 时设置的重传定时器,把当...

2021-07-30 16:47:50 545

原创 http网络协议杂谈

单纯的建立链接阶段,不包含数据传输。http1.0,1.5RTT = 3次握手(1.5RTT)https 1.1,3.5RTT = 3次握手(1.5RTT) + https建立(2RTT)http2.0,3.5RTT = 3次握手(1.5RTT) + https建立(2RTT)http3.0,0-1RTT,udp无三次握手说法,若connectionId已存在,可直接复用。参考:一文读懂 HTTP/1HTTP/2HTTP/3...

2021-07-29 10:54:56 383

原创 tomcat源码关键点

tomcat容器体系tomcat组件请求过程tomcat责任链模式tomcat nio模型tomcat 线程模型tomcat bind设置,tomcaorg.apache.tomcat.util.net.NioEndpoint#bind半连接,全连接队列一次完整请求Spring调用入口...

2021-07-28 13:19:38 114

原创 性能压测常见问题及定位

2020-11-13 17:44:43 443

原创 feed流架构设计探讨

如何设计一个feed流信息系统。概念feed:用户发表的内容follower:A关注B,A是B的followerfollowee:B被A关注,B是A的foloweefeed流:持续更新并展示folowee的内容产品偏向1:微博、twitter类2:微信朋友圈、陌陌类3:快手、抖音类产品目标。1:用户可以读取/存储微博2:用户可以关注...

2020-02-09 17:30:54 966

原创 钝化的中年人

人到中年,特别容易钝化。最近半年,你学习到了什么新技能。读了什么书,有什么新的体会,陌生信息接受消化比例如何。如果没有,还停留在吃老本的阶段,ok,那可以肯定你已经是钝化的中年人。刀剑不打磨,就会自我生锈,人不打磨呢?我们在幼儿园、小学、初中、高中、大学的时候,目标非常明确就是升入更好的学校,家长和老师逼着,身边的同学和环境也都是积极向上的。等到毕业,走上社会,瞬间...

2019-08-15 11:04:22 226

原创 写代码的三个阶段

个人把写代码分为三个阶段,请勿对号入座。直接开撸管他三七二十一,需求直接开干,程序能跑通能干活就行。架构先行拿到需求脑子过一遍,80%的架构和接口已经梳理定义完毕,尚有部分细节的没想明白怎么实现,边开发边想,边写边重构,等开发完,架构也定义清晰。预见未来需求过一遍,架构已定义完毕,架构设计既能满足现在,也能预见到未来需求的变更。接口定义,架构实现,细节打磨...

2019-08-15 11:03:02 794

原创 谈谈分享

训练有素、技能精干的军人是打胜战的必要条件。对于公司同理,必要的分享和培训机制是非常有益的。 为什么需要分享 公司 培育技术干练的队伍,不断提高团队的实力下限。 开放、协作的团队文化 提升团队的凝聚力 打造公司品牌能力建设 个人 学...

2019-07-28 21:58:58 239

原创 高并发利器WAL顺序写

WAL机制事物日志可以帮助提高事物的效率。使用事物日志,存储引擎在修改标的数据时只需要修改其内存拷贝,再把修改行为记录到持久在硬盘上的事务日志中,而不用每次都将修改的数据本身持久到磁盘中。事物日志采用的是追加的方式,因此写日志的操作是磁盘上一小块区域内的顺序I/O,而不像随机I/O需要在磁盘的多个地方移动磁头,所以采用事物日志的方式相对来说要快得多。事务日志持久以后,内存中被修改的数据在后台可...

2019-06-03 12:52:10 1910

原创 管理的必经之路-开会

经理人的产出=他直接管辖部门的产出+他间接影响所及部门的产出。中层经理人工作中很重要的一部分是提供信息与技术,并且将较理想的行事方法传授给受他管理或影响的人;另外,经理人也必须制定决策,或者帮助别人制定决策。而这两种职责,都必须面对面开个会才能履行。因此,我必须重申:会议是从事管理工作必须的媒介。你绝对无法避免开会,但你能让会议更有效率。以上提到两种不同经理人的职...

2019-05-19 16:50:39 527

原创 如何double你的能力

如何double自己的能力,对不起,我也不知道。但我也在努力的路上,分享一些具体思路,希望对大家有帮助。目标定义首先你得明白能力double之后,你该是什么样子,很简单,用钱衡量。把当前薪资*2,然后通过招聘网站、HR和猎头,知悉该money对应的职位,职能和工作范围,有了具体的目标,接下来就是对照差距行动。八维空间观察身边人,领导,领导的领导;平级,平级的平级...

2019-05-17 14:05:00 2862 4

原创 谈谈身边的强者

把身边的厉害人物习惯记录下,向强者学习,不断给自己照照镜子。目的导向,目标导向,结果导向 正面:知道自己想要什么,不想要什么。目标应拆分的若干具体过程和关键检查点,每件事情都有明确的动机和方向点。 反面:年年目标年年立,年年目标都一样。每天学习新知识,每天看的都相似,知识没有沉淀和复盘不能叫做知识。 欲望强烈,愿力强烈 正面:渴望改变命运,愿力强烈,甭管是要发财致富,还是建立新中...

2019-05-13 18:22:16 245

原创 Review Board管理员操作手册

1.登录成功之后切换到Admin视图2.管理员主要操作视图 name description Users 注册用户信息 Review groups Target reviewer groups,类似于邮件组,指定Review groups,其下的所有人都能收到review request Default reviewers ...

2019-04-28 17:11:19 1587

原创 Review Board服务器安装手册

此操作手册为运维安装Review Board软件服务时候参考。操作系统配置:CentOS Linux release 7.5.1804 (Core),2C4G,目前使用的为3.0.14版本。#源更新yum updateyum list | grep initscriptsyum install initscriptsyum install httpd#安装pipy...

2019-04-25 09:57:59 478

原创 浅谈基层管理

我带团队的时间并不长,中间也犯过很多错误,在此特别感谢老板和公司给我这个机会,也谢谢大家对我的包容和支持。路很长,大家一起努力,下面是我一年的一些心得体会,还请诸位批评指正。1. 梦想、使命和愿景这个东西比较虚,但我觉得非常有意义,把目标摆在台面上,按照这个去带团队和要求大家。互联网xx公司最有战斗力的团队,吃着公司的饭就不能砸公司的锅。身为leader要为下...

2019-04-16 11:10:38 472

原创 2019年已经过去1/4,当初的愿望都实现了吗

19年已经过去1/4,大家的愿望都实现了吗?不管你信不信,反正我的没有。good基本每两周约朋友吃饭叙旧,聊聊人生、喜怒哀乐。今年终于把股票账号开了,作为新韭菜入场,开户其实很简单的事儿,App就能直接办理。公众号写了5篇文章,微信的赞赏功能也开通了,竟然有了打赏,喜上眉梢,谢谢各位祖宗、大爷美女的厚爱。bad每天手机使用最多1.5个小时,没实现。《网易一千...

2019-04-09 14:24:46 416

转载 从TCP三次握手说起——浅析TCP协议中的疑难杂症

【引言】说到TCP协议,相信大家都比较熟悉了,对于TCP协议总能说个一二三来,但是TCP协议又是一个非常复杂的协议,其中有不少细节点让人头疼。本文就是来说说这些头疼点的,浅谈一些TCP的疑难杂症。那么从哪说起呢?当然是从三次握手和四次挥手说起啦,可能大家都知道TCP是三次交互完成连接的建立,四次交互来断开一个连接,那为什么是三次握手和四次挥手呢?反过来不行吗?疑症一:TCP的三次握手、四次...

2019-03-31 21:51:59 353

原创 论code review代码审查

什么是Code reviewCode review is the process of making pieces of source code available for other developers to review, with the intention of catching bugs and design errors before the code becomes part ...

2019-03-31 21:45:35 333

原创 论如何提高研发效能

为什么要提高研发效能,因为技术本身是为业务服务的,产品的价值体现在业务上,技术的所有价值最终都要通过业务结果来呈现,我们的根本目的是帮助业务成功,促进业务腾飞。那技术就不重要了吗!重要,因为所有的业务价值最终都要通过软件服务来变现,两者相辅相成,互相促进。那如何提高研发效能?一个项目从立项到上线涉及到角色包含客户、运营、客服、产品、技术、测试。涉及到关键流程如下。...

2019-03-28 17:44:53 3603

原创 哲学无用之用

哲学不是知识,也不是技能,即赚不来钱,也解决不了问题。他是世界观,方法论,是社会意识的具体存在和表现形式,是对人生的系统反思。 人在思考时,不免收到生活环境的制约,包括地理环境、生存技能,处于某种环境之中,他对生活就有某种感受,在他的哲学思想里就不免对有些地方予以强调,而另一些地方又受到忽略,这就构成了他的哲学思想特色。 这一点,中西两方的对比就很明显。...

2019-03-28 17:43:30 431

原创 论如何高效开会

开会的目的开会是每个人都会经常遇到,而且必须处理的事情。但挺多人其实挺讨厌开会,但讨厌的并不是开会这种形式,而是厌恶没有目的,冗长没有结果的会议。开会不是拉家常,交流感情,烧烤摊上3瓶啤酒和10个烤串更适合;也不是通报情况,因为电子邮件,书面报告更适合。开会是为了达到某种既定目的,解决某个特定问题,找到解决办法,达成共识,形成决议,并立即执行。其目的主要有两个:一是统一思想;二是协...

2019-03-28 17:41:54 648

原创 2017-2018年所遇坑

1.http请求劫持app应用安装包被劫持为快播类应用 2.struts漏洞安全攻击黑客利用框架安全漏洞,删除所有文件 3.app苹果Provisioning Profiles证书过期下载失效,循环下载 4.app苹果pList文件缺失,display-image和full-size-image苹果app无法正常下载 5.app下载,打满带宽,造成办...

2018-12-04 10:45:17 224

转载 深度解读equal方法与hashCode方法渊源

http://blog.csdn.net/javazejian/article/details/51348320今天这篇文章我们打算来深度解读一下equal方法以及其关联方法hashCode(),我们准备从以下几点入手分析: 1.equals()的所属以及内部原理(即Object中equals方法的实现原理)说起equals方法,我们都知道是超类Object中的一个基本方法,用...

2018-09-19 10:37:58 209

转载 quartz集群调度机制调研及源码分析

quartz2.2.1集群调度机制调研及源码分析引言quartz集群架构调度器实例化调度过程触发器的获取触发trigger:Job执行过程:总结:附:引言quratz是目前最为成熟,使用最广泛的Java任务调度框架,功能强大配置灵活.在企业应用中占重要地位.quratz在集群环境中的使用方式是每个企业级系统都要考虑的问题.早在2006年,在ITe

2017-02-17 15:01:19 1413 1

原创 mybatis-spring工作浅析

核心类SqlSessionFactoryMapperFactoryBean流程配置文件加载初始化SqlSessionFactoryBean —> SqlSessionFactory —> Configuration —> XMLMapperBuilder —> XMLStatementBuilder —> MappedStatementbean...

2016-12-09 22:06:49 442

原创 近一年一些小坑

1.事务中包含rpc请求send amq,db commitdb操作成功之前,amq已收到消息,db not find,a sad story2.int Integermethod param int,传递参数Integer,npebeanCopy一int,一integer npe3.mysql lockfor update悲观锁set autocommit=0;

2016-12-02 16:56:51 498

原创 java服务too many open files

1.文件句柄查询查询此操作用户支持文件句柄数量 ulimit -n查询操作系统支持文件句柄数量 ulimit -a2.现在使用文件句柄lsof -n| wc -l   文件句柄lost -n -i | wc -l 网络相关句柄netstat -anlp | wc -l 网络连接数lsof -n | awk '{print $2}' | sort | uniq -c |

2016-11-30 11:22:09 439

转载 CP连接状态详解及TIME_WAIT过多的解决方法

上图对排除和定位网络或系统故障时大有帮助,但是怎样牢牢地将这张图刻在脑中呢?那么你就一定要对这张图的每一个状态,及转换的过程有深刻地认识,不能只停留在一知半解之中。下面对这张图的11种状态详细解释一下,以便加强记忆!不过在这之前,先回顾一下TCP建立连接的三次握手过程,以及关闭连接的四次握手过程。1、建立连接协议(三次握手)(1)客户端发送一个带SYN标志的TCP报文到服务器。这是三次

2016-11-28 11:25:33 963

转载 Zookeeper Watch机制

Znode发生变化(Znode本身的增加,删除,修改,以及子Znode的变化)可以通过Watch机制通知到客户端。那么要实现Watch,就必须实现org.apache.zookeeper.Watcher接口,并且将实现类的对象传入到可以Watch的方法中。Zookeeper中所有读操作(getData(),getChildren(),exists())都可以设置Watch选项。Watch事件具有o

2016-11-22 19:48:34 1212

转载 Zookeeper你应该了解基础知识

简介Apache ZooKeeper是一个分布式的,开放源码的分布式应用程序协调服务,由Client和Server构成,Server提供了一致性复制和存储服务,Client包含一个简单的原语集,分布式应用程序可以基于它实现同步服务,配置维护和命名服务等。ZooKeeper的设计非常易于编程,ZooKeeper维护着一个hierarchal(层次)的名字空间,它采用树形的数据结构,类似于

2016-11-22 19:47:49 593

原创 spring mvc4.3源码分享

spring mvc 源码技术分享1​.​s​p​r​i​n​g​ ​m​v​c​初​始​化​ ​ ​2​.​h​t​t​p​映​射​方​法​执​行​ ​​3​.​h​t​t​p​响​应​渲​染​及​输​出​ ​ ​4​.​s​p​r​i​n​g​4​.​3​新​特​性

2016-08-17 11:20:17 1007

原创 http压力测试工具及使用说明

说明:介绍几款简单、易使用http压测工具,便于研发同学,压测服务,明确服务临界值,寻找服务瓶颈点。压测时候可重点以下指标,关注并发用户数、TPS(每秒事务数量)、RT(事务响应时间)、事物失败率、CPU(不要超过70%)、LOAD(4核以下服务,不要超过2)http_loadApache Bench(Apache自带服务器压力测试工具)webbench

2015-12-05 10:08:13 972

原创 风口方向杂谈

90年代对外贸易通信行业起步华为、中兴赶上时代大潮2000年代医疗、教育、住房改革互联网草莽时代四大门户BBS论坛三大巨头成长期百度 信息获取阿里 商品信息的流通腾讯 沟通信息流通互联网拓荒期品牌化趋势唯品会  商品信息流通,追求品牌化京东     商品信息流通,追求品牌化、服务化垂直化趋势点评、美团 衣食

2015-10-08 16:55:19 705

原创 近一年读书笔记

近一年读书笔记 道德经,纸质,老子(岳麓书社)逐辰推荐,感谢,初读此书是为了装逼用的,读了四五篇觉得挺有意思的。读的时候参照了网易公开课,道家的智慧。知秉要执本,清虚以自守,卑弱以自持。(汉书.艺文志.诸子略)个人感悟:贵柔、守雌,不争,无为;个人若不照顾组织利益,个人会被组织所放弃;组织若不能照顾好个人利益,组织便会被个人所抛弃。白鹿原,电子书,陈忠实

2015-09-20 21:52:59 751

原创 Http Api调研分享

如何设计一个更好地http api

2015-01-09 15:08:17 992

转载 spring MVC原理

Spring MVC工作流程图图一图二 Spring工作流程描述      1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获;      2. DispatcherServlet对请求URL进行解析,得到请求资源标识符(URI)。然后根据该URI,调用HandlerMappin

2014-12-07 14:43:48 642

转载 Google Java编程风格指南

作者:Hawstein出处:http://hawstein.com/posts/google-java-style.html声明:本文采用以下协议进行授权: 自由转载-非商用-非衍生-保持署名|Creative Commons BY-NC-ND 3.0 ,转载请注明作者及出处。目录前言源文件基础源文件结构格式命名约定编程实践Javadoc后记前言这份

2014-11-16 13:00:47 727

原创 java架构师知识集合

朋友oach.k的一

2014-08-16 09:59:20 834

转载 Java调优之jvm和线程的内存分析

这几天因为自己开发的一个网站在768M内存的机器上撑不起100多个用户的运行,因为每个用户启用功能后,系统将为每个用户分配8个左右的独立线程,我的这篇文章http://www.mzone.cc/article/311.html也有介绍的。在内存小的机器上经常出现的问题就是Cann’t allocate memory和OutOfMemoryError错误,这个要从jvm的内存结构来进行分析了。在

2014-08-16 09:23:51 835

http api调研分享

各大开放平台http api调研分享 如何设计更好地http api

2015-09-22

java并发编程实践

围绕java内存模型、java锁、juc并发包、编程实践方向,阐述为什么会有java并发、如何用好并发、并发编程有哪些坑。

2015-09-22

站在hadoop上看hive

2014-05-29

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除