自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(13)
  • 收藏
  • 关注

原创 养老的预约

3.用户预约成功后,修改状态为待上门;用户预约成功后规定时间到访,修改状态为已完成;2.用户当日预约取消次数>=3,不能再进行预约。2-1 介绍一下你的预约功能是如何实现的。1. 一个手机号同一时间段只能预约一次。

2024-01-29 21:12:06 338

原创 开始养老的第一天

根据产品原型图,确定字段的数量和类型,根据产品原型的输入输出项确定基本字段,如果涉及到多张表,存在一对多或多对多关系,进行外键字段的设计;小程序端养面向老院老人家属,可以用来查看老人信息,缴费,下订单等。前期我们开会进行需求的讨论分析,需求确定后进行表结构的设计,接口的设计,然后进行代码的开发功能实现,功能编写完成后前后端联调,测试bug,解决bug,最后进行功能的验收。中州养老项目包括来访参观到退住办理的完整流程,具体包括:线上预约,到院参观,办理入住,护理服务,绑定老人,请假销假审批,退住办理;

2024-01-29 21:11:27 372

原创 Day08

目前使用最广泛的是基于Redis的分布式锁。这个分布式锁是基于Redis的setnx命令实现的,只有Redis中不存在某个key时setnx命令才能成功,否则失败,通过这个特点就可实现简单的分布式锁。首先,分布式锁的概念是:多个实例外部寻找一个锁监视器,多个实例争抢同一把锁,而不是每个实例使用各自的JVM内部监视器,这样的锁成为分布式锁;首先,根据订单查询可用优惠方案,主要判断订单是否符合优惠的条件,例如满减门槛或者是否适用优惠卷的分类。其次,如果加锁成功,锁的默认生存时间为30S。

2024-01-29 21:09:23 382

原创 【无标题】

这个分布式锁是基于Redis的setnx命令实现的,只有Redis中不存在某个key时setnx命令才能成功,否则失败,通过这个特点就可实现简单的分布式锁。首先,分布式锁的概念是:多个实例外部寻找一个锁监视器,多个实例争抢同一把锁,而不是每个实例使用各自的JVM内部监视器,这样的锁成为分布式锁;如果加锁不成功,说明已有客户端占用了锁,那么则不停的尝试去加锁。首先,根据订单查询可用优惠方案,主要判断订单是否符合优惠的条件,例如满减门槛或者是否适用优惠卷的分类。其次,如果加锁成功,锁的默认生存时间为30S。

2024-01-25 08:24:08 349

原创 Day07

2.非事务方法调用事务方法;解决:代理对象调用相应的方法;1.创建优惠卷:创建优惠卷可以设置使用范围,也可以设置优惠卷类型和优惠力度,还可以设置推广方式,发放数量,每人限领等。项目中优惠券功能的实现主要包括:优惠券的发放,查询优惠券,领取优惠券,根据兑换码兑换优惠券;3.领取或兑换优惠卷:用户可以直接领取,或者通过兑换码领取,可以通过BitMap实现用户是否领过。5.事务方法事务传播行为有误,导致事务失效;4.事务方法捕获异常类型错误,事务失效;3.事务方法try/catch捕获异常,事务失效;

2024-01-22 21:14:35 420

原创 Day06

由于当前排行榜会根据月份变化,所以需要用到XXL-JOB的定时任务,自动创建mysql数据表,将redis中的数据同步到mysql中,最后删除redis中的数据,这三个步骤缺一不可,所以使用任务链,保证任务成功,这样当新的排行榜数据存入时,不会导致内存溢出。历史排行榜虽然数据量也比较大,但是他的查询量不是很高,因此我们将他存入MySQL中,我们采用了分表的设计方案,使用XXL_JOB定时任务在每个月月底进行创建表,存储数据,删除缓存,再查询的时候我们只需要查一张表即可。此处链表的插入采用的是尾插法。

2024-01-19 22:01:02 599 1

原创 Day05

bitmap在处理大量数据统计和判断时,可以只占用非常小的一部分内存的特点,项目中我们用bitmap实现用户每日签到记录的存储,节省空间,操作高效。首先在我们项目中,用户在进行签到,学习,参与问答,提交笔记等行为时,产生积分,项目中我们采用RabbitMQ中间件实现异步保存积分明细到积分表,涉及到两个微服务:学习微服务,签到微服务。单链表 + 索引的方式实现,以空间换时间的形式,提高查找速度。在Redis中,bitmap底层还是基于String类型实现的, 存储数据是以二进制(bit位)为单位进行存储的。

2024-01-18 21:26:40 956 1

原创 Day04--cv

项目中为了防止缓存击穿的问题,采用互斥锁方案,当请求在缓存中找不到数据时,不直接访问数据库,先去拿锁,拿到的访问数据库,拿不到的等待/重试,这样就有效避免了大量请求直接访问数据库。1.前期准备工作,导入XXL-JOB依赖,添加配置文件,指定地址和端口。

2024-01-18 20:43:37 335 1

原创 Day03--CV

评论回复表中主要字段有:target_user_id(回复目标用户id),target_reply_id(目标回复id),question_id(问题id),answer_id(上级回答id),通过对字段answer_id的判断,来确定是回复还是评论。问题表中主要字段有:course_id(课程id),chapter_id(章id),section_id(节id),anonymity(是否匿名),hidden(是否隐藏)在问答系统中用到了三张表:用户表,问题表,评论回复表,

2024-01-18 20:42:33 403 1

原创 Day04

首先需要在项目中集成XXL-JOB的客户端,然后在XXL-JOB的管理平台上创建和配置定时任务,包括任务的执行时间、执行频率、任务参数等。添加成功,到此完成媒资管理模块service工程配置xxl-job执行器,在xxl-job调度中心添加执行器,下边准备测试执行器与调度中心是否正常通信,因为接口工程依赖了service工程,所以启动媒资管理模块的接口工程。

2024-01-16 22:03:29 455

原创 Day03

如果系统还包括用户和分类等功能,可能会有更多的表。

2024-01-15 21:31:16 416

原创 Day02

整个流程主要是通过调用课表微服务和课程微服务,获取最近学习的课表信息、课程详细信息和章节信息,然后将这些信息填充到一个VO对象中返回。用户点击报名时,系统会先判断课程是否为付费课程,如果是,会触发支付微服务进行支付操作,然后生成订单,如果为免费课程,直接生成订单。使用Feign调用课程微服务,根据获取的课表信息中的课程ID获取对应的课程详细信息,如果获取的课程详细信息为空,则返回空对象。首先通过查询获取当前用户最近学习的课表信息,并按最近学习时间降序排序,只获取一条记录,如果获取的课表为空,则返回空对象。

2024-01-14 23:03:13 457

原创 Day01

在我们的项目中,我们使用Gogs作为我们的代码托管平台,它为我们提供了一个方便的方式来管理我们的项目代码、问题追踪和合作开发。我们将我们的项目代码库托管在Gogs上,并且使用其提供的问题追踪功能来跟踪和解决项目中的问题。当我们需要发布新的版本时,我们会在Gogs上创建一个新的发布分支,并在该分支上进行必要的修改和测试。一旦我们确定新版本没有问题,我们会将代码合并到主分支,并在Gogs上创建一个新的发布标签。这样,我们就可以方便地在Gogs上管理和跟踪我们的发布版本。

2024-01-12 21:35:12 1344 4

MySQL系列.md

MySQL系列.md

2024-01-10

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除