- 1 现在常见的Java工程师/架构师对缓存技术的了解和掌握程度 工作中都会用到一些缓存技术,redis/memcached基础使用,初步的集群知识 我面试过的人里,能掌握到很少的缓存架构的人,屈指可数,个位数,而且都是在大公司有过类似的大型复杂系统架构经验的人 2 缓存架构/技术掌握的不够,对你的发展带来了哪些阻碍? 2.1 工作中 如果你这块技术掌握不够,然... 1 现在常见的Java工程师/架构师对缓存技术的了解和掌握程度 工作中都会用到一些缓存技术,redis/memcached基础使用,初步的集群知识 我面试过的人里,能掌握到很少的缓存架构的人,屈指可数,个位数,而且都是在大公司有过类似的大型复杂系统架构经验的人 2 缓存架构/技术掌握的不够,对你的发展带来了哪些阻碍? 2.1 工作中 如果你这块技术掌握不够,然...
- 1 秒杀场景下的数据一致性问题 某商品库存10,A想买6,B想买5。 1.1 做梦 A先买走6,库存剩4,此时B应该无法购买5,给出数量不足提示 1.2 现实 AB获取到商品都剩10,A买走6,在A更新库存前,B又买走5,此时B更新库存,商品还剩5。 1.3 想当然地解决方案 给共享资源或对共享资源的操作加锁,来保证对资源的访问互斥。利用Reentran... 1 秒杀场景下的数据一致性问题 某商品库存10,A想买6,B想买5。 1.1 做梦 A先买走6,库存剩4,此时B应该无法购买5,给出数量不足提示 1.2 现实 AB获取到商品都剩10,A买走6,在A更新库存前,B又买走5,此时B更新库存,商品还剩5。 1.3 想当然地解决方案 给共享资源或对共享资源的操作加锁,来保证对资源的访问互斥。利用Reentran...
- Kafka是分布式的,基于发布订阅的消息系统。 1 特点 同时为发布和订阅提供高吞吐量 Kafka每秒可生产约25万条消息(50 MB),每秒处理55万条消息(110 MB)持久化 默认就将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序。通过将数据持久化到硬盘以及防止数据丢失。以O(1)时间复杂度提供消息持久化能力,即使对TB级以上数据也能保证常... Kafka是分布式的,基于发布订阅的消息系统。 1 特点 同时为发布和订阅提供高吞吐量 Kafka每秒可生产约25万条消息(50 MB),每秒处理55万条消息(110 MB)持久化 默认就将消息持久化到磁盘,因此可用于批量消费,例如ETL,以及实时应用程序。通过将数据持久化到硬盘以及防止数据丢失。以O(1)时间复杂度提供消息持久化能力,即使对TB级以上数据也能保证常...
- 已经学到的东西 hystrix的核心知识 1、hystrix内部工作原理:8大执行步骤和流程 2、资源隔离:你如果有很多个依赖服务,高可用性,先做资源隔离,任何一个依赖服务的故障不会导致你的服务的资源耗尽,不会崩溃 3、请求缓存:对于一个request context内的多个相同command,使用request cache,提升性能 4、熔断:基于短路器,采集各种... 已经学到的东西 hystrix的核心知识 1、hystrix内部工作原理:8大执行步骤和流程 2、资源隔离:你如果有很多个依赖服务,高可用性,先做资源隔离,任何一个依赖服务的故障不会导致你的服务的资源耗尽,不会崩溃 3、请求缓存:对于一个request context内的多个相同command,使用request cache,提升性能 4、熔断:基于短路器,采集各种...
- 设计新系统容易,但是我们处理的都是老系统和历史诗句。怎么能更平滑的迁移旧数据到新的数据库和系统,特别是在异构的数据库结构情况下,达到数据准确,迁移速度快,减少停机,对业务影响小 迁移是最容易出故障的一个点。 那么如何做数据迁移呢? 1 解决方案 1.1 全量 最直观的一把梭方案,即全量数据的导入/出: 业务系统需要停机DB 迁移,校验一致性(数据、关系、约束等... 设计新系统容易,但是我们处理的都是老系统和历史诗句。怎么能更平滑的迁移旧数据到新的数据库和系统,特别是在异构的数据库结构情况下,达到数据准确,迁移速度快,减少停机,对业务影响小 迁移是最容易出故障的一个点。 那么如何做数据迁移呢? 1 解决方案 1.1 全量 最直观的一把梭方案,即全量数据的导入/出: 业务系统需要停机DB 迁移,校验一致性(数据、关系、约束等...
- 缓存不仅加快了IO,还可减少原始数据的计算工作。 缓存系统一般设计简单,功能单一,所以Redis吞吐量能是MySQL几倍~几十倍,对于互联网读多写少的高并发场景已不可或缺。 虽然简单好用,但是如果姿势不对,就会造成不必要的损失。 不要把Redis当数据库 很多人不仅把 redis 当缓存,更是把Redis当做数据库使用。很多因为Redis中数据消失导致业务逻辑错... 缓存不仅加快了IO,还可减少原始数据的计算工作。 缓存系统一般设计简单,功能单一,所以Redis吞吐量能是MySQL几倍~几十倍,对于互联网读多写少的高并发场景已不可或缺。 虽然简单好用,但是如果姿势不对,就会造成不必要的损失。 不要把Redis当数据库 很多人不仅把 redis 当缓存,更是把Redis当做数据库使用。很多因为Redis中数据消失导致业务逻辑错...
- 1 概述 1.1 zookeeper 简介 中间件,提供协调服务作用于分布式系统,发挥其优势,可以为大数据服务支持 Java, 提供 Java 和 C语言的客户端 API 1.2 什么是分布式系统 很多台计算机组成一个整体,一个整体一致对外并且处理同一请求内部的每台计算机都可以相互通信(REST/RPC)客户端到服务端的一次请求到响应结束会经历多台计算机 1.... 1 概述 1.1 zookeeper 简介 中间件,提供协调服务作用于分布式系统,发挥其优势,可以为大数据服务支持 Java, 提供 Java 和 C语言的客户端 API 1.2 什么是分布式系统 很多台计算机组成一个整体,一个整体一致对外并且处理同一请求内部的每台计算机都可以相互通信(REST/RPC)客户端到服务端的一次请求到响应结束会经历多台计算机 1....
- 简介 Redisson 是一个高级的分布式协调 Redis 客服端,能帮助用户在分布式环境中轻松实现一些 Java 的对象 (Bloom filter, BitSet, Set, SetMultimap, ScoredSortedSet, SortedSet, Map, ConcurrentMap, List, ListMultimap, Queue, Blockin... 简介 Redisson 是一个高级的分布式协调 Redis 客服端,能帮助用户在分布式环境中轻松实现一些 Java 的对象 (Bloom filter, BitSet, Set, SetMultimap, ScoredSortedSet, SortedSet, Map, ConcurrentMap, List, ListMultimap, Queue, Blockin...
- 什么是领域事件?什么时候并且为什么要使用领域事件? •学习如何将领域事件建模成对象,何时应该为领域事件创建唯一的身份标识。 •学习一个轻量级的发布-订阅[Gamma et al]模式。 •学习哪些组件用于发布事件,哪些组件用于订阅事件。 •学习为什么我们需要一个事件存储.如何实现事件存储、如何使用事件存储。 •学习S aaSOvation团队是如何通过不同的方式将领域事... 什么是领域事件?什么时候并且为什么要使用领域事件? •学习如何将领域事件建模成对象,何时应该为领域事件创建唯一的身份标识。 •学习一个轻量级的发布-订阅[Gamma et al]模式。 •学习哪些组件用于发布事件,哪些组件用于订阅事件。 •学习为什么我们需要一个事件存储.如何实现事件存储、如何使用事件存储。 •学习S aaSOvation团队是如何通过不同的方式将领域事...
- Session代表的是客户端与服务器的一次交互过程,这个过程可以是连续也可以是时断时续的。曾经的Sevlet时代(JSP),一旦用户与服务端交互,Tomcat就会为用户创建一个session,同时前端会有一个jsessionid,每次交互都会携带。 服务器只要在接到用户请求时候,就可以拿到jsessionid, 并根据这个ID在内存中找到对应的会话session,当拿到... Session代表的是客户端与服务器的一次交互过程,这个过程可以是连续也可以是时断时续的。曾经的Sevlet时代(JSP),一旦用户与服务端交互,Tomcat就会为用户创建一个session,同时前端会有一个jsessionid,每次交互都会携带。 服务器只要在接到用户请求时候,就可以拿到jsessionid, 并根据这个ID在内存中找到对应的会话session,当拿到...
- zookeeper Leader 发送了 commit 消息,但是所有的 follower 都没有收到这条消息,Leader 就挂了,后续会怎么处理? 看谁成为leader 如果是前一个leader的话视为提交成功 zookeeper Leader 发送了 commit 消息,但是所有的 follower 都没有收到这条消息,Leader 就挂了,后续会怎么处理? 看谁成为leader 如果是前一个leader的话视为提交成功
- 集成Redis 首先在pom.xml中加入需要的redis依赖和缓存依赖 <!-- 引入redis依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-red... 集成Redis 首先在pom.xml中加入需要的redis依赖和缓存依赖 <!-- 引入redis依赖 --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-data-red...
- 上一篇我们已经讲了是什么,为什么的问题,从我们一些简单的实例中分析了分布式的一些优势,以及一些现有的,基于scrapy的分布式的框架。接下来就是分享我工作中使用的框架基本思想 源码 我们先从scrapy的Spider源码来看 def from_crawler(cls, crawler, *args, **kwargs): spider = cls(*args, *... 上一篇我们已经讲了是什么,为什么的问题,从我们一些简单的实例中分析了分布式的一些优势,以及一些现有的,基于scrapy的分布式的框架。接下来就是分享我工作中使用的框架基本思想 源码 我们先从scrapy的Spider源码来看 def from_crawler(cls, crawler, *args, **kwargs): spider = cls(*args, *...
- 写在前面 最近迷上了读书,先定个flag,每年阅读50本书。 读书,那必然要读好书,好书哪里找,豆瓣少不了,但是要不断的翻网页,这个事情感觉不是爬虫程序员能干出来的,作为梦想橡皮擦这样子的大佬,自然也不能做这么基础的翻网页动作,所以,必须写爬虫程序。 今天要爬取的核心为 https://book.douban.com/tag/?view=type&icn... 写在前面 最近迷上了读书,先定个flag,每年阅读50本书。 读书,那必然要读好书,好书哪里找,豆瓣少不了,但是要不断的翻网页,这个事情感觉不是爬虫程序员能干出来的,作为梦想橡皮擦这样子的大佬,自然也不能做这么基础的翻网页动作,所以,必须写爬虫程序。 今天要爬取的核心为 https://book.douban.com/tag/?view=type&icn...
- 本篇主要介绍对于一个爬虫框架的思考和,核心部件的介绍,以及常规的思考方法: 猜想 我们说的爬虫,一般至少要包含几个基本要素: 1.请求发送对象(sender,对于request的封装,防止被封) 2.解析文档对象(将请求的网页当作是html文档还是字符串) ... 本篇主要介绍对于一个爬虫框架的思考和,核心部件的介绍,以及常规的思考方法: 猜想 我们说的爬虫,一般至少要包含几个基本要素: 1.请求发送对象(sender,对于request的封装,防止被封) 2.解析文档对象(将请求的网页当作是html文档还是字符串) ...
上滑加载中
推荐直播
-
Skill 构建 × 智能创作:基于华为云码道的 AI 内容生产提效方案2026/03/25 周三 19:00-20:00
余伟,华为云软件研发工程师/万邵业(万少),华为云HCDE开发者专家
本次直播带来两大实战:华为云码道 Skill-Creator 手把手搭建专属知识库 Skill;如何用码道提效 OpenClaw 小说文本,打造从大纲到成稿的 AI 原创小说全链路。技术干货 + OPC创作思路,一次讲透!
回顾中 -
码道新技能,AI 新生产力——从自动视频生成到开源项目解析2026/04/08 周三 19:00-21:00
童得力-华为云开发者生态运营总监/何文强-无人机企业AI提效负责人
本次华为云码道 Skill 实战活动,聚焦两大 AI 开发场景:通过实战教学,带你打造 AI 编程自动生成视频 Skill,并实现对 GitHub 热门开源项目的智能知识抽取,手把手掌握 Skill 开发全流程,用 AI 提升研发效率与内容生产力。
回顾中 -
华为云码道:零代码股票智能决策平台全功能实战2026/04/18 周六 10:00-12:00
秦拳德-中软国际教育卓越研究院研究员、华为云金牌讲师、云原生技术专家
利用Tushare接口获取实时行情数据,采用Transformer算法进行时序预测与涨跌分析,并集成DeepSeek API提供智能解读。同时,项目深度结合华为云CodeArts(码道)的代码智能体能力,实现代码一键推送至云端代码仓库,建立起高效、可协作的团队开发新范式。开发者可快速上手,从零打造功能完整的个股筛选、智能分析与风险管控产品。
回顾中
热门标签