记线上Dubbo调用异常排查处理

一、简单介绍 suishen-esb中,提供了Dubbo对Hystrix的集成; Hystrix内部使用了线程池完成具体的任务执行; 每一个远程service使用独立的线程池; 内部封装中,线程池的核心线程数和最大线程数默认为30,等待队列使用SynchronousQueue(不 »

tcpkill介绍,一个主动清理tcp连接的工具

背景 我们常用的redis、mysql、mongodb等服务,因为client程序使用异常,如果连接数监控没做好且没及时处理的情况下,server连接数就容易被打满; server连接数被打满的情况下,client就不能新建连接; 对于短连接client,会影响新建连接,业务 »

Swift防御编程

1、背景 我们在代码设计和编写过程中,要尽可能的确保自己的代码不出错,防御性编程能使我们尽早的发现较小问题,而不是等到客户反馈或者收到异常崩溃的时候才发现。 作为开发人员,几乎没有人能保证自己的程序一定没有bug,所以适度的防御会提高开发质量并且降低调试bug的时间。 防御编码的 »

记线上MONGO慢查询问题排查处理

一、简单介绍 mongo语句查询条件中出现null或空串,可能会导致索引失效,查询优化器无法选择正确的查询计划,出现慢查询引起服务异常 mongo查询的执行计划使用了LRU缓存,在很多种情况下会失效,导致重新选择执行计划并缓存,供后续同类查询直接使用; 服务开始时一直运行正常,当 »

IOS触摸事件的分发和响应链(二)

事件的响应链(The Responder Chain) 响应者对象(The Responder Object) 响应者链由响应者对象组成,响应者对象都是UIResponder的子类。 许多类型的事件依赖于用于事件传递的响应者链。响应者链是一系列链接的响应者对象,它从第一个响应者( »

Android组件化开发

Android 组件化开发 模块化?组件化?插件化? 组件化和模块化 百度百科对组件化的解释: 解耦复杂系统时将多个功能模块拆分、重组的过程,有多种属性、状态反映其内部特性。 定义 组件化是一种高效的处理复杂应用系统,更好的明确功能模块作用的方式。 目的 »

中华万年历客户端埋点方案解析

前言 孔雀系统SDK是我们客户端埋点SDK的前身。在最开始设计时,孔雀系统主要是为应用提供各种样式的广告展示及广告的view、click等事件的统计。广告样式包括:开屏广告、提醒弹窗、回退弹窗广告、通用广告等,和现在第三方的广告SDK类似(banner、插屏、开屏、原生等), »

浅析HDFS基本原理

随着互联网的发展,数据日益增多,增长超过了单机能够处理的上线,数据如何存储和处理成为了科技公司的难题,随着google的三篇论文的发布,大家终于找到了一个方案-分布式文件系统+MapReduce。Hadoop是参考google论文实现的,集成了分布式文件系统与分布式批处理平台。h »