摘要:
最近一段时间 某台服务器上的一个应用总是隔一段时间就自己挂掉 用top看了看 从重新部署应用开始没有多长时间CPU占用上升得很快 排查步骤 1.使用top 定位到占用CPU高的进程PID top 2.通过ps aux | grep PID命令 获取线程信息,并找到占用CPU高的线程 ps -mp p 阅读全文
摘要:
兴趣 阅读全文
摘要:
统计某人的代码提交量,包括增加,删除:git log --author="$(git config --get user.name)" --pretty=tformat: --numstat | gawk '{ add += $1 ; subs += $2 ; loc += $1 - $2 } EN 阅读全文
摘要:
codeReview常见代码问题 路线图 常见代码问题 空值 未捕获潜在的异常 低性能 影响范围过大 单测问题 与原有业务逻辑不兼容 缺乏必要日志 错误码不符合规范 参数检测缺乏或不足 引用错误 名字冲突 细节错误 多重条件 文不符实 跨语言或跨系统交互 可维护性问题 硬编码 重复代码 通用逻辑与定 阅读全文
摘要:
控制层 返回值统一 AOP 也方便前台 AOP 统计执行时间记录日志 参数不要出现Request, Response 返回码定义 不要太细 日志打印 很多时候 生产出现问题都是客户反馈过来, 我们再去排查问题 日志就显得尤为重要 需要重现问题 很多人都是debug一遍 其实是比较费时间的, 尤其是业 阅读全文
摘要:
1.0 事务特性(ACID) Atomicity:原子性,一个事务不可以被拆分 Consistency:一致性,在事务执行前数据库的数据处于正确的状态,而事务执行完成后数据库的数据还是处于正确的状态,即数据完整性约束没有被破坏;比如我们做银行转账的相关业务,A转账给B,要求A转的钱B一定要收到。如果 阅读全文
摘要:
分布式事务—两阶段提交协议 两阶段提交协议(Two-phase Commit,2PC)经常被用来实现分布式事务。一般分为协调器C和若干事务执行者Si两种角色,这里的事务执行者就是具体的数据库,协调器可以和事务执行器在一台机器上。 1) 我们的应用程序(client)发起一个开始请求到TC; 2) T 阅读全文
摘要:
分布式事务 如果系统规模较小,数据表都在一个数据库实例上,上述本地事务方式可以很好地运行, 但是如果系统规模较大,比如用户A账户表和用户B账户表显然不会在同一个数据库实例上,他们往往分布在不同的物理节点上,这时本地事务已经失去用武之地。 分布式事务解决方法 两阶段提交(多次节点间的通信,事务时间较长 阅读全文
摘要:
CAP理论 一个经典的分布式系统理论。CAP理论告诉我们:一个分布式系统不可能同时满足一致性(C:Consistency)、可用性(A:Availability)和分区容错性(P:Partition tolerance)这三个基本需求,最多只能同时满足其中两项。 1、一致性 在分布式环境下,一致性是 阅读全文