21高维思考:通过监控Cae,彻底悟透OpenTracing

你好,这一讲我将带你通过三个监控 Case,让你实现 OpenTracing 的能力更上一台阶。

由于分布式追踪是基于插件扩展实现的,而绝大多数时候,插件很难在企业的应用服务集群中面面俱到,也就是不能实现 100% 的链路串联。所以很多时候在落地 APM 工具后,还是避免不了二次开发。

21丨分布式架构:如何应对高并发的用户请求

互联网应用以及云计算的普及,使得架构设计和软件技术的关注点从如何实现复杂的业务逻辑,转变为如何满足大量用户的高并发访问请求。

一个简单的计算处理过程,如果一旦面对大量的用户访问,整个技术挑战就会变得完全不同,软件开发方法、技术团队组织、软件的过程管理都会完全不同。

21技巧篇:延迟任务处理神器之时间轮HahedWheelTimer

Netty 中有很多场景依赖定时任务实现,比较典型的有客户端连接的超时控制、通信双方连接的心跳检测等场景。在学习 Netty Reactor 线程模型时,我们知道 NioEventLoop 不仅负责处理 I/O 事件,而且兼顾执行任务队列中的任务,其中就包括定时任务。为了实现高性能的定时任务调度,Netty 引入了时间轮算法驱动定时任务的执行。时间轮到底是什么呢?为什么 Netty 一定要用时间轮来处理定时任务呢?JDK 原生的实现方案不能满足要求吗?本节课我将一步步为你深入剖析时间轮的原理以及 Netty 中是如何实现时间轮算法的。

21警惕房地产泡沫的破灭

上一讲我们分析了中国推出房地产税后,将会产生哪些影响。今天我想和大家谈谈房地产泡沫问题,我们该引起哪些注意。, , 房地产泡沫的破裂,投资者遭受损失, , 1997 年 9 月,香港刚刚回归中国。我们清华大学一行 8 人到香港做调研,看到了香港经济的空心化问题,就提出香港未来要发展高科技产业。我们拜访了香港的高校、特区政府和很多大企业,当时很多人都不以为然,他们认为,香港人不需要干别的,我们炒炒楼、炒炒股,就可以过得很好了。香港不需要发展高科技产业。, , 话说得也有点道理,当香港楼市火的时候,如果谁排队拿到一张售楼票,一转手就能赚到一百万元港币。下面我们一起分析分析,香港人是怎么炒楼的。, , 在香港有一个很知名的连锁快餐叫大快活,它拥有多家分店,生意特别火。我到香港时,都去吃过这家店。老板想,自己经营快餐这么辛苦,香港房地产这么火,我为何不去赚一把钱呢?于是他就开始买楼,一口气买下香港的 10 套房,半年内卖出 8 套,让他赚到了上千万元港币。, , 尝到甜头后,他在香港房价炒到高点时,买下一个山庄的 70 套房。可就在他买楼后不久,香港的房地产泡沫破了,房价大跳水。房价就从每套 1200 万元港币,一口气跌到每套 400 万元港币,房价直线下跌。令他遭遇了灭顶之灾,损失极其惨重。, , 最后老板想明白了,靠买房赚钱对他来说实在是不快活,于是他卖掉房产,重新回来经营自己的快餐“大快活”。, , 1997 年 9 月我在香港时,看到报纸上登着这样的标题“中产阶级真悲惨,买房置业变成负资产”。, , 什么是负资产?比如,一套房总价 1200 万元港币,我交了 500 万元港币的首付,又找银行借了 700 万元。买了一套房。当房地产泡沫破裂后,这套房跌到 400 万元,我从银行借了 700 万元,银行把房子拍卖时才卖出 400 万元,最终我还欠银行 300 万元。这 300 万元港币就是我的负资产。那为什么银行收走了我的房?因为我没钱还银行的月供了。, , 马克思曾经说到无产阶级最悲惨,我想说,其实负资产人更悲惨。因为它的资产是负的。香港 20 万人中产阶层就面临着这样的痛苦。也许这个数字有些夸张,但是负资产现象是真实存在的。, , 香港人呼吁政府救助他们这些负资产的人们。特区政府商量后决定不救。他们的理由是:买房和炒股是一样的,都是投资行为。如果买房人赔了,政府去救;那炒股人赔了,政府救还是不救呢?当然不救!结果特区政府真的没救。最终银行宣告那些负资产的个人信用破产。, , 所以我们说,如果房价下跌严重,楼市泡沫破了,还不上银行贷款,就会变成负资产。当香港房地产泡沫破裂后,损失惨重的是买房置业的中产阶级,因为他们都是贷款买的房。这里告诫国内买房投资者,要引以为戒。买房要考虑还款能力。, , 百姓为房地产泡沫买单, , 说到这里让我想起一个韩国的故事。1997 年韩国房价下跌1997 年亚洲发生了金融风暴,亚洲四小龙和四小虎都倒下了。韩国也跟着倒下了。2008年,在清华大学新开的 MBA 班上,来了一位韩国的学生。我问这个学生:1997 年你们国家遭受金融风暴时,你最深刻的感受是什么?他说,让我感受最惨痛的是我不该贷款买房。, , 我问:为什么。他说,因为当时韩国的贷款利率是 3%,我就买了房。等 1997 年金融危机爆发,韩币贬值,通货膨胀起来了,贷款利率已经升到了 13%。贷款买房的人根本还不上了,还有很多人失业,更还不上银行贷款了。我身边很多人把房产交给了银行,因为还不上银行的贷款了。我的房为什么没交银行呢?是因为我爸爸在国外工作,他每个月给我寄回 1000 美元来,我才能够还上银行贷款,否则我的房子也早就交给银行了。, , 我又问,你买的房子现在如何?房价跌了吗?他说,没有。这 10 年来,韩国的房地产几乎没有跌过,到现在还是一路上涨。这是一个非常典型的例子,大家都说房价涨,但你自己却很可能“赔”了,你可能因为失业没有足够的收入还上银行的本金,也可能因为利率提高了无法支付银行的利息。但这是两件事。, , 房价涨时你要买房,一定要问自己,我有承受力吗?我找银行贷款,贷多少合适?我能不能还上呢?当经济遇到挫折时,很多人可能失业了,当利率上升时,我还有还款能力吗?我买房后,能不能扛过哪怕一两年的经济寒潮期呢?这是你个人买房时要考虑的。, , 政府如何防范房地产泡沫破灭, , 那么,作为一国政府怎样防范房地产泡沫破灭呢?, , 我国政府的做法是,提高第二套房的首付比例。从原来的 30% 提高到 60%,北京已经提高到 80% 的首付。银行只贷款 20%。这就是说,没有经济能力的人就别买二套房了。政府这样做的目的,就是避免房地产泡沫的破裂。, , 既然你已经有一套房住,再买房就属于投资行为,政府提高了购房门槛。因为这个领域已经过热,政府不鼓励热上加热,否则房地产泡沫破裂,大家都会成为受害者。, , 2007 年,美国爆发了次贷危机,就是因为零首付导致的。因为买房不需要交首付,只要房价跌一点就会出事。买房人还不上银行的钱只能把房子交银行。2007 年美国房价跌去 30%,全世界的金融业都跟着大受牵连。美国政府不得不出来收拾烂摊子,他们花了上千亿美元,注入市场来救市,就怕房地产市场出现雪崩,结果还是爆发了 2008 年席卷全球的金融危机。, , 中国政府担心的就是这事。不管国人对楼市宏观调控有多少个不愿意,政府都实施了严厉措施,来调控楼市,不让银行发放过多的贷款,因为这事关全局的利益。如果房地产泡沫破了,即使老百姓买单,最后还是政府出来收拾烂摊子,政府是要承担责任的。, , 我们再来看看 90 年代日本房地产泡沫的破裂,给了我们什么启示。上个世纪 80 年代日美爆发了贸易战,1985 年签署了广场协定,日本经济增速开始放缓,由于日元升值,大量的国外资本流进日本,但投资日本的实业不赚钱,于是这些资金就冲进房地产,日本的国民也开始炒房,把日本房价和地价炒的是高不可攀。到了 1991 年,日本楼市泡沫热浪翻滚,最后泡沫破了,导致日本经济陷入低谷,失去了 20 年的经济发展。, , 中国现在和 1985 年的日本有很多的相似之处,中美正在打贸易战,国内的房价一直处在高位,所以我们应该警惕,千万别让房产泡沫破了。我国买房首付的比例 30%,这就给房地产下降预留了 30% 的空间。也就是说,如果我国房价下跌 30% 之内,房价还是有支撑的。亏掉的是每个人的首付,银行的贷款没受损失。, , 总结, , 作为投资者,买房该注意哪些风险呢?和你分享一下我的观点。, , 如果你是第一次买房,何时买都是对的,因为这是刚需。, , 如果你是想买房投资,就需要考虑风险了,要看自己的经济能力和还款能力。, , 在买房和租房时,你要比较的是机会成本。 钱多的人可以买房,钱少的人可以租房。, , 在买房和卖房投资中,要考虑房子的升值空间, 如果这房子没了升值空间的你就可以卖掉。, , 我判断一线城市未来的商业地产和写字楼还有升值空间。, , 最后我们再来总结一下楼市中需要注意的几点。, , 经济学最基本的概念:稀缺、选择和机会成本。, , 经济中有一只看不见的手:价格机制,房价和地价都由市场供求来决定,在你买房、卖房和租房时,都要考虑这一点。, , 政府为什么对楼市宏观调控,因为楼市泡沫破了需要买单。, , 买房要懂得选稀缺房源,还要考虑买房的机会成本。, , 中国的房地产税一定会推出,推出后房价短期内会下跌。但是给大家留出了选择的时间。, , 中国要汲取房地产泡沫破裂的教训,避免出现负资产现象。, , 关于楼市的内容我们就讲这么多了!在后续的内容中,我将介绍股市的机遇和风险,分析中国股市未来的走势。, , -– ### 精选评论

21如何利用JavaScript实现经典数据结构?

前面几讲我们从编程思维的角度分析了软件设计哲学。从这一讲开始,我们将深入数据结构这个话题。

数据结构是计算机中组织和存储数据的特定方式,它的目的是方便且高效地对数据进行访问和修改。数据结构体现了数据之间的关系,以及操作数据的一系列方法。数据又是程序的基本单元,因此无论哪种语言、哪种领域,都离不开数据结构;另一方面,数据结构是算法的基础,其本身也包含了算法的部分内容。也就是说,想要掌握算法,有一个坚固的数据结构基础是必要条件。

21深挖MyBati与Spring集成底层原理

在实际开发过程中,一般我们不会只使用单个的开源框架,而是会使用多种开源框架和开源工具相互配合来实现需求。在 Java 世界中,最出名的开源框架就要数 Spring 了。Spring 是 2002 年出现的一个轻量级 Java 框架,它最开始就是为了替换掉 EJB 这种复杂的企业开发框架。时至 2021 年,几乎所有的 Java 后端项目都会使用到 Spring,Spring 已经成为业界标准,我们在实践中常用的 SSM 三层架构其实就是 Spring、Spring MVC和MyBatis这三个核心框架的简称。

21性能优化的过程方法与求职面经总结


title: “21性能优化的过程方法与求职面经总结” draft: false date: 2024-06-14 keywords: [21性能优化的过程方法与求职面经总结, Java 性能优化实战21讲, 极客时间] categories: [Java 性能优化实战21讲] tags: [极客时间] comment: true toc: true autoCollapseToc: true

经过前面的学习,你可能会发现,即使熟悉了开发中的各项技术和优化技巧,但在真正的性能优化场景下,自己依旧很难开展优化任务。其实这是因为你脑海里的知识杂乱无章,仅能靠回忆仅能完成片面的优化。

21优先级调度:你必须掌握的Pod抢占式资源调度

你好,我是正范。

随着我们在 Kubernetes 集群中部署越来越多的业务,势必要考虑集群的资源利用率问题。尤其是当集群资源比较紧张的时候,如果此时还要部署一些比较重要的关键业务,那么该如何去提前“抢占”集群资源,从而使得关键业务在集群中跑起来呢?

21知识串讲:如何取得性能和可扩展性的平衡?

这一讲我们来总结一下模块三。经过这个模块的学习,相信你已经对分布式数据库中分布式系统部分常见的技术有了深刻的理解。这是一节知识串讲的课,目的是帮助你将所学的内容串接起来;同时,我会通过若干的案例带你看看这些知识是如何应用到分布式数据库之中的。