微服务
个人渣记录仅为自己搜索用
不盈利,只为分享,转载.
找到的原版url的,尽量会贴原版url.
如有版权侵犯,请留言删除.
展开
-
mysql 保存聊天记录
一个聊天记录一行不太可取. 那么就10个消息startLine ,endLinevarchar字段, 10个1行. 两边的人排序后组合成key作为唯一键 然后另外一个列作为撤销的消息偏移量列表.介绍了表格存储Tablestore推出的Timeline模型.群记录 写扩散,读扩散等其他问题...原创 2021-09-18 01:16:04 · 1714 阅读 · 0 评论 -
微服务化
微服务实战(一):微服务架构的优势与不足 微服务实战(二):使用API Gateway微服务实战(三):深入微服务架构的进程间通信微服务实战(四):服务发现的可行方案以及实践案例微服务实战(六):选择微服务部署策略 微服务实战:从架构到部署 微观SOA:服务设计原则及其实践方式(上篇)原创 2016-12-22 16:39:24 · 600 阅读 · 0 评论 -
好的 分布式系统(微服务) result 设计 rpcResult httpResult 设计
好的 分布式系统(微服务) result 设计 rpcResult httpResult 设计private int code = -1;private String msg;private T data;但这个问题有个严重的问题.1. 分布式系统内部系统很多. 你都不知道这个 code 来自于哪个系统.2. 中间层系统可能将下游系统的 code 封装屏蔽掉了原创 2017-07-17 17:28:22 · 2295 阅读 · 0 评论 -
灰度发布_和 abtest (属于大数据架构部) 可衍生至 一键降级
流量选取适用于灰度发布,对选中的流量再次分组适用于AB测试及其他需要的场景。处理方式:通常有物理隔离和逻辑隔离两种,物理隔离是将不同版本部署在不同集群,这样可以减少对代码的侵入,但是不够灵活,也难以支持大量的灰发或者实验并发;逻辑隔 离就是在代码里通过if else的方式对功能进行隔离,这种方式更为灵活,Apollo推荐的也是这种处理方式。这种灰度设计好挫. 最好的灰度设计是通过dns解原创 2017-02-07 12:07:42 · 5773 阅读 · 0 评论 -
最佳实践 架构师 微服务的前提
1. 日志 : 收集系统 [flume ]2. 日志结构化规范3. 日志业务化规范. 把脉日志查询 内含 orderId,passengerId,driverId 等概念.找到对应的流水.同一个 flag 下 orderId 的收集,最终结构化查询]4. flag 系统5. 进阶之 zipkin 系统 . 新的耗时监控体系. 1. 把脉系统性能分析. 分位和...原创 2018-01-10 20:26:07 · 316 阅读 · 0 评论 -
Rx (Reactive Extensions)介绍
Reactive Extensions (Rx) 原来是由微软提出的一个综合了异步和基于事件驱动编程的库包,使用可观察序列和LINQ-style查询操作。 Rx是一种事件驱动+函数的编程风格,内部机制与Java的队列原理或DIsruptor非常相似,关键是无锁无堵塞,主要区别是对队列中事件的读取方式上,Rx采取LinQ风格。什么是函数响应式编程(Functional Reactive Pr转载 2018-01-17 00:39:59 · 501 阅读 · 0 评论 -
Zipkin的Span模型
zipkin 加上监控的功能+ 通过 tracid 将如虎添翼. 稳定性监控和定位都搞定了.本文将详细介绍Zipkin的Span模型,以及其他“另类”Span模型的设计。 这里多一句嘴,其实专业点的叫法应该是分布式追踪系统——Distributed TracingSystem,跟踪比较适合用于人的场景,比如某人被跟踪了,而追踪更适合用于计算机领域。然并卵?本文将继续使转载 2018-01-17 17:29:44 · 3430 阅读 · 0 评论 -
如何在中间件bug排查中画多线程竞争流程图
笔者很热衷于解决Bug,同时比较擅长(网络/协议)部分,所以经常被唤去解决一些网络IO方面的Bug。现在就挑一个案例出来,写出分析思路,以飨读者,希望读者在以后的工作中能够少踩点坑。前言此Bug是Druid低版本的Bug,此Bug至少在1.0.12版本就已经修复。Druid的Bug现场在紧张的新项目开发的日子里,突然收到线上某系统的大量报警,对应系统的人员发现此系统在某一台机器上dump了大量的e转载 2018-01-19 11:19:42 · 611 阅读 · 0 评论 -
配置lvs核心参数配置
lvs 核心参数配置. 有端口号,负载转发过程中也会改端口号. lvs原理lvs的timeout: ipvsadm --set tcp tcpfin udp 查看timeout: # ipvsadm --list --timeout Timeout (tcp tcpfin udp): 7200 5 60 这就表明我的tcp session的timeout时间是7原创 2018-01-18 22:49:20 · 1193 阅读 · 0 评论