51CTO首页
AI.x社区
博客
学堂
精品班
软考社区
免费课
企业培训
鸿蒙开发者社区
WOT技术大会
IT证书
公众号矩阵
移动端
短视频
免费课程
课程排行
直播课
软考学堂
全部课程
厂商认证
IT技术
24年11月软考
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
其他
其他
物联网
云原生
数据库
操作系统
大数据
人工智能
开发语言
其他
社区版务
社区公告
社区生活
意见反馈
社区规则
社区活动
默认
发布时间
热度
原创
精华
热门标签
HarmonyOS NEXT
HarmonyOS
鸿蒙
数据库系列:高并发下的数据字段变更
1背景经常会遇到这种情况,我们的业务已经稳定地运行一段时间了,并且流量渐渐已经上去了。这时候,却因为某些原因(比如功能调整或者业务扩展),你需要对数据表进行调整,加字段or修改表结构。可能很多人说altertableaddcolumn...altertablemodify...,轻轻松松就解决了。这样其实是有风险的,对于复杂度比较高、数据量比较大的表。调整表结构、创建或删除索引、触发器,都可能引起锁表,而锁表的时长依你的数据表实际情况而...
hxiaoyv
0回复
4470浏览
数据库
Redis系列:深刻理解高性能Redis的本质
1背景分布式系统绕不开的核心之一的就是数据缓存,有了缓存的支撑,系统的整体吞吐量会有很大的提升。通过使用缓存,我们把频繁查询的数据由磁盘调度到缓存中,保证数据的高效率读写。当然,除了在内存内运行还远远不够,我们今天就以具有代表性的缓存中间件Redis为例子,分析下,它是如何达到飞起的效率。2Redis高效性能分析Redis之所以能够提供超高的执行效率,主要从以下几个维度来实现的:•存储模式:基于内存实现,而非磁...
hxiaoyv
0回复
4094浏览
sql
我让数据库锁表!差点被开除!
前段时间阿粉在公司开发的时候,不慎导致了数据库产生了锁表的操作,因为阿粉之前从来没有遇到过,之前只是了解过一点,所以导致了锁表,于是阿粉为了解决问题,研究了一下这一部分的内容,于是决定把这一块的知识分享给大家。数据库锁定机制话说如果你只是单纯的说"锁表",总是让人感觉有点Low,而我们就直接换个比较高大上一点的名词,锁定机制!为了保证数据的完整,也就是他的一致性和有效性,所以才会让数据库出现了锁定机...
hxiaoyv
0回复
4230浏览
mysql
InnoDB自增原理都搞不清楚,还怎么CRUD?
虽然我们习惯于给主键ID指定AUTOINCREMENT属性,但是AUTOINCREMENT也是可以指定到非主键字段的,唯一的约束就是这个字段上面得加索引,有了索引,就可以通过类似SELECTMAX(aicol)的语句快速读到这列数据的最大值。本文要探讨的话题是MySql的InnoDB引擎处理自增数据列的原理MySql5.1之前的实现在这个版本之前,用AUTOINCREMENT修饰的数据列确实是严格连续自增的。MySql的实现是会针对每个插入语句加一个全表维度的锁,这个锁可以...
hxiaoyv
0回复
4318浏览
mysql
MySQL全面瓦解26:代码评审中的MySQL(团队规范)
数据库对象命名规范数据库对象数据库对象是数据库的组成部分,常见的有以下几种:表(Table)、索引(Index)、视图(View)、图表(Diagram)、缺省值(Default)、规则(Rule)、触发器(Trigger)、存储过程(StoredProcedure)、用户(User)等。命名规范是指数据库对象如数据库(SCHEMA)、表(TABLE)、索引(INDEX)、约束(CONSTRAINTS)等的命名约定。数据库对象全局命名规范1、命名使用具有意义的英文词汇,词汇中间...
hxiaoyv
0回复
3800浏览
sql
面试官问我索引为什么这快?我好像解释不清楚了
阿粉相信大家肯定都知道,在数据库中加一定量的索引,会让你的查询语句,从原来的3秒缩短到零点几秒的程度,但是很多人都不知道为什么要加索引,为什么加了索引之后,你的查询语句就会起飞呢?今天阿粉来聊一下索引。索引的类型(常见的)●主键索引(primarykey)主键索引这个阿粉从刚开始接触开发的时候,就被各种灌输,表的主键就默认是索引,不允许出现空值。●普通索引(indexnormal)MySQL中基本索引类型,没有什么限制,允许在...
hxiaoyv
0回复
4172浏览
索引
新人一优化,系统就会炸!
阿粉最近在刷知乎的时候发现了一个很有意思的问题,那就是:为什么程序员会有代码能跑就不要动的观点?说实话这句话在阿粉的工作中经常会听到,不仅仅是对于一些长期没人维护的代码,对于日常维护的系统哪怕是之前实现的代码,大家更是敬而远之,能不动一行代码绝不加个空格,更有甚者哪怕是复制一下之前的代码改改,也不考虑复用之前的代码,毕竟复制粘贴大法实在好用。那么为什么程序员会有这种想法呢?不得不说知乎的答主都...
hxiaoyv
0回复
3981浏览
其他
Java8 的 G1 垃圾回收器相对于之前的 CMS 有什么特别的呢?
CMSCMS垃圾回收器,全称ConcurrentMarkSweep并发标记清除,从名字上面我们也可以看出这个垃圾回收器是基于标记清除算法实现的。首先"并发"表示GC线程可以和用户线程并发执行,同时既然是标记清除算法,说明这个垃圾回收器会产生很多碎片,这是标记清除算法的缺点。同时CMS是作用于老年代的,老年代的垃圾回收频率相对年轻代会低一点。CMS的垃圾回收有四个过程1.初始标记:2.并发标记:3.重新标记:4.并发清除:初始标记的时候是...
hxiaoyv
0回复
4455浏览
mysql
麻烦你说下输入百度网址过后整个过程是什么样子的?
Hello大家好,我是阿粉。虽然说金三银四已经过去,但是金九银十快要来了,作为一个居安思危的阿粉,无时无刻不在准备着学习和面试,今天这个题目相信很多面试过的小伙伴都被问到过,问题其实不难,只是如果有的小伙伴没有遇到过,可能不会思考到具体的细节,或者说很多东西可能都知道但是并不知道面试官问这个问题的点在哪,所以会有所欠考虑抓不到重点。下面我们就依次来看一下整个过程到底发生了什么。我们先想一个整个过程中...
hxiaoyv
0回复
4327浏览
Java
了解这些软件设计思想,你的思维至少上升一个段位
一、介绍在1994年,由ErichGamma、RichardHelm、RalphJohnson和JohnVlissides四人合著出版了一本名为DesignPatternsElementsofReusableObjectOrientedSoftware(中文译名:设计模式可复用的面向对象软件元素)的书,该书首次提到了软件开发中设计模式的概念,四位作者合称GOF(全拼GangofFour),简称四人帮!书中共说到23种设计模式,这些模式可以分为三大类:创建型模式(CreationalPatterns)、结构型模式(StructuralPatter...
hxiaoyv
0回复
3847浏览
mysql
BTrace 告诉你如何在不重启 JVM 的情况下在线调试
Hello大家好,我是阿粉,不知道你有没有遇到过这种场景,线上服务跑了一段时间过后偶尔会出现问题,光靠代码和数据分析找不到原因,而且这种情况也不是很常见所以对应的代码也没有加日志输出,如果说重新加上日志进行发布的话,就会破坏现场只能再等一段时间了,或者有的时候想看下接口的参数,从而判断接口参数有没有问题。这个时候就在想有没有一个好的方法,可以不用重新修改源代码也不用发布升级就可以增加一些日志看到运行...
hxiaoyv
0回复
4222浏览
mysql
JDK8 的判空就是这么爽!
阿粉相信大家肯定所有的开发者都对Java8里面的所有的东西都感兴趣,虽然目前的JDK已经更新到JDK17了,但是阿粉相信,现在很多公司使用的还都是JDK8甚至是JDK7,但是,就算是有些公司已经升级到JDK8但是对于JDK8里面的一些东西的使用,却没有使用的淋漓尽致。阿粉今天就给大家放出几个JDK8里面比较好用的。JDK8大家都是知道JDK8就开始使用Lambda表达式,但是很多不管是在教程上还是在其他的书籍上,都没有说在实际开发的时候去使...
hxiaoyv
0回复
3864浏览
mysql
鸿蒙3.0升级计划公布,Mate 50终于来了!
更智能的鸿蒙3.0,全新的XMAGE影像系统,可变光圈,捅破天的卫星通信技术......历尽艰难,阔别两年之久的华为Mate50系列终于归来!1华为Mate50发布,首发卫星通信功能时隔两年之后,华为Mate系列手机又回来了!在刚刚举办的华为Mate50系列及全场景新品秋季发布会上,华为正式发布Mate50系列手机。华为消费者业务CEO余承东表示,华为Mate50系列手机是全球首款支持北斗卫星消息的大众智能手机。据了解,搭配该技术的Mate50系列,...
开源news
0回复
7146浏览
鸿蒙
华为
mate50
鸿蒙3.0
如何对数据进行脱敏处理?
一、背景实际的业务开发过程中,我们经常需要对用户的隐私数据进行脱敏处理,所谓脱敏处理其实就是将数据进行混淆隐藏,例如下图,将用户的手机号、地址等数据信息,采用进行隐藏,以免泄露个人隐私信息。如果需要脱敏的数据范围很小很小,甚至就是指定的字段,一般的处理方式也很简单,就是写一个隐藏方法即可实现数据脱敏。如果是需求很少的情况下,采用这种方式实现没太大问题,好维护!但如果是类似上面那种很多位置的数据...
fatherlaw
0回复
1.1w浏览
sql
深入剖析 Java 反序列化漏洞
一、背景在上篇文章中,小编有详细的介绍了序列化和反序列化的玩法,以及一些常见的坑点。但是,高端的玩家往往不会仅限于此,熟悉接口开发的同学一定知道,能将数据对象很轻松的实现多平台之间的通信、对象持久化存储,序列化和反序列化是一种非常有效的手段,例如如下应用场景,对象必须100%实现序列化。•DUBBO:对象传输必须要实现序列化•RMI:Java的一组拥护开发分布式应用程序API,实现了不同操作系统之间程序的方法调用...
fatherlaw
0回复
7026浏览
sql
还在滥用try-catch处理异常?看看springboot的优雅实现吧
前言在平时的API开发过程中,总会遇到一些错误异常没有捕捉到的情况。那有的小伙伴可能会想,这还不简单么,我在API最外层加一个try...catch不就完事了。哈哈哈,没错。这种方法简单粗暴。指北君曾经也是这么干的,但是你转过来想一想,你会在每一个API入口,都去做try...catch吗?这样不是代码非常丑陋的。小伙伴开始思考,突然灵光一现,说我们实现一个AOP来做这事不就完了。没错,使用AOP来实现是最佳的选择。现在指北君就给...
fatherlaw
0回复
6604浏览
sql
一个注解,搞定SpringBoot自动化启动
前言前几天,指北君有一个朋友小王在面试过程中被吊打了。当时的情况是这样的。面试官:SpringBoot中最重要的注解是什么?你能讲讲为什么最重要吗?小王:SpringBootApplication,这个注解最重要吧。SpringBootApplication注解能够实现Spring组件自动化配置,组件扫描。面试官:那SpringBootApplication注解是怎么实现SpringBoot的自动配置功能呢?小王心想大事不妙,还真没有看过这块源码。支支吾吾回答不上,只好回家等通知了...
fatherlaw
0回复
5525浏览
sql
最全工厂设计模式案例详解,不服来辩!
工厂模式(FactoryPattern)是Java中最常用的设计模式之一,今天我们一起来彻底解析一下它。一、介绍从名称上,顾名思义就是创建产品,按类别分为简单工厂模式、工厂方法模式、抽象工厂模式,主要功能都是帮助我们把对象的实例化操作单独抽取出来,优化系统架构,增强系统的扩展性。下面,我们一起来看看各个模式的使用方式。二、简单工厂模式简单工厂模式,对象创建管理方式最为简单,因为其仅仅简单的对不同类对象的创建进行...
fatherlaw
0回复
5421浏览
sql
一文带你彻底搞懂发布与订阅设计
一、介绍我们常说的发布订阅设计模式,也叫观察者模式,也就是事件监听机制,观察者模式订阅了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,当这个主题对象发生改变时,会通知所有的观察者对象,使他们能够自动的更新自己!一个软件系统要求某个对象在发生变化时,某些其他的对象作出相应的改变,能做到这点的设计方案有很多,但观察者模式是满足这一要求的各种设计方案中最重要的一种。从整体来看,观察者...
fatherlaw
0回复
4970浏览
sql
50行代码,搞定敏感数据读写!
一、介绍在实际的软件系统开发过程中,由于业务的需求,在代码层面实现数据的脱敏还是远远不够的,往往还需要在数据库层面针对某些关键性的敏感信息,例如:身份证号、银行卡号、手机号、工资等信息进行加密存储,实现真正意义的数据混淆脱敏,以满足信息安全的需要。那在实际的研发过程中,我们如何实践呢?二、方案实践在此,提供三套方案以供大家选择。•通过SQL函数实现加解密•对SQL进行解析拦截,实现数据加解密•自定义...
fatherlaw
0回复
4813浏览
sql
暂无内容
1
109
110
111
112
113
114
115
116
117
151
精选
客服
订阅鸿蒙技术特刊,精选内容抢先看
微信扫码关注,即刻订阅