模块递归拆分法: 设计模式 设计原则,复杂层次设计举例。系统重构 装饰模式,门面模式,代理模式

程序员最牛逼的能力是模块拆分能力,    然后才能利用模块依赖的工具,java 9 或者 runtime期的osgi ,其他maven插件,maven build期. 其他idea插件,类似阿里云的代码规范检查.   Modularity—the result of Project Jigsaw ...

2018-04-10 11:51:52

阅读数 313

评论数 0

技术人员规划能力,如何规划新的系统

自己的这篇博客也提到了点 如何成为一名架构师,架构师成长之路结合自身经历个人理解:p7 内部重构。 1. 新增类型的重构 2. 内部复杂逻辑用 责任链 3. 五大设计原则的应用。解耦,reactor,mq模式。 4. 稳定性基础体系建设,总结。整个链路上技术栈了解。p8 规划新系统。 1.关注人 ...

2018-04-03 17:24:57

阅读数 425

评论数 0

稳定性 问题定位[基于此监控系统] 系统优化[内部调用异常数据流量,基于此系统上的压测瓶颈发现]

csdn上的博客:稳定性建设的方法论 架构师应该做什么? 自己的另外一篇:稳定性 耗时 gc 过长问题排查 和工具http://www.cnblogs.com/fei33423/p/7800395.html 老的思考:稳定性 监控 业务后期 - 架构师https://www.cnblogs.c...

2019-05-07 11:39:36

阅读数 93

评论数 0

[原创] 体感监控,体感报警体系

体感监控解决什么核心问题? 1. 灰度小流量下的错误监控(服务器级,功能级). 其他小流量场景同样适用. 2. 每次上线回归遗漏掉的核心流程.[量少] (回归自动化测试不是想象中的那么容易实现) 老的监控体系有什么缺点? 1. 面对服务器粒度小流量,或者服务器粒度灰度流量需要专...

2019-03-29 11:46:00

阅读数 98

评论数 0

抽奖系统设计

抽奖系统: 实体设计 1.活动奖池 2.奖品等级.(权重) 3.权益 (含金额) 4. 分布(奖品等级,权益均可分布) 5.人群. 6.限制: 人群限制(黑白名单,联合限制) 4. 一键拷贝功能,用于测试. 分布一键提早. 熔断机制: 1. 基于权益熔断 2. 基于整体奖池的金额...

2019-03-10 16:22:23

阅读数 255

评论数 0

安全 + 设计的核心考量: (物联网安全设计)

安全设计的核心考量: 1.在协议被破解的前提下思考, 数据参数如何不可遍历,数据不能不变. 场景:       1. im系统给非组织内成员,非好友电话 , 默聊. 用次数限制. (基础系统) 做的更好点. 给发起者的每个被呼叫人分配一个动态callId. 关联到appDeveloperId,...

2019-01-24 10:47:13

阅读数 105

评论数 0

数据开放平台redshift Amazon

数据集市.1. 行权限.        存储和计算隔离,在计算时进行行权限限制. 这样就不需要将数据复制一份.2. sql即接口. 提供一个平台,开发商可以配置一个接口,这个接口对应一个sql.     平台对sql进行行,脱敏限制.企业的数据需要开放给企业自己.这样他们可以下载,可以自己分析. ...

2018-06-25 21:28:29

阅读数 216

评论数 0

服务治理三个层次(在钉钉的成长)

1. 流式监控大盘+报警    需要会话上下文数据. 所以需要服务端先汇聚存储数据2. 定位分析     智能硬件很多是端和端的交互,需要把端上日志+现场环境信息上传.     需要一个日志压缩上传,和hbase系统. 直接存放大文本.3. 基于现有会话信息进行日级别.数据分析每日统计分析,每次优...

2018-06-21 16:20:13

阅读数 130

评论数 0

负载均衡技术-从远古到现代

1. 远古时代 lvs2. 略微现代 dns ,域名解析. -- 智能dns解析,就近原则3. 内网时代. 阿里的vipServer.   性能层面:   如果过LB的请求量就大到把LB给打挂了怎么办?互联网的流量,尤其是中国互联网的流量,我们要有足够的自信啊,而且参与过春节买票的,春晚修一修抢红...

2018-05-14 12:20:08

阅读数 100

评论数 0

奇思妙想之 优雅上线之 类级别. 代码即配置.

1. 利用java的热替换机制,做到类级别的优雅停机. 两个类同时存在. 新流量到新类.确保老类的老流量没有后,再删除.    Java 类的热替换 —— 概念、设计与实现    使用自己的ClassLoader实现热替2. 然后利用流量保存和重放进行对应代码的测试. 原代码的流量有哪些.这些流量...

2018-05-14 11:23:51

阅读数 157

评论数 0

稳定性- 监控,报警,定位 架构师该做什么. 偏数据分析视角,智能定位. 2/5/15

0. 埋点数据 1. 梳理出统计数据 2. 从统计维度来定位问题. 3. caseByCase定位排查 我的其他文章:      https://www.cnblogs.com/fei33423/p/7169590.html     稳定性建设的方法论 架构师应该做什么? 偏传统视角...

2018-05-11 14:28:30

阅读数 107

评论数 0

一次http core异常排查记录

1.https://stackoverflow.com/questions/35350376/java-lang-illegalstateexception-request-cannot-be-executed-i-o-reactor-status?utm_medium=organic&a...

2018-05-02 22:19:51

阅读数 71

评论数 0

架构师配置稳定性监控中遇到的坑

稳定性三大指标.   1.请求量 2.耗时 3.异常.日志规范:    入口日志通过filter打印报警配置基本规范:请求量和耗时的同比异常量的绝对值环比也要监控.核心接口大盘,人工观察总量肯定多的,监控宕机类问题.细分到服务器级别. 异步后接口级无用,需要监控error报警坑:入口日志中异常通过...

2018-04-24 21:43:41

阅读数 72

评论数 0

IaaS,PaaS,SaaS 的区别

最近做了几个项目,平台化越来越严重,更甚至端上直接和平台交互,可能前端只是皮肤和布局是自己的,甚至连皮肤都是大一统的.然后联想到了saas的概念. 服务端调用平台化其实也是一种saas,但还不够彻底.自行车统一收银台,为了避免品牌暴露,界面自己做,也算是saas的一种,只要做好请求的sign签名即...

2018-04-18 18:00:29

阅读数 158

评论数 0

序列化,反序列化 实现的本质

序列化: 顾名思义,把结构化的bean转换为串行的字节流.           很多时候会把一些信息丢失掉. 例如json的话 1.类型信息  java原生的话 static和transient的信息.          方法: 依赖于语言本身的基础,            1. 例如java b...

2018-04-12 12:15:43

阅读数 205

评论数 0

一次重构演示. 核心点: 1. 细节业务流程 2.对象

打印日志和耗时,是任何普通程序员都会遇到的场景.1. 最普通的代码 long start=getTime();   xxx.invoke();long end=getTime();2. 抽象下,你想干嘛.打印日志和耗时. 1. 取个工具对象 RequestLog.把 start和end属性都放置到...

2018-04-10 19:27:54

阅读数 56

评论数 0

日志服务,对日志结构化改造traceId,调用链路拓扑图。

1.  mdc 串联所有业务日志2. 按照规范打印uid【鉴权层】,日志层级(入口层,边界io层,内部业务日志)【便于筛选入口日志,找到对应的TraceId】,日志类型(相当于不同的表,pv日志,事件流类型,业务日志1,业务日志规范2)3. 把日志系统改造成留 生命周期事件流系统,需要业务方打印实...

2018-04-09 11:34:15

阅读数 2650

评论数 0

lvs 未解之谜-如何知道连接状态

lvs dr 模式,三次握手建连,realServer 的 ack 直接返回给 client. lvs 中如何维护这个连接的状态? ipvsadm -Lcn 1. client 建连的第一个 sync 包到达 director, 然后放入到 hashTable, 然后转发给rea...

2018-01-19 19:02:00

阅读数 354

评论数 0

如何在中间件bug排查中画多线程竞争流程图

笔者很热衷于解决Bug,同时比较擅长(网络/协议)部分,所以经常被唤去解决一些网络IO方面的Bug。现在就挑一个案例出来,写出分析思路,以飨读者,希望读者在以后的工作中能够少踩点坑。前言此Bug是Druid低版本的Bug,此Bug至少在1.0.12版本就已经修复。Druid的Bug现场在紧张的新项...

2018-01-19 11:19:42

阅读数 169

评论数 0

最佳实践 延迟队列干掉定时任务. 特别是跨表查询状态的定时任务

通过案例来讲两个事情    1. 用流式干掉定时任务    2. 如何选择合适的流.大流,小流 案例1    背景:         单车中都有报修的逻辑.  原则:     产品逻辑上尽量避免用退款来解决问题.      把问题解决在前面. 故对于大部分的正常保修,要保证用...

2018-01-09 19:30:04

阅读数 646

评论数 0

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