![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
谷粒商城项目实战
文章平均质量分 56
荭色海湾
喜欢Java的一名程序员,随着自己的不断学习,记录自己的成长过程,全面发展。
展开
-
分布式事务 详解
注意:在Seata0.9版本以后,提供了DataSource默认代理的功能,并且默认是开启的,不用再手动的去把DataSource放入到DataSourceProxy中了。如果你的事务只是想默认的传播行为,共用上面的事务,就可以不用这个啦。这样就可以拿到它的上下文的代理对象,当然是有这样的需求才这么做。详情请去了解 Raft 算法 还有 paxos 算法。失败统一操作记录失败回滚对数据库恢复成原来的样子。1.0版本以上都是默认自动代理了,省了很多配置。这个是用于回滚记录的表。记住一个注解就可以了。原创 2024-07-21 13:48:02 · 446 阅读 · 0 评论 -
Feign远程调用丢失请求头问题
原创 2024-07-21 07:11:18 · 92 阅读 · 0 评论 -
RabbitMQ 使用
可以导出配置,到下一个导入配置。原创 2024-07-21 06:23:05 · 325 阅读 · 0 评论 -
单点登录流程
克隆下来cmd 输入命令一个地方登录,到处都登陆。原创 2024-07-20 23:14:32 · 201 阅读 · 0 评论 -
OAuth2.0 or Spring Session or 单点登录流程
一句话精辟解释: 在过滤器放行的时候,偷偷的把原生的 request 和 response 对象换成了它的实现,也就是 调用getSession 的时候拿到的 其实是对redis 操作的Session。但其他的操作还是使用原生的,只不过重写的方法,调用的是子类的,也就是往 redis 里放入 Session,把原生的操作给替换了!分布式Session原理,使用子域名,的时候放入父域名的 JsessionId 然后将这个ID 的所存的内容放入Redis ,这样实现不同域名共享同一sessionID.原创 2024-07-20 20:04:43 · 461 阅读 · 0 评论 -
CompletableFuture异步编排
CompletableFuture提供了四个静态方法来创建一个异步操作。原创 2024-07-16 21:53:28 · 360 阅读 · 0 评论 -
Spring-Cache 缓存
保存的数据为json格式常规数据(读多写少,即时性,一致性要求不高的数据 ):完全可以使用springcache(写模式:只有数据有过期时间 就完全足够了 这样可以保证数据的最终一致性)特殊数据 (特殊设计)例如 canal 感知数据库去更新 缓存。原创 2024-07-14 15:11:29 · 428 阅读 · 0 评论 -
缓存-分布式锁框架-Redisson
Redisson 是 Redis Java 客户端和实时数据平台。它提供了更方便、最简单的 Redis 工作方式。Redisson 对象提供了关注点分离,允许您专注于数据建模和应用程序逻辑。原创 2024-07-13 21:52:20 · 601 阅读 · 1 评论 -
缓存-分布式锁-原理和基本使用
因为 在传输过程中需要耗时,这时候如果过期KEY,让其他线程进来创建KEY,然后数据返回到之前那个线程,删除KEY,又会把别人新加进来的key给删掉。获取值对比+对比成功删除=原子操作。redis+lua脚本实现。只有一个查询了数据库。原创 2024-07-07 10:57:01 · 388 阅读 · 0 评论 -
缓存-缓存使用2
指查询一个一定不存在的数据,由于缓存是不命中,将去查询数据库,但是数据库也无此纪录,我们没有将这次查询的null写入缓存,这将导致这个不存在的数据每次请求都要到存储层去查询,失去了缓存的意义。风险:利用不存在的数据进行攻击,数据库瞬时压力增大,最终导致崩溃解决:null结果缓存,并加入短暂过期时间。原创 2024-07-07 08:31:31 · 583 阅读 · 0 评论 -
缓存-缓存的使用与基本详解
为了系统性能的提升,我们一般都会将部分数据放入缓存中,加速访问。而db承担数据落盘工作。哪些数据适合放入缓存?举例:电商类应用,商品分类,商品列表等适合缓存并加一个失效时间(根据数据更新频率来定),后台如果发布了一个商品,买家需要5分钟才能看到新的商品一般还是可以接受的。原创 2024-07-06 20:54:53 · 550 阅读 · 0 评论 -
性能压测 -优化 Nginx的动静分离
两件事情1.以后将所有的项目的静态资源都应该放在nginx里面2.nginx 规则:/static/***所有请求都有nginx直接返回nginx 配置一下配置文件,然后把html 的静态资源,绑定好是Nginx优先级高的静态资源路径,就去交给nginx静态资源处理了服务崩溃的过程 503优化以后49的吞吐量。原创 2024-07-05 18:08:44 · 253 阅读 · 0 评论 -
性能调优 性能监控
数据库、应用程序、中间件(tomcat、nginx)、网络和操作系统等方面。首先考虑自己的应用属于还是计算,排序,分组查询,各种算法网络传输,磁盘读写,数据库,redis。原创 2024-07-02 18:26:34 · 665 阅读 · 1 评论 -
压力测试
压力测试考察当前软硬件环境下系统所能承受的最大负荷并帮助找出系统瓶颈所在。压测都是为了系统在线上的处理能力和稳定性维持在一个标准范围内,做到心中有数使用压力测试,我们有希望找到很多种用其他测试方法更难发现的错误,有两种错误类型是内存泄漏,并发与同步。有效的压力测试系统将应用以下这些关键条件重复,并发,量级,随机变化。原创 2024-06-23 07:42:20 · 489 阅读 · 0 评论 -
Nginx 搭建域名访问环境
让所有的请求都转到,商品服务。原创 2024-06-19 21:58:28 · 392 阅读 · 0 评论 -
thymeleaf 模板
模板引擎。原创 2024-06-17 18:38:21 · 222 阅读 · 0 评论 -
商品服务:SPU&SKU&规格参数&销售属性
PO就是对应数据库中某个表中的一条记录,多个记录可以用PO的集合。PO中应该不报含任何对数据库的操作。原创 2024-05-15 21:50:21 · 324 阅读 · 0 评论 -
自定义校验器
/1、获取校验的错误结果return R.error(400,"提交的数据不合法").put("data",map);}else {规范全局异常处理器@Slf4jreturn R.error(400,"参数校验失败").put("data",map);log.error("内部错误",e);return R.error(500,"内部错误");/*** 在JSR303规范中必须要有以下三个属性*/Class<?原创 2024-04-07 19:08:34 · 339 阅读 · 2 评论 -
阿里 对象存储OSS 云存储服务
对象存储服务(Object Storage Service ,OSS) 是一种 海量、安全、低成本、高可靠的云存储服务,适合存放任意类型的文件。容量和处理能力弹性扩展,多种存储类型供选择,全面优化存储成本。原创 2024-04-05 12:13:24 · 595 阅读 · 2 评论 -
商品服务 - 三级分类
如果不调换优先级,路径会被网关转发到 renrenfast 服务当中,导致没有token 返回invalid token。这是因为网关配置了跨域,而网关转发的微服务也配置了跨域,所以返回了两个响应头被允许,但是浏览器只希望有一个,所以报错,这时,我们只需要去把微服务的跨域注释掉就好了。这是网关的路由,是有优先级的,从上优先级最高,如果匹配不上就会依次遍历。这是人人fast 服务的跨域配置,也是Spring MVC的 配置。但是我们发现还是出现了问题。原创 2024-04-01 19:56:08 · 323 阅读 · 1 评论 -
前端基础 Vue -组件化基础
创建一个 hello.vue组件 在components文件夹下。在route文件下的index.js写上路由controller。然后再App.vue 根组件下随便写个 就可以跳转了。在element ui 导航栏上面跳转路由。原创 2024-03-25 23:04:11 · 568 阅读 · 3 评论 -
Vue2谷粒商城
1.初始化项目2. 安装vue 23.编写基本代码。原创 2024-03-24 21:46:18 · 232 阅读 · 1 评论 -
谷粒商城 - 前端基础 之 模块化
【代码】谷粒商城 - 前端基础 之 模块化。原创 2024-03-24 10:50:47 · 120 阅读 · 1 评论 -
谷粒商城 - 前端基础
const 就是常量 必须初始化,初始化后不能改变值。原创 2024-03-24 10:33:34 · 172 阅读 · 1 评论 -
分布式组件 gateway 网关
网关作为流量的入口,常用功能包括路由转发、权限校验、限流控制。原创 2024-03-23 22:38:44 · 595 阅读 · 1 评论 -
分布式组件 Nacos
写一些没有写过的新东西配置隔离默认: public (默认命名空间):默认新增所有的配置都在public空间下 比如新建一个命名空间 要想加上想要配置的命名空间 启动就好了 利用命名空间来作环境隔离所有的配置的集合,就叫配置集,就比如一个yaml文件就是一个配置集类似于配置文件名Data ID: 默认所有的配置集,都属于 DEFAULT_GROUP 组比如 双十一 用 一组配置618 用一组配置 想加个后缀也可以加上这个配置 每个微服务创建自己的命名空间,使用配置分组来区分环境把数据源 ,Myb原创 2024-03-23 21:31:39 · 537 阅读 · 1 评论 -
谷粒商城 分布式组件
【代码】谷粒商城 分布式组件。原创 2024-03-23 19:54:32 · 200 阅读 · 0 评论 -
谷粒商城 环境开始搭建
傻瓜式下一步.除了存储路径修改到其他盘打开如下链接,进入vagrant search 镜像 仓库使用vagrant 就能 连接virtualBox 迅速创建一个 Linux 系统安装vagrant重启电脑输入命令vagrant 看环境变量是否 安装成功这样就是安装成功了。原创 2024-03-17 11:44:44 · 391 阅读 · 2 评论