摘要:
在系统高可用设计中,接口限流是一个非常重要环节,一方面是出于对自身服务器资源的保护,另一方面也是对依赖资源的一种保护措施。比如对于 Web 应用,限制单机只能处理每秒 1000 次的请求,超过的部分直接返回错误给客户端。虽然这种做法带来了不好的用户使用体验,但是它是在极端并发下的短暂行为,因此是可以 阅读全文
摘要:
这个问题来源于犹太人约瑟夫经历过的故事,在罗马人占领乔塔帕特后,约瑟夫和他的朋友与39 个犹太人躲到一个洞中,39个犹太人决定宁愿死也不要被敌人抓到,于是决定了一个自杀方式,41个人排成一个圆圈,由第1个人开始报数,每报数到第3人时,该人就必须自杀,然后再由下一个人重新报数,直到所有人都自杀身亡为止 阅读全文
摘要:
假设现在我们面临这样一个问题:有一个文本串S,和一个模式串P,现在要查找P在S中的位置,怎么查找呢? 如果用暴力匹配的思路,并假设现在文本串S匹配到 i 位置,模式串P匹配到 j 位置,则有: 如果当前字符匹配成功(即S[i] == P[j]),则i++,j++,继续匹配下一个字符; 如果失配(即S 阅读全文
摘要:
天下武功,唯快不破。同样的,kafka在消息队列领域,也是非常快的,这里的快指的是kafka在单位时间搬运的数据量大小,也就是吞吐量。下图是不同消息队列的一个性能测试结果,在同步发送场景下,单机Kafka的吞吐量高达17.3w/s,不愧是高吞吐量消息中间件的行业老大。 那究竟是什么原因让kafka如 阅读全文
摘要:
隐私计算是面向隐私信息全生命周期保护的计算理论和方法,是指在保护数据本身不对外泄露的前提下实现数据分析计算的技术集合,实现数据的可用不可见的目的;在充分保护数据和隐私安全的前提下,实现数据价值的转化和释放。 阅读全文
摘要:
Go语言表现力强、简洁、干净、高效。它的并发机制使得其容易编写出充分利用多核和网络机器的程序,其类型系统使程序构造变得灵活和模块化。Go可以快速编译为机器码,并且具有垃圾收集的便利性和运行时反射的强大功能;是一种快速的、静态类型的编译语言,感觉像是一种动态类型的解释语言。 阅读全文
摘要:
一、什么是数据湖 数据湖是一种不断演进中、可扩展的大数据存储、处理、分析的基础设施;以数据为导向,实现任意来源、任意速度、任意规模、任意类型数据的全量获取、全量存储、多模式处理与全生命周期管理;并通过与各类外部异构数据源的交互集成,支持各类企业级应用。 用阿里的数据架构图来说: ODS(operat 阅读全文
摘要:
一、存储结构 二、分析 2.1 topic注册信息 /brokers/topics/[topic] :存储某个topic的partitions所有分配信息 [zk: localhost:2181(CONNECTED) 1] get /brokers/topics/firstTopic Schema: 阅读全文
摘要:
埋点的作用 开始之前先看一下为什么要收集埋点数据,埋点都可以做什么。埋点主要用于记录用户行为,几乎是应用必不可少的功能。埋点的作用包括但不限于 分析用户转化以及存留例如下载的用户数量,注册的用户数量,一段时间之后的存留用户数量; 分析用户偏好例如通过用户行为的分析,可以对用户的偏好做一定的概括,便于 阅读全文
摘要:
先来看几个比较常见的例子 字处理软件中,需要检查一个英语单词是否拼写正确 在网络爬虫里,一个网址是否被访问过 邮箱垃圾邮件过滤功能 这几个例子有一个共同的特点: 如何判断一个元素是否存在一个集合中? 常规思路 数组 链表 树、平衡二叉树、Trie Map (红黑树) 哈希表 虽然上面描述的这几种数据 阅读全文