51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
信创认证
公众号矩阵
移动端
视频课
免费课
排行榜
短视频
直播课
软考学堂
全部课程
软考
信创认证
华为认证
厂商认证
IT技术
PMP项目管理
免费题库
在线学习
文章
资源
问答
课堂
专栏
直播
51CTO
鸿蒙开发者社区
51CTO技术栈
51CTO官微
51CTO学堂
51CTO博客
CTO训练营
鸿蒙开发者社区订阅号
51CTO软考
51CTO学堂APP
51CTO学堂企业版APP
鸿蒙开发者社区视频号
51CTO软考题库
鸿蒙开发者社区
首页
帖子
问答
资源
课堂
直播
发现
登录/注册
51CTO
中国优质的IT技术网站
51CTO博客
专业IT技术创作平台
51CTO学堂
IT职业在线教育平台
活动
短视频
专栏
极客Show
鸿蒙技术特刊
我的关注
全部帖子
操作系统
OpenHarmony
HarmonyOS
其他
应用开发
卡片开发
三方库
IDE
其他
设备开发
海思开发板
树莓派
其他
框架语言
C/C++
Java
JavaScript
ArkUI / eTS
其他
其他
物联网
云原生
数据库
操作系统
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
社区规则
意见反馈
社区活动
默认
发布时间
热度
原创
精华
热门标签
harmony
纯血
harmonyos
99%的人没弄懂volatile的设计原理,更别说灵活运用了
写volatile的文章非常多,本人也看过许多相关文章,但始终感觉有哪里不太明白,但又说不上来说为什么。可能是过于追求底层实现原理,老想问一个为什么吧。而写这篇文章的目的很简单,就是突然之间明白了volatile为什么要这样设计了。好东西当然要拿出来分享了,于是就有了这篇文章。我们就从硬件到软件,再到具体的案例来聊聊volatile的底层原理,文章比较长,可收藏之后阅读。CPU缓存的出现最初的CPU是没有缓存区的,CPU直接读...
梦叶草789
0回复
7394浏览
开发语言
容器
03 网络面经:你真的了解Cookie和Session吗?
在初级面试中,关于Cookie和Session的区别是一个高频的面试题。如果只是机械的回答一下它们的区别,那你可能真的不了解Cookie和Session,就更别说灵活运用了。这篇文章带你从Cookie和Session的初级应用到高级应用捋一遍,看看有多少不知道的内容。什么是Cookie?我们知道HTTP协议是无状态的,一次请求完成,不会持久化请求与相应的信息。那么,在购物车、用户登录状态、页面个性化设置等场景下,就无法识别特定用户的信息。这时...
梦叶草789
0回复
6747浏览
开发语言
容器
如何轻松给Spring Boot配置文件加个密?
在实践中,项目的某些配置信息是需要进行加密处理的,以减少敏感信息泄露的风险。比如,在使用Druid时,就可以基于它提供的公私钥加密方式对数据库的密码进行加密。但更多时候,比如Redis密码、MQ密码等敏感信息,也需要进行加密,此时就没那么方便了。本篇文章给大家介绍一款Java类库Jasypt,同时基于SpringBoot项目来演示一下如何对配置文件信息进行加密。一个简单的SpringBoot项目我们先来创建一个简单的SpringBoot项目,构...
梦叶草789
0回复
7122浏览
容器
开发语言
不知道Mysql排序的特性,加班到12点,认了认了!
小弟新写了一个功能,自测和测试环境测试都没问题,但在生产环境会出现偶发问题。于是,加班到12点一直排查问题,终于定位了的问题原因:MysqlLimit查询优化导致。现抽象出问题模型及解决方案,分析给大家,避免大家踩坑。问题场景新上线一个交易记录导出功能,逻辑很简单:根据查询条件,导出对应的数据。由于数据量比较大,在查询数据库时采用了分页查询,每次查询1000条数据。自测正常,测试环境正常,上线之后运营反馈导出...
梦叶草789
0回复
6513浏览
开发语言
容器
程序员天天写代码,如何拓展社交圈?
作为一个程序员,天天忙着写代码,周末又宅在家中,如何拓展有效社交圈?这不仅仅是程序员的面临的问题。今天就聊聊自己在这方面的感悟。社交圈的固化无论是否是程序员,大家的社交圈越来越固化,特别是疫情之后,大家或是习惯了或是嫌麻烦,更愿意宅着。本来职场的忙碌就让社交时间减少了很多,再加上各类短视频、影视、综艺节目,让大家花在社交上的时间更加少了。同时,有很多朋友倒是想拓展一下社交,怎奈没有途径和方法。...
梦叶草789
0回复
6929浏览
开发语言
容器
04 网络面经:HTTP 2.0的这些新特性,是时候了解一下了
面试中关于HTTP2.0的面试题并不多,但基于HTTP2.0的应用已经很多了,比如谷歌的gRPC框架就是基于HTTP2.0来提升效率的。同时,HTTP1.0中的存在的很多缺陷也都在HTTP2.0中得到了解决。所以,如果你在面试中脱颖而出,同时,在实践中更好的理解类似gRPC这类框架的实现,了解HTTP2.0还是非常必要的。而且HTTP2.0也在很多场景下逐步替代HTTP1.0。HTTP1.0存在的问题了解过HTTP1.0的协议实现之后,会发现它存在不少问题。问题一:TCP连...
梦叶草789
0回复
6451浏览
容器
开发语言
弄懂“三门问题”,成功概率翻倍,来用代码验证一下
看到一段关于“三门问题”的视频,第一感觉就是视频的结论有误。本想一笑了之,但看了评论,迷惑了:三门问题的答案到底是什么?作为勤学好问的码农,不知道最终答案,还是很难受的,于是深入研究一下,发现”小丑竟然是自己“。如果你想挑战一下自己,可以先跳过推理和结论部分,自己先得出一个答案,然后再看看是否正确。一条朋友圈在花了一个小时,弄懂三门问题之后,发了一条这样的朋友圈:image20211031201436187三门问题...
梦叶草789
0回复
6393浏览
开发语言
容器
05 网络面经:使用HTTPS就绝对安全了吗?
朋友面试阿里,关于HTTPS被问了三道题,看看你能回到上几道题。第一,为什么使用HTTPS之后,通信就安全了?第二,HTTPS实现通信安全的原理是什么?第三,使用了HTTPS就绝对安全了吗?本篇文章就带大家一起聊聊HTTPS,顺便解答上面三个问题。关于HTTPS前面学习过HTTP协议的报文格式及交互模式,我们知道HTTP传输的内容本质上就是文本,HTTP2采用了二进制字节的形式传输,但依旧可以进行反编译。也就是说,在通信的过程中只要拦截...
梦叶草789
0回复
6203浏览
开发语言
容器
还在用new Date计算任务执行时间?强烈建议使用这个API!
在实践过程中,我们经常需要记录一个任务执行的耗时,这是评价代码好坏,评测代码性能,排查业务执行问题的重要操作。那么,你是如何来获取并计算任务执行耗时的呢?通过newDate获得时间进行换算?还是有更好的方案?本文给你答案。获取任务耗时通常做法获取任务耗时,最简单的方式就是打印当前时间与任务开始执行时间的差值,实例代码如下:TestpublicvoidtestElapsedTimes()throwsInterruptedException{longstartTimenewDate(...
梦叶草789
0回复
6289浏览
容器
微服务
隐藏了2年的Bug,终于连根拔起,悲观锁并没有那么简单
接手的新项目,接二连三的出现账不平的问题,作为程序员中比较执着的人,不解决誓不罢休。最终,经过两次,历时多日终于将其连根拔起。实属不易,特写篇文章记录一下。文章中不仅会讲到使用悲观锁踩到的坑,以及本人是如何排查问题的,某些思路和方法或许能对大家有所帮助。事情的起源运营同事时不时就提出查账调账的需求,原因很简单,账不平,不查不行。如果你有过财务相关系统的工作经历,账务问题始终是最难攻克的。虽然刚...
梦叶草789
0回复
4765浏览
开发语言
微服务
01网络面经:你每天都用的HTTP协议,到底是什么鬼?
作为开发人员,每天都在使用HTTP协议,但是否详细了解过一下该协议的构成及特性吗?本文就带大家全面的梳理一下。先来看一下本篇文章涉及到的知识点脑图。http脑图原文件可在公众号【程序新视界】内回复“http”获得。下面,看具体关于HTTP协议的介绍。HTTP协议简介超文本传输协议(英文:HyperTextTransferProtocol,缩写:HTTP)是一种用于分布式、协作式和超媒体信息系统的应用层协议,是万维网的数据通信的基础。HTTP协议基...
梦叶草789
0回复
9755浏览
开发语言
分布式数据库
06篇 Nacos Client本地缓存及故障转移
学习不用那么功利,二师兄带你从更高维度轻松阅读源码~本篇文章我们来通过源码分析一下Nacos的本地缓存及故障转移功能,涉及到核心类为ServiceInfoHolder和FailoverReactor。ServiceInfoHolder功能概述ServiceInfoHolder类,顾名思义,服务信息的持有者。前面文章已经多次涉及到ServiceInfoHolder类,比如每次客户端从注册中心获取新的服务信息时都会调用该类的processServiceInfo方法来进行本地化的处理,包括更新缓存服务、...
梦叶草789
0回复
9355浏览
开发语言
分布式数据库
07篇 Nacos客户端是如何实现实例获取的负载均衡呢?
学习不用那么功利,二师兄带你从更高维度轻松阅读源码~前面我们讲了Nacos客户端如何获取实例列表,如何进行缓存处理,以及如何订阅实例列表的变更。在获取到一个实例列表之后,你是否想过一个问题:如果实例列表有100个实例,Nacos客户端是如何从中选择一个呢?这篇文章,就带大家从源码层面分析一下,Nacos客户端采用了如何的算法来从实例列表中获取一个实例进行请求的。也可以称作是Nacos客户端的负载均衡算法。单个实例获取...
梦叶草789
0回复
7703浏览
开发语言
容器
双重检查锁,原来是这样演变来的,你了解吗
在看Nacos的源代码时,发现多处都使用了“双重检查锁”的机制,算是非常好的实践案例。这篇文章就着案例来分析一下双重检查锁的使用以及优势所在,目的就是让你的代码格调更加高一个层次。同时,基于单例模式,讲解一下双重检查锁的演变过程。Nacos中的双重检查锁在Nacos的InstancesChangeNotifier类中,有这样一个方法:privatefinalMap<String,ConcurrentHashSet<EventListener>>listenerMapnewConcurrentHashMap<String,Conc...
梦叶草789
0回复
5758浏览
分布式数据库
容器
秋天来了,冬天还会晚吗
秋天的风,像一位魔术师,他来到的小山上,看见小草,他就拿起魔术棒,结果小草有绿变黄,他看见穿着绿衣的小花也拿起魔术棒,结果小花变红了..
董老师
0回复
5878浏览
风景地区
一款自主开发的RPC框架,你还会再去使用主流框架Dubbo?
一款自主开发的RPC框架,你还会再去使用主流框架Dubbo?单选同意不同意距离投票结束还有7天0小时编辑框架链接:https:github.comfyupengrpcnettyframework
延年有余
2回复
6642浏览
rpc
netty
java
nacos
2.4 实现沉浸式体验的状态栏
原创
精华
这一节,我们为App实现沉浸式体验的状态栏。首先,我们在index页面中实现一个最基本的页面,只有一个文本组件,同时,将页面背景设置莫兰迪三号颜色。代码如下:typescriptEntryComponentstructIndex{build(){Column(){Text('《鸿蒙开发ArkUI最佳实践》基于HarmonyOS3.0,采用方舟开发框架eTS语言。系统讲解方舟开发框架核心技术和分布式特性,包含丰富案例和一个App实战项目,提供所有案例和实战项目的源码。——鸿蒙开发之南...
华哥的全栈次元舱
1回复
1.2w浏览
ArkUI
eTS
HarmonyOS 3.0
鸿蒙开发
方舟开发框架
Java中定时任务的6种实现方式,你知道几种?
几乎在所有的项目中,定时任务的使用都是不可或缺的,如果使用不当甚至会造成资损。还记得多年前在做金融系统时,出款业务是通过定时任务对外打款,当时由于银行接口处理能力有限,外加定时任务使用不当,导致发出大量重复出款请求。还好在后面环节将交易卡在了系统内部,未发生资损。所以,系统的学习一下定时任务,是非常有必要的。这篇文章就带大家整体梳理学习一下Java领域中常见的几种定时任务实现。线程等待实现先从最原...
梦叶草789
0回复
1.8w浏览
开发语言
容器
Github代码fork之后,如何与原仓库进行同步?
前言我们在使用GitHub时,看到好的项目或想给某个项目做贡献,此时通常会将代码仓库fork到自己的账号下。如果在此期间,如果源仓库的代码发生了变动,就需要与源仓库代码进行同步。本篇文章就带大家实操一下,如何实现这一操作。配置项目的上游仓库首先需要大家将fork的仓库代码clone到本地,后面的所有操作都是基于本地代码库来进行操作的。比如,可以通过gitclone先将fork的代码下载到本地:gitclonegitgithub.com:secbrnacos...
梦叶草789
0回复
1.7w浏览
开发语言
微服务
04篇 Nacos Client服务订阅机制之【核心流程】
学习不用那么功利,二师兄带你从更高维度轻松阅读源码~说起Nacos的服务订阅机制,对此不了解的朋友,可能感觉非常神秘,这篇文章就大家深入浅出的了解一下Nacos2.0客户端的订阅实现。由于涉及到的内容比较多,就分几篇来讲,本篇为第一篇。Nacos订阅概述Nacos的订阅机制,如果用一句话来描述就是:Nacos客户端通过一个定时任务,每6秒从注册中心获取实例列表,当发现实例发生变化时,发布变更事件,订阅者进行业务处理。该更新...
梦叶草789
0回复
9517浏览
框架语言
容器
暂无内容
1
149
150
151
152
153
154
155
156
157
317
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅