1. 1
  2. 2
  3. 3
最新发布 每页10条   共296条   当前第16页
  • 应该选

    maven聚合工程(多个mudule只编译、打包指定module)

    yexindonglai@163.com 2022-06-02 11:22 Maven

    1432°

    0

    打包单独的mudule项目1、进入工程ztuo-framework目录2、打包打包单独的mudule项目项目目录结构如下图,比如我现在只想打包market工程,应该怎么做呢?其实很简单,只需要按以下步骤即可1、进入工程ztuo-framework目录cdztuo-framework2、打包执行以下打包命令即可mvncleanpackage-plmarket-am-Dmaven.test.skip=true说明clean:清理项目install:安装项目(打包)-pl:打包指定模块,以逗号分隔-am:打包所指定模块的依赖模块-amd:打包所指定模块的依赖模块的依赖,含有传递依赖-rf:按指定顺序
  • 应该选

    手把手教你设计一个高并发秒杀系统

    yexindonglai@163.com 2022-05-24 17:50 架构

    1142°

    0

    前言1瞬时高并发2.页面静态化3秒杀按钮4读多写少5缓存问题5.1缓存击穿5.2缓存穿透6库存问题6.1数据库扣减库存6.2redis扣减库存6.3lua脚本扣减库存7分布式锁7.1setNx加锁7.2set加锁7.3释放锁7.4自旋锁7.5redisson8mq异步处理8.1消息丢失问题8.2重复消费问题8.3垃圾消息问题8.4延迟消费问题9如何限流?9.1对同一用户限流9.2对同一ip限流9.3对接口限流9.4加验证码9.5提高业务门槛完前言高并发下如何设计秒杀系统?这是一个高频面试题。这个问题看似简单,但是里面的水很深,它考查的是高并发场景下,从前端到后端多方面的知识。秒杀一般出现在商城
  • 应该选

    spring的5大作用域详解

    yexindonglai@163.com 2022-05-24 11:15 Spring

    4206°

    0

    Bean简介1、singleton作用域:2、prototype作用域:3、request作用域:4、session作用域:5、globalSession作用域:6、自定义scope注解方式配置Bean简介在Spring中,那些组成你应用程序的主体(backbone)及由SpringIoC容器所管理的对象,被称之为bean。简单地讲,bean就是由Spring容器初始化、装配及管理的对象,除此之外,bean就与应用程序中的其他对象没有什么区别了。而bean定义以及bean相互间的依赖关系将通过配置元数据来描述。Bean的作用域创建一个bean定义,其实质是用该bean定义对应的类来创建真正实例
  • 应该选

    表单重复提交、以及重复消费的幂等性问题解决方案

    yexindonglai@163.com 2022-05-23 14:23 后端

    1530°

    0

    什么是幂等性解决方案1、分布式锁+唯一索引2、token机制(防止重复提交)3、mysql数据库的唯一索引4、redissetnx命令5、状态机6、去重表7、乐观锁什么是幂等性幂等是一个数学上的概念,在软件行业里指的是多次相同的请求只会有一次修改,哪些情况下会导致幂等性问题呢?消息队列,为了保证消息不丢失,会有重发机制,有重发就会有重复消费的问题;微服务,服务之间的调用会有失败的情况,也会有重发机制,表单重复提交,前端的提交按钮在短时间内连续点击多次,就会有多个相同的请求同时打到后端;解决方案1、分布式锁+唯一索引索引可以是全局的唯一uuid,也可以是一个自增唯一的数字,在处理业务逻辑时进行上
  • 应该选

    RabbitMq 常用命令和REST API

    yexindonglai@163.com 2022-04-12 16:14 消息队列

    2148°

    0

    服务管理相关用户相关创建用户修改密码校验密码展示所有用户删除用户清除密码角色相关设置用户角色Vhost管理权限管理设置用户权限查看用户权限清除用户权限web管理相关开启/关闭web管理页面插件相关应用管理队列管理查看所有队列清除所有队列强制清除队列集群管理信息查看RESTAPI查看所有队列统计数据查看虚拟主机myvh下hello-queue队列的数据统计创建队列查看当前连接信息查看当前用户信息创建用户为新用户设置vhost服务管理相关启动:servicerabbitmq-serverstart或rabbitmq-servicestart关闭:servicerabbitmq-serverstop
  • 应该选

    常用git命令集锦

    yexindonglai@163.com 2022-04-12 11:26 git

    1337°

    0

    gitinit初始化gitinit-qgitinit—baregitinit—templatedirgitinit—separate-git-dirdirgitlog查看当前git提交记录gitremote命令gitremoteaddoriginurl创建远程仓库gitremote-v查看本地添加了哪些远程分支的地址gitremoteremovexxxgitpulloriginxxx拉取代码gitadd.将文件保存到缓存区gitcommit-m‘xxx’提交到本地仓库gitpushoriginxxx推送到远程仓库gitpullurl拉取远程仓库的代码且与本地代码合并gitfetchurl拉取远
  • 应该选

    Hystrix底层原理

    yexindonglai@163.com 2022-04-09 00:02 Hystrix

    986°

    0

    Hystrix底层原理Metrics是什么Hystrix底层原理通过配置或注解的方式构建Hystrix的Command对象,调用执行方法(调用其他服务)Hystrix会检查当前服务的熔断器是否开启,若开启,则执行降级逻辑Fallback方法,返回友好提示若熔断器开关关闭,则Hystrix检查当前熔断器的线程池是否能接收新的请求,若线程池已满则拒绝请求,执行降级熔断逻辑,并上报Metrices。(注:不同熔断器可以共用一个线程池,线程池名称不同的话是相互隔离的,commandKey区分熔断器,threadPoolKey区分线程池)若线程池接收请求,则Hystrix调用服务逻辑的run方法。若服务
  • 应该选

    消息队列MQ常见问题和解决方案

    yexindonglai@163.com 2022-04-03 15:32 消息队列

    2157°

    0

    一、前言1、消息队列是什么2、为什么需要消息队列2.1、传统模式2.2、消息模式2.3、市面上常见的消息队列有哪些二、消息队列会出现哪些问题?1、消息丢失1.1、生产者发送给broker防止消息丢失1.1.1、生产者发送失败了怎么办?1.2、broker防止消息丢失1.3、消费者防止消息丢失1.3.1、broker发送给消费者进行消费(发送模式)1.3.1.1.、如果broker未收到消费者返回的ack怎么办?1.3.2消费者主动去broker拉取消息进行消费(拉取模式)2、幂等性问题:重复消费3、消费速率问题:如果broker发送太快了,消费者无法承受这么大的流量怎么办?4、消息积压4.1、
  • 应该选

    redis实现分布式锁

    yexindonglai@163.com 2022-04-01 16:55 Redis

    1078°

    0

    什么是分布式锁实现分布式锁的方式redis实现分布式锁什么是分布式锁分布式锁的作用是为了在分布式环境下保证数据的一致性,是解决服务间通讯安全的一种手段,指的是将并行调用转为串行调用,防止多个服务在修改一个变量时产生的数据不一致问题;如下图实现分布式锁的方式就目前而言比较主流的分布式锁实现方式有2种rediszookeeperredis实现分布式锁今天我们主要谈使用redis来实现分布式锁,通常这也是面试经常问道的问题之一,
  • 应该选

    redis常用命令集锦

    yexindonglai@163.com 2022-04-01 15:38 Redis

    1517°

    0

    redis数据类型启动redisredis-cli命令连接到服务端连接密码所有命令string数据类型命令数值的操作String的set命令实现hash功能bitmap位图操作setbitbitpos命令bitcountbitop按位与、按位或运算bitmap有什么用?list(链表)常用命令lpush头插rpush尾插lrange命令lindex命令lpoprpopblpopbrpoplremlinsertllenLTRIMhashhash的lset命令hgethmset命令hmget命令hkeyshvalshgetallHINCRBY数值计算HINCRBYFLOAT小数计算setsadds