摘要: 如果有人说分布式系统不难,很可能是他还不知道自己不知道。分布式系统是十分复杂的,实现一个分布式系统要解决的问题很多,因此对分布式系统要心存敬畏。。 个人经验总结 分布式系统的类型 离线分布式系统,一般与线上业务无关,如批处理,大数据分析平台等。 软实时分布式系统,宕机几分钟或几个小时不影响线上业务, 阅读全文
posted @ 2022-11-27 10:19 March On 阅读(166) 评论(0) 推荐(0) 编辑
摘要: done 如何通俗易懂地解释卷积: https://www.zhihu.com/question/22298352/answer/637156871 如何通俗易懂地理解卷积神经网路: http://www.hankcs.com/ml/understanding-the-convolution-in- 阅读全文
posted @ 2018-12-07 15:55 March On 阅读(436) 评论(0) 推荐(1) 编辑
摘要: 1、数据结构_总结 2、数据结构_树与二叉树总结 由表达式序列构建表达式树 3、数据结构_图总结 4、数据结构_排序总结 注:1内链2、3、4。 2、刷题算法总结 阅读全文
posted @ 2017-05-29 12:20 March On 阅读(592) 评论(0) 推荐(0) 编辑
摘要: (PS:多为《深入理解Java虚拟机——JVM高级特性与最佳实践》一书的阅读笔记,权记于此以备忘) JVM主要包括 类加载子系统、运行时数据区、执行引擎(JIT Comile、Garbage Collector) 、本地方法接口/库 三部分。 纲要(与上述JVM的三部分大致对应): 类加载(加载、连 阅读全文
posted @ 2017-01-05 17:45 March On 阅读(688) 评论(0) 推荐(0) 编辑
摘要: 一、参考资料 1、:List、Set、Map的用法和区别 2、:Java集合系列目录 01. Java 集合系列01之 总体框架 02. Java 集合系列02之 Collection架构 03. Java 集合系列03之 ArrayList详细介绍(源码解析)和使用示例 04. Java 集合系列 阅读全文
posted @ 2016-03-04 14:39 March On 阅读(498) 评论(0) 推荐(0) 编辑
摘要: 系统的性能主要看吞吐量和响应时间(时延),且是针对成功的请求而言的(请求失败了还谈其吞吐量或时延有何意义) 系统的性能如果只看吞吐量,不看响应时间是没有意义的。比如系统每秒可以顶10万请求,但是响应时间已经到了5秒钟,这样的系统已经不可用了,这样的吞吐量也是没有意义的。 吞吐量并不是越高越好,因为随 阅读全文
posted @ 2024-02-20 14:56 March On 阅读(3) 评论(0) 推荐(0) 编辑
摘要: 本文为文章《两地三中心数据中心和同城双活数据中心的区别?》的阅后简单备忘总结。 虽实际中可能不会从事与该话题直接相关的技术工作,但其背后的的技术原理是相同的。 以下为总结 城市级别的系统容灾建设方案,包括 主从副本、同城灾备、同城双活、两地三中心(伪异地双活)、异地双活、异地多活 等。 所谓城市级别 阅读全文
posted @ 2024-02-19 17:31 March On 阅读(77) 评论(0) 推荐(0) 编辑
摘要: 空格我们都很熟悉,但很多人不知的是,空格实际上有很多种。 它们有的在ascll编码范围内有的则不在,故有的用一字节表示有的则用多个字节表示。 因此,如果按字节处理字符串则要特别字符串是否有这种空格,否则很容易出错。比如会理所当然地认为空格占一个字节。 以下为正文,转自《你不知道的空格》 本文对了解的 阅读全文
posted @ 2023-09-26 11:31 March On 阅读(115) 评论(0) 推荐(0) 编辑
摘要: 本文以 SQL 查询为基础,在关系模型的执行方案下讨论了分布式/并行 OLAP 任务执行的基本模型和经典方案,并且涵盖了一些最新研究(如动态调整技术)的介绍。主要策略:Data Locality、Working Stealing、Delay Stealing、慢任务异地重试等。 万变不离其宗,这些策 阅读全文
posted @ 2023-05-10 11:54 March On 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 总而言之, SQL解析:就是将SQL解析成关系代数的抽象表示,该表示是一棵多叉树形结构,每个节点表示一种基本操作,称为算子。关系代数里的算子有Scan、Filter、Project、Join等,任何SQL语句都可以解析为这些算子的树形依赖关联。 SQL优化:调整树形的节点位置得到的整棵树的处理结果一 阅读全文
posted @ 2023-05-09 21:17 March On 阅读(47) 评论(0) 推荐(0) 编辑
摘要: 刚转金融行业,对支付、清算、结算等概念和内涵比较迷惑,即使网上看了不少资料也一知半解。直到看到了这文章才解惑,推荐阅读! 以下为正文 (上篇) (原文:https://zhuanlan.zhihu.com/p/36486509) 从事或者对支付市场感兴趣的朋友应该经常会接触到支付、清算、结算,以及收 阅读全文
posted @ 2023-04-13 21:22 March On 阅读(1149) 评论(0) 推荐(0) 编辑
摘要: 微服务 是什么 单体应用的缺点:不同业务的代码在同一个项目内,合作上——代码改动和提交互相影响、依赖的版本冲突,程序效率上——程序包大、启动慢,部署运维上——某个业务的代码变更导致的部署更新会影响其他业务,等。鉴于这些缺点,如今微服务越来越流行。 微服务是一种开发软件的架构和组织方法,其中软件由通过 阅读全文
posted @ 2023-03-01 14:34 March On 阅读(419) 评论(0) 推荐(0) 编辑
摘要: 总结: 监控流程:状态监控、数据收集/采样、数据传输、数据存储、数据处理、数据展示、数据应用(告警、故障定位等) 系统监控分类: 1 日志类:使用ELK(Elasticsearch、Logstash、Kibana)+Kafka/Redis/RabbitMQ 来搭建日志系统。程序内部通过 Spring 阅读全文
posted @ 2022-12-20 11:29 March On 阅读(273) 评论(0) 推荐(0) 编辑
摘要: 前后端分离开发模式下,后端工作的对外表现就是一系列的API接口。如何设计一个优雅的API接口,以满足规范性、安全性、稳定性、易排查等需求? 几年工作下来也有了一些心得,但考虑仍不够全面,网上学习了下整体总结如下。 有【定义符合Restful规范、参数校验、统一返回值、敏感数据加密或脱敏、幂等执行、分 阅读全文
posted @ 2022-12-16 16:28 March On 阅读(283) 评论(0) 推荐(0) 编辑
摘要: 总结 是什么: 字节码增强技术用于对静态字节码文件进行修改或动态修改运行中的程序。使用场景有【动态代理、AOP、ORM框架】、【热部署、Mock测试、性能诊断工具】等,例如动态代理、AOP等实质上是利用各种手段生成符合规范的字节码文件。掌握字节码增强后可以高效地定位并快速修复一些棘手的问题(如线上性 阅读全文
posted @ 2022-12-11 21:39 March On 阅读(494) 评论(0) 推荐(0) 编辑
摘要: 解释执行 https://www.cnblogs.com/z-sm/p/6239377.html Java代码是解释执行的,先编译成字节码,这些字节码在JVM实例上被一行行解释执行。有两种解释执行的实现方式: 基于内存栈——在软件层面基于内存栈解释执行,传统的字节码解释器。 基于CPU寄存器——在硬 阅读全文
posted @ 2022-11-30 12:03 March On 阅读(153) 评论(0) 推荐(0) 编辑
摘要: 以淘宝作为例子,介绍从一百个到千万级并发情况下服务端的架构的演进过程,同时列举出每个演进阶段会遇到的相关技术,让大家对架构的演进有一个整体的认知。推荐阅读 转自 https://segmentfault.com/a/1190000018626163 ,以下为正文 1. 概述 本文以淘宝作为例子,介绍 阅读全文
posted @ 2022-11-21 22:15 March On 阅读(61) 评论(0) 推荐(0) 编辑
摘要: 本文在比较宏观的层面上全面地介绍了高并发架构的目标、指标、架构演进、实现要点等内容,可通过此文对高并发内容、对后台系统架构有提纲掣领的认识。 高并发/高性能的主要技术点有:应用服务器与数据服务器分离、扩展性(多实例部署)、主从架构读写分离、分库分表、负载均衡(Nginx、F5、DNS,依次为里到外的 阅读全文
posted @ 2022-11-21 18:39 March On 阅读(730) 评论(0) 推荐(0) 编辑
摘要: 特点: 支持xls、xlsx格式; 导出时支持自定义表格标题和表格数据,支持一个文档里多个Sheet; 依赖: <!--excel util--> <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> 阅读全文
posted @ 2022-07-15 19:20 March On 阅读(222) 评论(0) 推荐(0) 编辑
摘要: 是什么 Lease(意为约定、承诺)机制是分布式系统中的一个非常重要的机制,用于确保数据或状态的一致性,它应用非常广泛,是Paxos等一致性算法的基础之一。 (虽可借助Paxos、Raft等算法来实现数据一致性,但Lease机制是这些算法的原理之一,是更细粒度的“牛刀”)。 核心思想 承诺方向被承诺 阅读全文
posted @ 2022-06-29 17:31 March On 阅读(302) 评论(0) 推荐(0) 编辑
摘要: 总结: 消息投递有【明确成功、明确失败、超时】三种。对于超时,重试则可能产生数据重复、不重试则可能导致数据丢失。 消息投递语义,从接收方接收消息情况来看有三种: 至少一次:超时重试,可能导致重复。 至多一次:投递者投递出去后就返回,不管接收成功与否。可能导致消息遗漏。 恰好一次:超时重试 + 幂等去 阅读全文
posted @ 2022-06-27 19:48 March On 阅读(156) 评论(0) 推荐(0) 编辑
摘要: 单机系统或分布式系统中数据可靠性都是通过数据冗余存储来实现的(两者本质上一样),其中多副本方案、纠删码方案是最常见的两种冗余技术(本质上前者是后者的特例)。 本文通俗易懂地介绍纠删码的原理(Erasure-Code,EC算法)、实现。详见文章 “EC算法、EC实现、EC优化”。 关键词:数据可靠性、 阅读全文
posted @ 2022-05-10 16:43 March On 阅读(3709) 评论(0) 推荐(0) 编辑
摘要: 软件设计模式(Design pattern),又称设计模式,是一套被反复使用、多数人知晓的、经过分类编目的、代码设计经验的总结。使用设计模式是为了可重用代码、让代码更容易被他人理解、保证代码可靠性、程序的重用性。 24种设计模式及分类(总结及各模式是具体介绍可参阅这篇文章): 其中,软件设计原则的S 阅读全文
posted @ 2022-04-27 17:40 March On 阅读(33) 评论(0) 推荐(0) 编辑
摘要: 看到一篇很好的文章,关于学习事务(工作、文理科学习等)的方法论——脉络把握或者说是把握提纲。实际上笔者从小到大在学习上不感到吃力用的就是该文里说的方法。 强烈推荐阅读并实践之。 以下是原文,from 《人脑缓存太低,所以你家孩子绝不能死记硬背,因为肯定记不住》-远方青木 怎么样去学习才能记住大量知识 阅读全文
posted @ 2022-01-26 17:11 March On 阅读(213) 评论(0) 推荐(0) 编辑
top last
Welcome user from
(since 2020.6.1)