- 博客(2)
- 资源 (1)
- 收藏
- 关注
原创 一个用于在编译阶段发现错误的技巧
在剖析epoll源代码的时候,发现了一个很有用的宏,该宏的目的主要是解决一些条件满足,一旦无法满足这些条件,将会在编译阶段提示错误,而不是到运行阶段出现crash。 宏定义如下: #define BUILD_BUG_ON(condition) ((void)sizeof(char[1 - 2*!!(condition)])) //如果条件*满足就直接char[-1],此时将会出现编译错误。
2013-09-29 09:03:02 14255
原创 复杂大系统需要对服务依赖关系进行管理
当一个系统变得越来越复杂的时候,它必然大量的依赖外部系统和内部其他系统的服务才能达成业务目标,因此,这个时候,对服务依赖进行有效的管理才能提升服务的故障容忍度,这也是大系统小做的核心思路。 那么如何进行服务依赖管理呢? 1,首先,我们需要区分服务的强依赖和弱依赖关系,即区分关键路径和非关键路径。对弱依赖的设置开关。 那么说明是强依赖呢?强依赖即若强依赖的该系统如果无法
2013-09-01 17:58:17 2807
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人