Tips杂记

🥲 🥸 🤌 🫀 🫁 🥷  🐻‍❄️🦤 🪶 🦭 🪲 🪳 🪰 🪱 🪴 🫐 🫒 🫑 🫓 🫔 🫕 🦤 🪶 🦭 🪲 🪳 🪰 🪱 🐻‍❄️ 🫐 🫒 🫑 🫓 🫔 🫕

 ♔博主昵称:�欢快↑㎡

🕍博客主页:�欢快↑㎡的博客_CSDN博客-学习注意点杂记,BUG集,安装教程领域博主

🥗感谢点赞🤞🏻评论

⚇很方便的在线编辑器:Lightly

相信吧!🤜🏻我们很优秀,还可以更加优秀,加油!🌼让我们一起在写作中记录巩固学习吧!


前端:

  1. 定义变量的时候如果不赋初始值,可能导致前端显示Nan(不是数字),类型不匹配问题。
  2. 前端按钮点击,按钮有反应,但是没有像后端发请求,可能的原因是,发送请求的语句有问题。

数据库:

  1. 定时任务执行查询数据库,同时执行其他发货等操作,如果数据量过大,导致数据查询定时任务超时,发货部分数据发货失败

           解决方案,延长定时任务超时时间;设置查询数据条数(比如500条)

后端:

        1.可以使用变量初始化为false或者0来充当锁,当请求后变量赋值为true或者1,请求结束后,不管成功还是失败,都需要赋值为初始值,以此来防止多次请求等需求。需要注意,如果有try-catch,或者一些其他异步,也需要赋值为初始值,前端的抽奖动画可以采用这种方法。

        2.使用redis,如果数据量或者请求量比较大,需要注意热key,热key是指频繁查询,或者频繁操作(插入等操作)。

        解决方法(部分):1.单用户频控

                                         2.如果涉及发货类的,可以设置单日限量,单用户限量

                                         3.数据分片,通过计算分多个key(采用改后缀形式),同时可以读写分离,读写所用的key不同,通过定时任务,定时去查找已经写入的key,通过处理将数据写入读取所用的key。实现读写分离。

                                        4.读写分离这里要修数据实时性不需要那么高。

        3.方法经历简洁

           能复用的的代码提取出来写一个方法方便复用与迭代

           多写配置型代码来替代魔法变量,也方便修改与迭代

           常用的方法可以封装起来作为工具方法

        4.设置redis过期时间一般会设置比所需时间长一个月。
        5.在某种情况况下,== 与 >=都成立的情况下可以选择 >= 增加程序的容错性 。

        6.某些明文请求等不能有规律可循,防止恶意请求获取数据。例如订单编号不能是自增的,否则可能会替换订单编号参数请求获取数据。例如在线图片等资源地址中资源的名称可以使用MD5加密后然后随便插入一个或几个字符串,防止资源泄露或者被提前曝光。

        7.使用定时任务刷新数据时,需要注意定时任务要比数据刷新时间晚一点(按需求而定)。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/708497.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

UE5 C++ TPS开发 学习记录(七)

这节课是P16,主要是创建了生命周期的五个回调和委托还有句柄 MultiPlayerSessionSubsystem.h // Fill out your copyright notice in the Description page of Project Settings. #pragma once #include "CoreMinimal.h" #include "Subsystems/GameInstanceSu…

阿里云2核4G服务器租用价格85元一年,30元3个月

阿里云2核4G服务器多少钱一年?2核4G服务器1个月费用多少?2核4G服务器30元3个月、85元一年,轻量应用服务器2核4G4M带宽165元一年,本文阿里云服务器网整理的2核4G参加活动的主机是ECS经济型e实例和u1云服务器,阿里云服务…

三分钟数据持久化:Spring Boot, JPA 与 SQLite 的完美融合

三分钟,迎接一个更加高效和简便的开发体验。 在快节奏的软件开发领域,每一个简化工作流程的机会都不容错过。想要一个无需繁琐配置、能够迅速启动的数据持久化方案吗?这篇文章将是你的首选攻略。在这里,我们将向你展示如何将 Spri…

自然语言处理 | 语言模型(LM) 浅析

自然语言处理(NLP)中的语言模型(Language Model, LM)是一种统计模型,它的目标是计算一个给定文本序列的概率分布,即对于任意给定的一段文本序列(单词序列),语言模型能够估…

关于vue-seamless-scroll插件中使用echarts图表后有些模块中图表不渲染的问题的解决方案

参考网址&#xff1a;https://chenxuan0000.github.io/vue-seamless-scroll/guide/09-echart.html 拿vue2为例来说明 1、引入 执行npm install vue-seamless-scroll // main.js import scroll from vue-seamless-scroll Vue.use(scroll)2、使用 <template><vue-se…

图搜索基础-深度优先搜索

图搜索基础-深度优先搜索 参考原理引入流程解析手推例子 代码实现运行结果结果分析 参考 理论参考&#xff1a;深蓝学院 实现参考&#xff1a;github项目 原理 引入 对于这样一个图&#xff0c;我们试图找到S到G的通路&#xff1a; 计算机程序不会像人眼一样&#xff0c;一…

kafka学习问题

查看topic列表报超时 报错如下&#xff1a; Error while executing topic command : Timed out waiting for a node assignment. Call: listTopics [2024-02-28 14:36:57,024] ERROR org.apache.kafka.common.errors.TimeoutException: Timed out waiting for a node assignm…

如何做代币分析:以 USDT 币为例

作者&#xff1a;lesleyfootprint.network 编译&#xff1a;cicifootprint.network 数据源&#xff1a;USDT Token Dashboard &#xff08;仅包括以太坊数据&#xff09; 在加密货币和数字资产领域&#xff0c;代币分析起着至关重要的作用。代币分析指的是深入研究与代币相关…

DolphinScheduler——工作流实例的生命周期

目录 一、DolphinScheduler架构原理 1.1 系统架构图 1.2 DolphinScheduler核心概念 1.2 创建工作流 1.2.1 如何触发一个工作流实例 1.2.2 任务调度链路监控 1.2.3 Workflow-DAG解析 DAG解析 Dispatch分发流程 Master和Worker的交互过程 1.3 任务运行状态 该篇文章主…

Python·算法·每日一题(2月29日)正则表达式匹配

题目 给你一个字符串 s 和一个字符规律 p&#xff0c;请你来实现一个支持 ‘.’ 和 ‘*’ 的正则表达式匹配。 ‘.’ 匹配任意单个字符‘*’ 匹配零个或多个前面的那一个元素 所谓匹配&#xff0c;是要涵盖 整个 字符串 s的&#xff0c;而不是部分字符串。 示例 示例一 输入…

总是 -bash: gomobile: 命令未找到

总是 -bash: gomobile: 命令未找到 问题描述 我的项目是/Users/$user/go/src/abc.com/project 当我尝试在 /Users/GaryChan/go/src/abc.com/project/sdk 并运行: export ANDROID_HOME/Users/$user/Library/Android/sdk/ndk-bundle/gomobile bind -targetandroid abc.com/p…

【Web】Java反序列化之CC6--HashMap版

前文&#xff1a; 【Web】Java反序列化之再看CC1--LazyMap 上面这篇文章提到&#xff0c;只要调用的LazyMap的get方法&#xff0c;就可以最终完成transform的调用。 在高版本下&#xff0c;CC1不再能打通&#xff0c;CC6依然通用&#xff0c;其反序列化入口不再是Annotation…

Leetcode : 215. 数组中的第 K 个最大元素

给定整数数组 nums 和整数 k&#xff0c;请返回数组中第 k 个最大的元素。 请注意&#xff0c;你需要找的是数组排序后的第 k 个最大的元素&#xff0c;而不是第 k 个不同的元素。 你必须设计并实现时间复杂度为 O(n) 的算法解决此问题。 思路&#xff1a;最开始排序算法&…

MySQL 存储过程批量插入总结

功能需求背景&#xff1a;今天接到产品经理核心业务表的数据压测功能&#xff0c;让我向核心业务表插入百万级的业务量数据&#xff0c;我首先想到的办法就是存储过程实现数据的批量 。 由于无法提供核心业务表&#xff0c;本文仅仅提供我刚刚自己创建的表bds_base_user 表做相…

2.28 进程间的通信 管道 and信号

1.进程间的通信: 1.管道 2.信号 3.消息队列 4.共享内存 5.信号灯 6.套接字 1.管道: 1.无名管道 无名管道只能用于具有亲缘关系的进程间通信 pipe int pipe(int pipefd[2]); 功能: 创建一个无名管道 参数: …

解决vue3按注册名动态渲染组件在setup中无效的问题

在setup语法糖中&#xff0c;按注册名动态渲染组件无效&#xff1a; <template><component :is"cpnName" /> </template> <script setup>import QuesTypeContent from ./QuesTypeContent.vue;const cpnName QuesTypeContent; </script&…

nginx 反向代理 与缓存功能

一 理论说明 &#xff08;一&#xff09;反向代理简介 反向代理&#xff1a;reverse proxy&#xff0c;指的是代理外网用户的请求到内部的指定的服务器&#xff0c;并将数据返回给用户的一种方式&#xff0c;这是用的比较多的一种方式。 即 代理服务机 Nginx 除了可以在企…

算法——滑动窗口之最大连续1的个数、将x减到0的最小操作数、水果成篮

3.最大连续1的个数 题目:. - 力扣&#xff08;LeetCode&#xff09; 题目要求的是给定一个二进制数组 nums 和一个整数 k&#xff0c;如果可以翻转最多 k 个 0 &#xff0c;则返回 数组中连续 1 的最大个数 。 按照题目正面去做,还要替换0,很麻烦 反正我们最后要求的是最长…

YOLOv8改进 | 独家创新篇 | 结合SOTA思想利用双主干网络改进YOLOv8(全网独家创新,最重磅的更新)

一、本文介绍 本文给大家带来的改进机制是结合目前SOTAYOLOv9的思想利用双主干网络来改进YOLOv8(本专栏目前发布以来改进最大的内容,同时本文内容为我个人一手整理全网独家首发 | 就连V9官方不支持的模型宽度和深度修改我都均已提供,本文内容支持YOLOv8全系列模型从n到x均可…

刷题笔记 洛谷 P1162 填涂颜色

思路来自 大佬 hat.openai.com/c/9c30032e-5fb9-4677-8c15-9ea6530dc6db 题目链接 P1162 填涂颜色 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 思路 搜索 首先 在外面围上一圈0开始搜素 因为题目说将封闭区域内的0变成2 我们可以在外面进行搜索 把外面所有可以搜索…