- Java是一种面向对象语言,虽然Java8开始支持函数式编程和Stream,但是总体来说,还是面向对象的语言。在使用Java进行面向对象开发时,一般会推荐使用基于接口的编程,程序的模块与模块之前不会直接进行实现类的硬编码。而在实际的开发过程中,往往一个接口会有多个实现类,各实现类要么实现的逻辑不同,要么使用的方式不同,还有的就是实现的技术不同。为了使调用方在调用接口的时候,明确的知道自己调用的是接 Java是一种面向对象语言,虽然Java8开始支持函数式编程和Stream,但是总体来说,还是面向对象的语言。在使用Java进行面向对象开发时,一般会推荐使用基于接口的编程,程序的模块与模块之前不会直接进行实现类的硬编码。而在实际的开发过程中,往往一个接口会有多个实现类,各实现类要么实现的逻辑不同,要么使用的方式不同,还有的就是实现的技术不同。为了使调用方在调用接口的时候,明确的知道自己调用的是接
- 我们介绍了Dubbo中的核心角色,如何搭建Dubbo源码环境,对Dubbo源码中的核心模块进行了简单的说明,并简单的分析了Dubbo的示例程序并运行了示例程序。其中,在介绍和运行示例程序时,我们重点介绍了dubbo-demo-annotation示例模块,小伙伴们可自行分析和运行其他示例模块。在后续的文章中分析源码时,我们也主要是通过debug Dubbo的示例程序的方式进行。 我们介绍了Dubbo中的核心角色,如何搭建Dubbo源码环境,对Dubbo源码中的核心模块进行了简单的说明,并简单的分析了Dubbo的示例程序并运行了示例程序。其中,在介绍和运行示例程序时,我们重点介绍了dubbo-demo-annotation示例模块,小伙伴们可自行分析和运行其他示例模块。在后续的文章中分析源码时,我们也主要是通过debug Dubbo的示例程序的方式进行。
- 当今时代,互联网高速发展,已然从IT时代进入到DT时代。我们系统的架构也由原来的单体应用,转变为分布式、微服务的架构模式。从数据上来看,数据量越来越大,数据的查询性能越来越低。此时,就需要我们不断的进行优化,一种常用的优化手段就是加入缓存,使用缓存之后,就会带来新的问题:分布式环境下如何保证数据库和缓存的双写一致性?今天,我们就一起来剖析这个问题,并给出相应的解决方案。 当今时代,互联网高速发展,已然从IT时代进入到DT时代。我们系统的架构也由原来的单体应用,转变为分布式、微服务的架构模式。从数据上来看,数据量越来越大,数据的查询性能越来越低。此时,就需要我们不断的进行优化,一种常用的优化手段就是加入缓存,使用缓存之后,就会带来新的问题:分布式环境下如何保证数据库和缓存的双写一致性?今天,我们就一起来剖析这个问题,并给出相应的解决方案。
- 在 Python 中,线程是一种轻量级的执行单元,允许我们在程序中同时执行多个任务。线程的创建和结束是多线程编程中的核心概念之一。在本文中,我们将学习如何使用 Python 创建线程,并探讨如何优雅地结束线程。 创建线程Python 中创建线程非常简单,可以使用 threading 模块来实现。下面是一个简单的例子:import threadingimport timedef print_n... 在 Python 中,线程是一种轻量级的执行单元,允许我们在程序中同时执行多个任务。线程的创建和结束是多线程编程中的核心概念之一。在本文中,我们将学习如何使用 Python 创建线程,并探讨如何优雅地结束线程。 创建线程Python 中创建线程非常简单,可以使用 threading 模块来实现。下面是一个简单的例子:import threadingimport timedef print_n...
- 咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java之多线程篇啦,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!环境说... 咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java之多线程篇啦,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!环境说...
- 最近,一直有小伙伴让我整理下关于JVM的知识,经过十几天的收集与整理,初版算是整理出来了。希望对大家有所帮助。 最近,一直有小伙伴让我整理下关于JVM的知识,经过十几天的收集与整理,初版算是整理出来了。希望对大家有所帮助。
- 最近冰河不是又出版了一本《深入理解高并发编程:核心原理与案例实战》一书吗?很多小伙伴对于Java的内存模型还是不太了解,今天,我就用最简短的篇幅结合八种操作和同步规则给大家介绍下到底什么是Java的内存模型。 最近冰河不是又出版了一本《深入理解高并发编程:核心原理与案例实战》一书吗?很多小伙伴对于Java的内存模型还是不太了解,今天,我就用最简短的篇幅结合八种操作和同步规则给大家介绍下到底什么是Java的内存模型。
- 程序员小菜是一家互联网公司的开发人员,主要负责后端Java技术开发,平时的工作中以CRUD为主。从刚毕业来到公司,一转眼3年过去了,小菜突然觉得在这家公司工作没啥意思了,整天做CRUD的工作没啥挑战。于是,小菜童鞋优化了下自己的简历,并在网上投递了自己的简历,不一会,一个电话打过来,对方传来一个软萌妹纸的声音。 程序员小菜是一家互联网公司的开发人员,主要负责后端Java技术开发,平时的工作中以CRUD为主。从刚毕业来到公司,一转眼3年过去了,小菜突然觉得在这家公司工作没啥意思了,整天做CRUD的工作没啥挑战。于是,小菜童鞋优化了下自己的简历,并在网上投递了自己的简历,不一会,一个电话打过来,对方传来一个软萌妹纸的声音。
- 冰河曾经说过:周末和假期假期是超越他人的最好时机,悄悄努力,然后惊艳所有人。 前段时间原本想着续更【精通高并发系列】专题,一直没时间,所以,这个事情也被一直搁浅着。现在,书稿写完了,就有一些时间续更这个专题了。之前,我把【精通高并发系列】专题的文章整理成了一本电子书——《深入理解高并发编程》,全书内容如下所示。 冰河曾经说过:周末和假期假期是超越他人的最好时机,悄悄努力,然后惊艳所有人。 前段时间原本想着续更【精通高并发系列】专题,一直没时间,所以,这个事情也被一直搁浅着。现在,书稿写完了,就有一些时间续更这个专题了。之前,我把【精通高并发系列】专题的文章整理成了一本电子书——《深入理解高并发编程》,全书内容如下所示。
- 并发编程一直是程序员们比较头疼的,如何编写正确的并发程序相比其他程序来说,是一件比较困难的事情,并发编程中出现的 Bug 往往也是特别诡异的。 并发编程一直是程序员们比较头疼的,如何编写正确的并发程序相比其他程序来说,是一件比较困难的事情,并发编程中出现的 Bug 往往也是特别诡异的。
- 最近有不少小伙伴私信我说:看了我在【精通高并发系列】文章中写的深度解析线程池源码部分的文章,但是还是有些不明白线程池的实现原理。问我能不能手写一个简单的线程池,帮助读者深刻理解线程池的原理。 最近有不少小伙伴私信我说:看了我在【精通高并发系列】文章中写的深度解析线程池源码部分的文章,但是还是有些不明白线程池的实现原理。问我能不能手写一个简单的线程池,帮助读者深刻理解线程池的原理。
- 之前在票圈说写一篇,后面整理完脑图后发现一个问题,一篇文章根本说不清楚啊。除了要写一些书中的精华之外,更多的是要结合冰河实际工作中接触的分布式系统的真实架构案例,写一些冰河个人的总结和体会,希望能够为大家带来一些实质性的帮助。 之前在票圈说写一篇,后面整理完脑图后发现一个问题,一篇文章根本说不清楚啊。除了要写一些书中的精华之外,更多的是要结合冰河实际工作中接触的分布式系统的真实架构案例,写一些冰河个人的总结和体会,希望能够为大家带来一些实质性的帮助。
- 对共享变量加锁虽然能够保证线程的安全,但是却增加了开发人员对锁的使用技能,如果锁使用不当,则会导致死锁的问题。而ThreadLocal能够做到在创建变量后,每个线程对变量访问时访问的是线程自己的本地变量。 对共享变量加锁虽然能够保证线程的安全,但是却增加了开发人员对锁的使用技能,如果锁使用不当,则会导致死锁的问题。而ThreadLocal能够做到在创建变量后,每个线程对变量访问时访问的是线程自己的本地变量。
- ThreadPoolExecutor是Java线程池中最核心的类之一,它能够保证线程池按照正常的业务逻辑执行任务,并通过原子方式更新线程池每个阶段的状态。 ThreadPoolExecutor是Java线程池中最核心的类之一,它能够保证线程池按照正常的业务逻辑执行任务,并通过原子方式更新线程池每个阶段的状态。
- 理论上就是用户下单后,减去商品的库存就完事了。但是,如果你的系统流量很大,并发度非常高,比如淘宝的双十一,有一款爆款商品参加了活动,库存只有1000件,有几十万上百万用户抢购,商品售完1000件为止,一件不能多,一件也不能少。你还会觉得简单吗?搞不好就会出现“超卖”的情况,后果就会很严重了。 理论上就是用户下单后,减去商品的库存就完事了。但是,如果你的系统流量很大,并发度非常高,比如淘宝的双十一,有一款爆款商品参加了活动,库存只有1000件,有几十万上百万用户抢购,商品售完1000件为止,一件不能多,一件也不能少。你还会觉得简单吗?搞不好就会出现“超卖”的情况,后果就会很严重了。
上滑加载中
推荐直播
-
API全生命周期管理一站式体验
2024/05/10 周五 16:00-17:00
Allen 华为云高级产品经理
本期邀请专家连线,共同探讨开发者关心的问题: 1、什么是API First,API First的优势有哪些?2、API全生命周期有哪几个阶段,API全生命周期的痛点问题有哪些?3、华为云是如何保证API一致性的?4、企业数字化转型如何做好API全生命周期管理?
即将直播 -
华为云IoT开源专家实践分享:开源让物联网平台更开放、易用
2024/05/14 周二 16:30-18:00
张俭 华为云IoT DTSE技术布道师
开源,意味着开放、共享、互助、共赢。作为万物上云及各行业数字化的物联网底座,华为云IoT积极拥抱开源,借助行业开源的最佳实践,构建可靠、易用的物联网平台,并通过开放南北向SDK,助力开发者快速构建物联网应用。本期直播,华为云IoT开源专家、物联网平台资深“程序猿”张俭,带你了解华为云IoT的开源生态,并手把手教你玩转开源社区!
去报名 -
华为云开发者日·广州站
2024/05/15 周三 14:30-17:30
华为云专家团
华为云开发者日HDC.Cloud Day是面向全球开发者的旗舰活动,汇聚来自千行百业、高校及科研院所的开发人员。致力于打造开发者专属的技术盛宴,全方位服务与赋能开发者围绕华为云生态“知、学、用、创、商”的成长路径。通过前沿的技术分享、场景化的动手体验、优秀的应用创新推介,为开发者提供沉浸式学习与交流平台。开放创新,与开发者共创、共享、共赢未来。
去报名
热门标签