tools
未读1.安装VS生成工具
前往VS下载界面,下滑到底部,找到VS 2022 生成工具并下载,下载后双击vs_BuildTools.exe文件安装
安装完成后会打开这个界面
2.安装环境
这个安装过程参考官方文档
为什么选msvc?c/c++环境也可以使用mingw,而且体积相对来说小很多,不过我之前rust使用mingw作为工具链时会出现各种各样的问题,实在是不想折腾了(主要出现的问题也不好解决),还是使用msvc更省事
2.1 MSVC
点击单个组件,搜索MSVC v143 - VS 2022 C++ x64/x86 build tools,勾选上
2.2 Windows SDK
搜索windows,找到对应win版本的SDK下载,我使用的win11,所以选择win11 SDK,直接勾选最新版本就行
2.3 语言包
点击语言包,勾选英语
2.4 安装
点击顶部安装位置可以修改一个合适的安装位置,查看右边单个组件无误后点击安装即可
2.5 添加环境
安装后的MSVC并不能识别,必须添加环境变量,在MSVC安装文件夹下找到cl.exe文件,路径大概是A:\env\MSVC\ ...
1.问题
在Tauri构建时会从github下载Wix和NSIS工具,因为国内网络原因导致下载失败(貌似使用了代理也没用),解决办法是提前下载这两个工具到本地
Running light to produce X:\Tauri\tauri-shop-admin\src-tauri\target\release\bundle\msi\tauri-shop-admin_0.1.0_x64_en-US.msi Warn NSIS directory contains mis-hashed files. Redownloading them. Downloading https://github.com/tauri-apps/nsis-tauri-utils/releases/download/nsis_tauri_utils-v0.4.1/nsis_tauri_utils.dllfailed to bundle project: `https://github.com/tauri-apps/nsis-tauri-utils/releases/download/nsis_tau ...
Seata
1.简介
Seata是什么?
Seata 是一款开源的分布式事务解决方案,致力于在微服务架构下提供高性能和简单易用的分布式事务服务。在 Seata 开源之前,其内部版本在阿里系内部一直扮演着应用架构层数据一致性的中间件角色,帮助经济体平稳的度过历年的双11,对上层业务进行了有力的技术支撑。经过多年沉淀与积累,其商业化产品先后在阿里云、金融云上售卖。2019.1 为了打造更加完善的技术生态和普惠技术成果,Seata 正式宣布对外开源,未来 Seata 将以社区共建的形式帮助用户快速落地分布式事务解决方案。
2.快速开始
1.示例
在这个架构图中,Business模块调用了Storage模块和Order模块,而Order模块又调用了Account模块,不同于单体架构,由于各个模块以微服务的方式相互独立,我们不能保证Business执行的方法具有事务性,也不能简单的通过@Transactional注解实现事务,因为无法确定远程调用是否成功
2.解决方案
我们只需要使用一个 @GlobalTransactional 注解在业务方法上:
@GlobalTransaction ...
sentinel
1.简介
Sentinel 是面向分布式、多语言异构化服务架构的流量治理组件,主要以流量为切入点,从流量控制、流量路由、熔断降级、系统自适应保护等多个维度来帮助用户保障微服务的稳定性。
2.快速使用
1.下载
前往sentinel的发布页面下载sentinel的jar包,最好放到一个没有中文目录的文件夹
2.启动
java -jar .\sentinel-dashboard-1.8.8.jar
3.额外配置
可以通过命令行传递参数对sentinel进行一些额外的配置,但是每次都需要使用一长串命令很不方便,还有一个更好的办法,这个办法对springboot应用的jar包都有用
在jar包的同一个文件夹下新建一个 application.yml 文件,然后在文件中配置想要配置的参数,然后使用java命令启动时会自动读取这个文件的配置,而且优先级更高,下面是一个示例
# 端口server: port: 9999 # sentinel控制台的地址csp: sentinel: dashboard: server: loca ...
Docker
1.简介
官方介绍
一个为增强开发而设计的强大平台
Docker 的一系列集成工具为构建、安全管理和部署容器化应用程序提供了一站式解决方案。快速的本地开发、安全的镜像管理以及基于云的构建——这一切都包含在一个为现代软件开发设计的平台中。
总之,docker可以帮我们快速部署项目
2.安装
1.卸载旧版
sudo yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-engine \ docker-selinux
2.设置仓库
安装工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
添加docker的官方仓库
sudo yum-config-man ...
gateway
[[toc]]
1.概述
是什么?
Spring Cloud Gateway 是一个基于 Spring Framework 和 Spring Boot 构建的 API 网关框架,用于路由和负载均衡。
有什么用?
路由功能:Spring Cloud Gateway 通过配置的路由规则,将外部请求转发到后端服务。这些路由可以基于请求的 URL、HTTP 方法、请求头等进行匹配。
负载均衡:Spring Cloud Gateway 可以与 Spring Cloud LoadBalancer 配合,进行请求的负载均衡,确保请求的流量均衡地分配到各个后端服务。
过滤器:可以使用过滤器进行请求和响应的预处理或后处理,例如认证、日志记录、请求转发等。
动态路由:支持根据条件(如用户身份、请求参数等)动态修改路由规则。
集成其他 Spring Cloud 组件:Spring Cloud Gateway 与其他 Spring Cloud 项目(如 Spring Cloud Config、Spring Cloud Discovery、Spring Security 等)无缝集成,能 ...
在公网部署前端项目是很方便的,Vercel、Netlify、Cloudflare等等都可以很快地部署一个前端页面(前端部署是这样的,你只要上传文件就可以,而后端部署要考虑的就很多了,没有云服务器)
现在我部署了一个前端页面,我想让这个页面可以访问我本地电脑上运行的后端服务,不用云服务器怎么做?
查看IPv6地址
家里的路由器有IPv6地址,可以使用命令ipconfig查看,或者直接点击这个在线测试网站查看
创建后端项目
以springboot为例,创建一个后端项目,需要导入spring-boot-starter-web依赖
创建一个简单的测试接口,启动项目访问localhost:8080,会显示Hello World!
@RestController@CrossOrigin // 允许跨域请求public class TestController { @GetMapping public String test() { return "Hello World!"; }}
在appli ...
tools
未读开启邮件SMTP服务
1. SMTP服务是什么?
SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)是用于发送和接收电子邮件的通信协议,是电子邮件系统中最基础的协议之一。它负责在邮件服务器之间传输邮件,但在客户端中,通常只用于发送邮件。
简单来说,SMTP服务的作用是发送电子邮件,而开启SMTP服务可以让我们使用编程语言发送邮件
2. 开启SMTP服务
以QQ邮箱为例,登陆QQ邮箱,点击界面右上角账号与安全,也可能需要先点击右上角头像然后点击账号与安全(qq邮箱如果绑定了微信则界面会不一样)
随后点击 安全设置 -> 开启服务
微信扫码发送短信后点击我已发送
复制授权码(保存好这个授权码),然后点击返回就完成了
3. 发送邮件
普通文本
以python为例发送一个电子邮件,注意修改发、收件人和授权码
import smtplibfrom email.mime.text import MIMETextfrom email.mime.multipart import MIMEMultipartsmtp_server = ...
openfeign
1.feign是什么?
Feign 是一个声明式的 Web 服务客户端。它使得编写 Web 服务客户端变得更加容易。要使用 Feign,你需要创建一个接口并对其进行注解。它支持可插拔的注解,包括 Feign 注解和 JAX-RS 注解。Feign 还支持可插拔的编码器和解码器。Spring Cloud 增加了对 Spring MVC 注解的支持,并允许使用 Spring Web 默认使用的相同 HttpMessageConverters。Spring Cloud 集成了 Eureka、Spring Cloud CircuitBreaker,以及 Spring Cloud LoadBalancer,以在使用 Feign 时提供负载均衡的 HTTP 客户端。
2.快速使用
导入openfeign和负载均衡器依赖
<!--openfeign--><dependency> <groupId>org.springframework.cloud</groupId> <artifactId>sprin ...