欢迎您光临本小站。希望您在这里可以找到自己想要的信息。。。

 分类:编程内功

系统幂等设计浅谈

系统幂等设计浅谈
幂等设计在分布式系统设计中占有很重要的地位,是实现数据一致性和事务完整性的重要手段。近期在优化交易系统,系统中很多地方用到了幂等设计,遂对其进行了总结。 幂等定义: 在编程中一个幂等操作的特点是其任意多次执行所产生的影响均与一次执行的影响相同。幂等函数,或幂等方法,...

water 2个月前 (07-28) 527℃ 0评论 2喜欢

分布式系统中的“无状态”和“有状态”详解

分布式系统中的“无状态”和“有状态”详解
「数据一致性」和「高可用」其实本质是一个通过提升复杂度让整体更完善的方式。 本文主要讲一些让系统更简单,更容易维护的东西——「易伸缩」,首当其冲的主题就是「stateless」,也叫「无状态」。 服务的“状态” 无状态的服务 客户端的每次请求必须具备自描...

water 2个月前 (07-28) 501℃ 0评论 0喜欢

Pipeline设计模式,确定不了解一下?

Pipeline设计模式,确定不了解一下?
Pipeline设计模式是我在来新公司才接触到的,也是在项目上广泛使用的一种东西。觉得挺有意思的,所以写一篇文章向大家介绍一下,希望大家喜欢。 需求 前几天小明接到一个需求,要开发一个“简单”的支付处理流程,用来处理用户下单后的一系列处理流程。这个处理流程有很多环节...

water 2个月前 (07-28) 532℃ 0评论 0喜欢

限流熔断技术选型:从 Hystrix 到 Sentinel

限流熔断技术选型:从 Hystrix 到 Sentinel
导读:随着微服务的流行,熔断作为其中一项很重要的技术也广为人知。当微服务的运行质量低于某个临界值时,启动熔断机制,暂停微服务调用一段时间,以保障后端的微服务不会因为持续过负荷而宕机。本文整理自对限流降级开源项目Sentinel项目组成员子衿和宿何的专访。 子矜,阿里巴巴高...

water 2个月前 (07-28) 571℃ 0评论 0喜欢

限流、熔断与降级

限流、熔断与降级
限流、熔断与降级 在我们进行系统设计时,必须要考虑系统的高性能、高并发、高可用。本文分享的是关于高可用的三大利器:熔断、限流、降级,我们使用通俗、易懂的语句将三个概念讲清楚。 限流、熔断与降级,此三者都是流量过大时,通过一定的方式去保护系统的手段,是应对海量服务的三...

water 2个月前 (07-28) 538℃ 0评论 0喜欢

数据仓库DW、ODS、DM概念及其区别

数据仓库DW、ODS、DM概念及其区别
在具体分析数据仓库之前先看下一下数据中心的整体架构以及数据流向 DB 是现有的数据来源,可以为mysql、SQLserver、文件日志等,为数据仓库提供数据来源的一般存在于现有的业务系统之中。ETL的是 Extract-Transform-Load 的缩写,用来描...

water 9个月前 (12-31) 769℃ 0评论 3喜欢

Java架构-代码分层的设计之道

Java架构-代码分层的设计之道
分层思想,是应用系统最常见的一种架构模式,我们会将系统横向切割,根据业务职责划分。MVC 三层架构就是非常典型架构模式,划分的目的是规划软件系统的逻辑结构便于开发维护。MVC:英文即 Model-View-Controller,分成模型层、视图层、控制层。将页面和业务逻辑分离,...

water 10个月前 (11-24) 833℃ 0评论 0喜欢

GeoHash核心原理解析

GeoHash核心原理解析
1. 引言 小麦同窗是个吃货+技术宅,平日里就喜欢拿着手机地图点点按按来查询一些好玩的东西。某一天到北海公园游玩,肚肚饿了,因而乎打开手机地图,搜索北海公园附近的餐馆,并选了其中一家用餐。饱暖思yin欲的麦叔饭后思考地图后台如何根据本身所在位置查询来查询附近餐馆的呢?苦思...

water 10个月前 (11-24) 832℃ 0评论 0喜欢

解决跨域问题的几种方案

解决跨域问题的几种方案
前言 JSONP 请求本质上是利用了 “Ajax 请求会受到同源策略限制,而 script 标签请求不会” 这一点来绕过同源策略。跨域资源共享(CORS) 是一种机制,它使用额外的 HTTP 头来告诉浏览器 让运行在一个 origin (domain) 上的 W...

water 10个月前 (11-18) 681℃ 0评论 0喜欢

优秀的代码都是如何分层的?

优秀的代码都是如何分层的?
1、背景 说起应用分层,大部分人都会认为这个不是很简单嘛 就controller,service, mapper三层。看起来简单,很多人其实并没有把他们职责划分开,在很多代码中,controller做的逻辑比service还多,service往往当成透传了,这其实是很多人...

water 11个月前 (11-04) 752℃ 0评论 2喜欢

重要的产品分析模型:AARRR模型

重要的产品分析模型:AARRR模型
什么是AARRR模型? Acquisition:获取用户 Activation:提高活跃度 Retention:提高留存率 Revenue:获取收入 Refer:自传播 确切的说AARRR并不算是一种数据分析模型,而是一整套数据分析的思路,逻...

water 11个月前 (10-21) 760℃ 0评论 1喜欢

10 大高性能开发宝石

10 大高性能开发宝石
我们循序渐进,从内存、磁盘I/O、网络I/O、CPU、缓存、架构、算法等多层次递进,串联起高性能开发十大必须掌握的核心技术。 - I/O优化:零拷贝技术- I/O优化:多路复用技术- 线程池技术- 无锁编程技术- 进程间通信技术- RPC && 序...

water 12个月前 (10-09) 674℃ 0评论 1喜欢

Swagger介绍及使用

Swagger介绍及使用
相信无论是前端还是后端开发,都或多或少地被接口文档折磨过。前端经常抱怨后端给的接口文档与实际情况不一致。后端又觉得编写及维护接口文档会耗费不少精力,经常来不及更新。其实无论是前端调用后端,还是后端调用后端,都期望有一个好的接口文档。但是这个接口文档对于程序员来说,就跟注释一样,...

water 1年前 (2020-07-17) 830℃ 0评论 0喜欢

LRU与LFU比较

LRU与LFU比较
提到缓存,有两点是必须要考虑的:(1)缓存数据和目标数据的一致性问题。(2)缓存的过期策略(机制)。  其中,缓存的过期策略涉及淘汰算法。常用的淘汰算法有下面几种:(1)FIFO:First In First Out,先进先出(2)LRU:Least Recently U...

water 1年前 (2020-07-01) 1415℃ 0评论 0喜欢

SRE 是什么,不是什么

SRE 是什么,不是什么
SRE,Site Reliability Engineering 的缩写。其中 site 是指 website,可以翻译为网站可靠性工程。这个工种是 Google 在 10 年前创造的,他们刚出了一本讲 SRE 的书,以下简称《SRE》。相应的,做这份工...

water 1年前 (2020-06-10) 842℃ 0评论 0喜欢

数据仓库之ETL实战

数据仓库之ETL实战
ETL,Extraction-Transformation-Loading的缩写,中文名称为数据抽取、转换和加载。 一般随着业务的发展扩张,产线也越来越多,产生的数据也越来越多,这些数据的收集方式、原始数据格式、数据量、存储要求、使用场景等方面有很大的差异。作为数据中心,既要保...

water 1年前 (2020-05-11) 801℃ 0评论 1喜欢

蘑菇街搜索与推荐架构,从 0 到 1 再到 100

蘑菇街搜索与推荐架构,从 0 到 1 再到 100
本文分享蘑菇街在搜索与推荐上踩过的坑,以及在探索路上的经验总结。从 0 到 1 再到 100,希望大家从中得到一些收获。 搜索架构的当前现状 蘑菇街搜索当前架构 蘑菇街当前搜索架构,分为在线和离线两部分。在线部分主要职责是处理在线的搜索请求。离线部分的主要职责...

water 2年前 (2020-02-04) 1163℃ 0评论 1喜欢