摘要:你可能没有看过 RocketMQ 的架构图,没关系,一起来学习一下,RocketMQ 架构图如下: 在 RocketMQ 中,有四个角色: Producer :消息的生产者,每个 MQ 中间件都有。 Consumer :消息的消费者,每个 MQ 中间件都有。 NameServer :RocketMQ 阅读全文
posted @ 2020-04-10 09:13 平头哥的技术博文 阅读 (85) 评论 (0) 编辑
摘要:我们知道 RocketMQ 是一款高性能、高可靠的分布式消息中间件,高性能和高可靠是很难兼得的。因为要保证高可靠,那么数据就必须持久化到磁盘上,将数据持久化到磁盘,那么可能就不能保证高性能了。 RocketMQ 在兼容这两方面做的不错,先从磁盘说起, 现代的磁盘都是高性能的,写速度并不一定比网络的数 阅读全文
posted @ 2020-04-09 09:13 平头哥的技术博文 阅读 (238) 评论 (0) 编辑
摘要:在职场上,我们首先需要过硬的专业知识,它是我们的生存之本。但是人是惰性的,很多时候并不会主动输入,那么大学所学的那些专业知识,其实不足以对抗漫长的职业生活。 想要在职场上走的好,除了专业知识之外,我们还需要具备哪些能力?最近在看吴军老师的《谷歌方法论》,在里面找到了相应的答案。除了专业知识之外,我们 阅读全文
posted @ 2020-04-05 09:49 平头哥的技术博文 阅读 (46) 评论 (0) 编辑
摘要:扫二维码登录现在比较常见,比如微信、支付宝等 PC 端登录,并且好像每款 APP 都支持扫码登录,不搞个扫码登录都不好意思。作为技术人员,不知道您对这背后的实现逻辑是否敢兴趣,反正我是一直都对这背后实现好奇。最近刚好看到一个关于扫码登录原理的视频,于是就整理出来了这篇文章,希望对您有所帮助。 本文共 阅读全文
posted @ 2020-04-01 09:01 平头哥的技术博文 阅读 (1331) 评论 (2) 编辑
摘要:在 JUC 包下,有一个 Semaphore 类,翻译成信号量,Semaphore(信号量)是用来控制同时访问特定资源的线程数量,它通过协调各个线程,以保证合理的使用公共资源。Semaphore 跟锁(synchronized、Lock)有点相似,不同的地方是,锁同一时刻只允许一个线程访问某一资源, 阅读全文
posted @ 2020-03-31 09:31 平头哥的技术博文 阅读 (129) 评论 (0) 编辑
摘要:统计一张表的总数量,是我们开发中常有的业务需求,通常情况下,我们都是使用 SQL 语句来完成。随着业务数据的增加,你会发现这条语句执行的速度越来越慢,为什么它会变慢呢? 为什么会变慢?想要得到答案就需要知道 MySQL 是如何统计总数量的,先说一个前提吧, 的具体实现是由存储引擎实现的,也就是说不同 阅读全文
posted @ 2020-03-27 09:50 平头哥的技术博文 阅读 (262) 评论 (0) 编辑
摘要:不知道你是否会经常产生: 感觉在公司技术上得不到提升,想跳槽的想法 ,但是你会发现一个有趣的规律,换了一家新公司,三五个月之后,你又会有同样的想法,它会进入到一个死循环中。 任何一件事情,做过两三遍之后,都可以用粘贴复制来解决。对于一家公司来说,公司的业务是比较固定,它并不是为你量身定做的。当你的成 阅读全文
posted @ 2020-03-14 10:32 平头哥的技术博文 阅读 (533) 评论 (2) 编辑
摘要:消息中间件使用广泛,常用来削峰填谷、系统解耦、异步处理。异步处理可能是使用的最多的场景了,比如现在的技术博客网站,都采用积分制,用户发表一篇文章后,可以获取想要的积分,为了提升系统的性能,给用户加积分的操作可以异步处理,并不需要放在同步流程中。 我们可以把用户ID,需要增加的积分封装成一条消息投递到 阅读全文
posted @ 2020-03-12 09:32 平头哥的技术博文 阅读 (602) 评论 (3) 编辑
摘要:在现在互联网架构中,几乎每个互联网项目都会引入缓存系统,比如 Redis、Memcached。来保护下游数据库和提升系统并发量。不管使用哪种缓存系统都有可能遇到 缓存穿透 的问题。 缓存穿透是指在缓存系统中没有查询到数据,而不得不将请求打到数据库上查询的情况。 当然缓存系统是不可避免的,少量的缓存穿 阅读全文
posted @ 2020-03-10 09:23 平头哥的技术博文 阅读 (439) 评论 (7) 编辑
摘要:写缓存(Change Buffer) 是一种特殊的数据结构, 用于在对数据变更时,如果数据所在的数据页没有在 buffer pool 中的话,在不影响数据一致性的前提下,InnoDB 引擎会将对数据的操作缓存在 Change Buffer 中 ,这样就省去了从磁盘中读入这个数据页。 将数据页从磁盘读 阅读全文
posted @ 2020-02-27 11:35 平头哥的技术博文 阅读 (203) 评论 (0) 编辑