自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(12)
  • 收藏
  • 关注

原创 秀出天际!阿里技术官甩我脸上的Java高并发秒杀系统笔记,太牛了,好想再被甩一次!

前言我们知道,高并发代表着大流量,高并发系统设计的魅力就在于我们能够凭借自己的聪明才智设计巧妙的方案,从而抵抗巨大流量的冲击,带给用户更好的使用体验。这些方案好似能操纵流量,让流量更加平稳得被系统中的服务和组件处理。小案例(抵御洪水):从古至今,长江和黄河流域水患不断,远古时期,大禹曾拓宽河道,清除淤沙让流水更加顺畅;都江堰作为史上最成功的的治水案例之一,用引流将岷江之水分流到多个支流中,以分担水流压力;三门峡和葛洲坝通过建造水库将水引入水库先存储起来,然后再想办法把水库中的水缓缓地排.

2020-10-23 23:59:56 683

原创 记,一次线上商城系统高并发的优化!

对于线上系统调优,它本身是个技术活,不仅需要很强的技术实战能力,很强的问题定位,问题识别,问题排查能力,还需要很丰富的调优能力。本篇文章从实战角度,从问题识别,问题定位,问题分析,提出解决方案,实施解决方案,监控调优后的解决方案和调优后的观察等角度来与大家一起交流分享本次线上高并发调优整个闭环过程。一 项目简要情况概述该项目为基于SSM架构的商城类单体架构项目,其中有一个秒杀重磅模块,如下为当前线上环境的简要架构部署图,大致描述一下:(1)项目为SSM架构(2)服务器类别:1台负载均衡服

2020-10-23 23:57:08 701 1

原创 终于有架构大牛把分布式系统概念讲明白了,竟然用了足足800页

10年来,随着网络技术的发展、计算机应用的深入、分布式系统构建技术的日益成熟,分布式系统逐渐深入到人们的日常活动,并渗透到社会、经济、文化生活的各个方面。现今,分布式系统作为主流的软件系统,已成为人们工作、学习和生活中不可或缺的一部分。本书介绍了分布式系统的概念、基本原理和核心技术,覆盖的内容涉及分布式算法、中间件、系统服务、分布式数据处理等。阅读此书,既可以从系统层面了解分布式系统构建的基本原理,又可以从算法层面获知分布式系统构建的核心技术。全书共分为21章,章节目录如下:由于篇幅.

2020-10-15 22:31:55 442 2

原创 Java开发微服务实现分布式架构应用总结

写在前面突入其来的新肺炎疫情打乱了节日生活的节奏,没有能力参与这场危机的社会救援,只能窝在家里不去给社会添乱了,在此向目前奋战的抗疫前线的每一位工作者致以崇高的敬意,是你们的勇敢和坚毅撑起了我们这个社会的脊梁!作为一名工作有年头了的软件技术工作者,这个时候也没什么可以做到,还是继续我以前的技术学习思路讲解的,希望能给那些跟我一样宅在家里,想学习Java编程技术提高自己的小伙伴们提高一些可以参考借鉴的知识理解和学习素材。本文我想从Java开发技术的角度来简单说一下现在流行的分布式服务架构之微服务实

2020-10-15 22:29:27 1003 1

转载 高级程序员应该理解的Java NIO设计理念和模型

前言前面我简单说了一下Java I/O的内容,还是有很多小伙伴反应有些内容还是理解的不是很清晰,特别是关于Java IO的流以及NIO中的缓冲区,通道和选择器等,它们到底是怎样的关系。在这篇文章中我就对Java的这两个版本的输入输出支持设计说一下我的理解,希望对各位正在学习的小伙伴有所帮助。因为关于技术的具体实现细节可以查看相关的技术文档有具体的说明,但是我们发现小伙伴们在研究技术文档时容易迷失在技术细节里,造成只见树木不见森林,用了好久的技术还说不出个所以然来。所以,我还是继续以我的理解思路来

2020-10-15 22:13:46 237

转载 IO输入输出模型是每个Java开发人员必须理解的重点

前言最近在跟公司新来的几个做Java开发的年轻同事聊天时,发现他们很多人的基础知识并不是很扎实,特别是关于Java对输入/输出处理的支持上,虽然在工作中经常用到,但是都是在凭记忆写代码,基本上没有理解到位,为此我专门抽了半个小时时间给他们系统的串了一下要点,希望他们能够将自己所学的琐碎知识点和技能串连起来,对Java I/O这部分有一个更加深入的理解。到底什么是I/O?说起计算机系统中的输入输出,我们在应用开发中用到的一般都是外部数据源与计算机中央处理单元之间的数据输入和输出。我们编写的大部

2020-10-15 22:12:28 273

原创 肝完这份Linux网络编程笔记,感觉2年开发白干了

随着Internet的快速发展,使用UNIX和Linux作为服务器主机的系统越来越多,而因为这种操作系统的稳定性和安全性,也使得基于UNIX和Linux的应用服务越来越多。掌握基于UNIX和Linux环境的编程技术,已成为相关网络管理人员、网络应用程序开发人员和网络安全保障人员的必备技能。内容提要本书详细介绍了在UNIX/Linux系统下基于TCP/P网络接口的基本编程方法,包括迭代与并发服务器编写方法、进程与线程编程技术、I/O 编程技术、IPv4与IPv6的兼容性、原始接口、数据链路访问技术、广

2020-10-15 22:01:23 161

原创 为什么MySQL 官方不推荐使用 uuid 或者不连续不重复的雪花 id作为MySQL的主键?

在 MySQL 中设计表的时候,MySQL 官方推荐不要使用 uuid 或者不连续不重复的雪花 id(long 形且唯一,单机递增),而是推荐连续自增的主键 id,官方的推荐是 auto_increment。那么为什么不建议采用 uuid,使用 uuid 究竟有什么坏处?本文我们从以下几个部分来分析这个问题,探讨一下内部的原因:MySQL 程序实例 使用 uuid 和自增 id 的索引结构对比 总结MySQL 程序实例要说明这个问题,我们首先来建立三张表,分别是:user_auto.

2020-10-15 21:57:34 601

原创 字节面试官:如何从 100 亿 URL 中找出相同的 URL?

题目描述给定 a、b 两个文件,各存放 50 亿个 URL,每个 URL 各占 64B,内存限制是 4G。请找出 a、b 两个文件共同的 URL。解答思路每个 URL 占 64B,那么 50 亿个 URL占用的空间大小约为 320GB。5, 000, 000, 000 * 64B ≈ 5GB * 64 = 320GB由于内存大小只有 4G,因此,我们不可能一次性把所有 URL 加载到内存中处理。对于这种类型的题目,一般采用分治策略 ,即:把一个文件中的 URL 按照某个特征划分为多个

2020-10-15 21:52:35 255 2

转载 你知道Springboot2.0如何集成actuator健康监控吗?一文给你整明白

1.引入Mavan依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-actuator</artifactId></dependency><dependency><groupId>org.springframework.hateoas</gro...

2020-10-15 21:46:58 107

原创 懊悔!早一点遇到这份1399页Nginx笔记,我绝不会错过阿里offer!

Nginx(engine x) 是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。Nginx是由伊戈尔·赛索耶夫为俄罗斯访问量第二的Rambler.ru站点(俄文:Рамблер)开发的,第一个公开版本0.1.0发布于2004年10月4日。其将源代码以类BSD许可证的形式发布,因它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名。2011年6月1日,nginx 1.0.4发布。Nginx是一款轻量级的Web 服务器/反向代理服务器及电子邮件(I.

2020-10-15 21:43:54 86

原创 华为安全技术专家与Linux内核到底发生了什么?这本小册子是怎么回事?

有这么一个故事,一个程序员去相亲,当女方问他的职业时,他说自己是一个底层架构工程师,女方听到“底层”两个字,很不屑地说:“底层啊,那你什么时候能升到中高层?男方听后不知该如何接话。在程序员的世界里,Linux 内核、底层其实是非常“高端”的内容,普通程序员需要在这个领域里积累多年,才能修炼到从事“底层”工作的层次。Linux内核是当前操作系统领域的绝对霸主,同时也是开源软件中一颗璀璨的明星。国内外众多的公司和行业都采用Linux作为首选的操作系统,学习Linux操作系统的人员也越来越多。Linux 内核

2020-10-15 21:36:44 240

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除