你好,我是悟空。本文主要内容如下:一、现象最近项目的测试环境遇到一个主备同步的问题:备库的同步线程停止了,无法同步主库的数据更改。备库报错如下:完整的错误信息:Relaylogreadfailure:Couldnotparserelaylogevententry.Thepossiblereasonsare:themaster'sbinarylogiscorrupted(youcancheckthisbyrunning'mysqlbinlog'onthebinarylog),theslave'srelaylogiscorrupted(youcancheckthisbyrunning'mysqlbinlog'ontherelayl...
你好,我是悟空文末赠书。一、Raft概述Raft算法是分布式系统开发首选的共识算法。比如现在流行Etcd、Consul。如果掌握了这个算法,就可以较容易地处理绝大部分场景的容错和一致性需求。比如分布式配置系统、分布式NoSQL存储等等,轻松突破系统的单机限制。Raft算法是通过一切以领导者为准的方式,实现一系列值的共识和各节点日志的一致。二、Raft角色2.1角色跟随者(Follower)...
你好,我是悟空。最近试了这三款人工智能聊天工具,稍稍对比了下。三家分晋ChatGTP:更像是三国中魏国,地大物博用户多。百度文心一言:更像是三国中的蜀国,地理优势好,国内用户超级多。微软的NewBing:更像是三国中的吴国,有较好的外交,国内国外通吃。三款工具的横向对比下面是我对这三款工具提出的问题,来看看他们都是怎么答的吧。Redis如何更新和存储海量数据?微博怎么做的?ChatGPT优点:响应速度快,还回答了微博是...
你好,我是悟空。本篇主要内容如下:背景我们的项目采用了读写分离的方案:查询和更新的业务走主库,统计相关的功能走从库,从而减少主库的压力。原理如下图所示:如果从库崩了,实在无法访问了,就会把所有请求打到主库上。原理如下图所示:但是最近遇到一个问题,MySQL从节点上的服务无缘无故的崩了,查看日志也找不到什么端倪。为了保证从节点的可用性,我们使用了Keepalived软件来监测从节点存活状态,如果从节点崩...
你好,我是悟空。本文主要内容如下:一、背景项目背景:新项目的后端框架是刚起步,搭建的是一套微服务框架,基础服务有网关Gateway,Nacos注册中心,以及其他的微服务。现在需要弄个简单且方便的,基于Docker的部署方式。为什么用Docker:为了让后端程序更容易打包部署和管理,所以用上了Docker容器化部署。比如用DockerSwarm或K8s来管理多个容器。为什么要提到Windows:本地机器是Windows系统开发,通过Windows+IDEA将应用程...
你好,我是悟空。本文目录如下:一、前言最近在梳理MySQL核心知识,刚好梳理到了MySQL索引相关的知识,我的文章风格很多都是原理+实战的方式带你去了解知识点,所以本篇也是。当然,索引的知识点还是很多的,本篇是对索引的基础知识进行讲解,不涉及索引的底层原理,以及未涉及到如何查看执行计划,将会分成多篇进行讲解,请持续关注二、索引VS图书馆设想一种场景,你现在是一名图书管理员,每天的工作就是将归还的书放回原位。...
大家好,我是不才陈某当我们业务数据库表中的数据越来越多,如果你也和我遇到了以下类似场景,那让我们一起来解决这个问题数据的插入,查询时长较长后续业务需求的扩展在表中新增字段影响较大表中的数据并不是所有的都为有效数据需求只查询时间区间内的评估表数据体量我们可以从表容量磁盘空间实例容量三方面评估数据体量,接下来让我们分别展开来看看表容量:表容量主要从表的记录数、平均长度、增长量、读写量、总大小量进行评...
2023-04-26 15:33:27 1345浏览 0点赞 0回复 0收藏
大家好,我是不才陈某今天我们来聊聊缓存这个话题,看看在微服务环境下如何设计有效的多级缓存架构。主要涉及三方面内容:Web应用的客户端缓存;应用层静态资源缓存;服务层多级缓存。首先,咱们先讲解微服务架构的多级缓存设计。微服务架构中的多级缓存设计提到缓存,想必每一位软件工程师都不陌生,它是目前架构设计中提高性能最直接的方式。这里我们举个例子:假设应用程序将原始数据存储在MySQL数据库中。众所周知MySQL数据...
2023-04-26 15:31:55 765浏览 0点赞 0回复 0收藏
大家好,我是不才陈某公司SpringBoot项目在日常开发过程中发现服务启动过程异常缓慢,常常需要67分钟才能暴露端口,严重降低开发效率。通过SpringBoot的SpringApplicationRunListener、BeanPostProcessor原理和源码调试等手段排查发现,在Bean扫描和Bean注入这个两个阶段有很大的性能瓶颈。通过JavaConfig注册Bean,减少SpringBoot的扫描路径,同时基于Springboot自动配置原理对第三方依赖优化改造,将服务本...
2023-04-26 15:27:20 318浏览 0点赞 0回复 0收藏
大家好,我是不才陈某BigKey、HotKey是日常生产中经常会碰到由于redis集群的不当访问,造成的线上问题。而且,这也是常见的面试题。在咱们社群的面试交流中,有很多小伙伴在面试网易、滴滴、京东等大厂的二面、三面中遇到了这个问题。前段时间,有一个知识星球的小伙伴在面试阿里的时候,又遇到了此问题。所以,陈某在这里,结合行业生产案例,特意给大家,做一个彻底的、系统的梳理。大家按照这个思路去作答,一定能拿...
2023-04-26 15:26:10 405浏览 0点赞 0回复 0收藏
大家好,我是不才陈某会员系统是一种基础系统,跟公司所有业务线的下单主流程密切相关。如果会员系统出故障,会导致用户无法下单,影响范围是全公司所有业务线。所以,会员系统必须保证高性能、高可用,提供稳定、高效的基础服务。随着同程和艺龙两家公司的合并,越来越多的系统需要打通同程APP、艺龙APP、同程微信小程序、艺龙微信小程序等多平台会员体系。例如微信小程序的交叉营销,用户买了一张火车票,此时想给他发酒店红...
2023-04-26 15:19:39 609浏览 0点赞 0回复 0收藏
大家好,我是不才陈某大家都知道,Callable和DeferredResult可以用来进行异步请求处理。利用它们,我们可以异步生成返回值,在具体处理的过程中,我们直接在controller中返回相应的Callable或者DeferredResult,在这之后,servlet线程将被释放,可用于其他连接;DeferredResult另外会有线程来进行结果处理,并setResult。基础准备在正式开始之前,我们先...
2023-04-26 15:18:31 332浏览 0点赞 0回复 0收藏
大家好,我是不才陈某毫不夸张的说咱们后端工程师,无论在哪家公司,呆在哪个团队,做哪个系统,遇到的第一个让人头疼的问题绝对是数据库性能问题。如果我们有一套成熟的方法论,能让大家快速、准确的去选择出合适的优化方案,我相信能够快速准备解决咱么日常遇到的80%甚至90%的性能问题。从解决问题的角度出发,我们得先了解到问题的原因;其次我们得有一套思考、判断问题的流程方式,让我们合理的站在哪个层面选择方案;最后...
2023-04-26 15:17:47 235浏览 0点赞 0回复 0收藏
大家好,我是不才陈某SpringBoot自定义线程池实现异步开发相信看过陈某的文章都了解,但是在实际开发中需要在父子线程之间传递一些数据,比如用户信息,链路信息等等比如用户登录信息使用ThreadLocal存放保证线程隔离,代码如下:author公众号:码猿技术专栏description用户上下文信息publicclassOauthContext{privatestaticfinalThreadLocal<LoginVal>loginValThreadLocalnewThreadLocal<>();publicstaticLoginValget(){return...
2023-04-26 15:16:51 334浏览 0点赞 0回复 0收藏
大家好,我是不才陈某saas服务未来会面临数据安全、合规等问题。公司的业务需要沉淀一套私有化部署能力,帮助业务提升行业竞争力。为了完善平台系统能力、我们需要沉淀一套数据体系帮助运营分析活动效果、提升运营能力。然而在实际的开发过程中,如果直接部署一套大数据体系,对于使用者来说将是一笔比较大的服务器开销。为此我们选用折中方案完善数据分析能力。ElasticsearchvsClickHouseClickHouse是一款高性能列式分布式数据...
2023-04-26 15:13:41 965浏览 0点赞 0回复 0收藏
大家好,我是不才陈某nginxWebUI是一款图形化管理nginx配置的工具,可以使用网页来快速配置nginx的各项功能,包括http协议转发、tcp协议转发、反向代理、负载均衡、静态html服务器、ssl证书自动申请、续签、配置等。配置好后可一建生成nginx.conf文件,同时可控制nginx使用此文件进行启动与重载,完成对nginx的图形化控制闭环。nginxWebUI也可管理多个nginx服务器集群,随时一键切换到对应服务器上进行nginx配置,也可以一键将...
2023-04-26 15:10:41 565浏览 0点赞 0回复 0收藏
Lottieohos:LottieisamobilelibrarythatparsesAdobeAfterEffectsanimationsexportedasjsonandrendersthemnativelyonmobile.UsageInstructionsDeclarethelottieanimationviewinlayoutasshownbelow:<com.airbnb.lottie.LottieAnimationViewohos:id"$+id:animationView"ohos:width"matchparent"ohos:height"matchparent">Forplayinganimationusingjsonzipfile:LottieAnimationViewlv(LottieAnimationView)rootLayout.findComponent...
2023-03-17 11:39:31 716浏览 0点赞 0回复 0收藏
MaterialComponentRadioMaterialcomponentradiodesigninOpenHarmony.Download&InstallInstallusingnpmnpmiohosmaterialradioDetailsaboutOpenHarmonyNPMenvironmentconfiguration,seeathereUsageInstructionsImportfilesandcodedependenciesimport{RadioButton,RadioGroup,RadioOption,RadioModel}from'ohosmaterialradio'InitializemodeldataprivateradioModel:RadioModelnewRadioModel(1,"RadioLabel")Codefo...
2023-03-17 10:57:22 487浏览 0点赞 0回复 0收藏
LibraryName:SmartWatch4LibraryVersion:1.0.0LibraryReleaseDate:26052022LibraryOverview:SmartWatchfourshowsfollowingfunctionalites;Itfetchesweatherdetailsbasedonthelocationoftheuser.ShowscurrentdateandtimeCalculatesNumberofstepswalked,bpmandCaloriesburnedDisplaysRemainder.GitHublink:SmartWatchfourScreenshotoftheLibrary:LibraryFeature1:Description:Itfetchesweatherdetailsbasedonthelocationoftheuser...
2023-03-17 10:56:32 286浏览 0点赞 0回复 0收藏
一UIdesignforSmartWatchinOpenHarmony.TheSmartWatch7UIlibraryisdevelopedfordevelopingSmartWatchconsoles.UIwasdesignedusinghml(HarmonyOSmarkuplanguage)andCSS(cascadingstylesheets).ThefunctionalitieswereaddedusingJavascript.Thelibraryiscapablefetchingdetailslikedate,time,weatherfromAPI’savailableforthesame.Otherdetailslikecalories,footstepsisbeenfetchedfromthedatalayer.SmartWatch7Design:Functiona...
2023-03-17 10:53:28 183浏览 0点赞 0回复 0收藏