自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 MySQL优化必备知识-InnoDB事务锁(上)

尝试插入值5和6的单独事务在获得插入行的独占锁之前,每个事务都使用插入意向锁锁定4和7之间的间隙,但不会相互阻塞,因为这些行是非冲突的。尝试分别插入值为5和6的单独事务,在获得插入行的独占锁之前,每个事务都使用插入意图锁锁定4和7之间的间隙,但不会相互阻止,因为这些行不冲突。如果一个会话对索引中的记录R具有共享或独占锁定,则另一个会话无法在索引顺序中R之前的间隙中插入新的索引记录。在插入新的辅助索引记录之前执行重复检查扫描时,以及在插入新的辅助索引记录时,更新操作还对受影响的辅助索引记录使用共享锁。

2024-02-01 17:15:38 1225

原创 MySQL优化必备知识-索引篇

索引用于快速查找具有特定列值的行。如果没有索引,MySQL必须从第一行开始,然后读取整个表以查找相关行。表越大,成本越高。如果表中有相关列的索引,MySQL可以快速确定在数据文件中间查找的位置,而不必查看所有数据。这比按顺序读取每一行要快得多。提高SELECT操作性能的最佳方法是在查询中测试的一个或多个列上创建索引。索引项的作用类似于指向表行的指针,允许查询快速确定哪些行与WHERE子句中的条件匹配,并检索这些行的其他列值。可以索引所有MySQL数据类型。

2024-02-01 17:14:03 1064

原创 Nginx附-实战之负载均衡时怎么让请求不转发到一台正在启动的tomcat服务器上

用nginx做负载均衡的时候,当一台挂掉的时候,请求会转发到另外一台。但挂掉这一台的tomcat服务在启动过程中,Nginx请求可能会转发到这台正在启动的服务器上,就会一直等待直到超时,前端使用者的体验就会很差。如何让Nginx等待tomcat启动完成后才转发请求到服务器呢?

2023-12-25 08:22:14 830

原创 Nginx(26)-构建Nginx高可用、集群及性能监控

高可用性的核心理念是在多个活跃节点上进行负载均衡、主-主、主-备故障转移,高可用性应用不会出现单点故障。通过Nginx负载均衡,被代理的应用服务器达到了高可用目的。作为一个高可用理念的完整系统,Nginx本身也应该是高可用的。

2023-12-20 08:22:55 1240 1

原创 Nginx(25)-Nginx Plus增强功能之缓存清除、复杂媒体流支持、安全防护

Nginx Plus在缓存清除、复杂媒体流支持、安全防护也做了增强。

2023-12-18 08:17:29 1683

原创 Nginx(24)-Nginx Plus增强功能之身份验证JWT

使用NGINX Plus,可以使用JWT身份验证来控制对资源的访问。JWT 规范是 OpenID Connect 的重要基础,它为 OAuth 2.0 生态系统提供了单点登录令牌。JWT 本身还可以用作身份验证凭证,相比传统 API 密钥,它提供了一种更好的对基于 Web 的 API 的访问控制。API和微服务的部署者也在转向JWT标准,因为它的简单性和灵活性。使用JWT身份验证,客户端提供一个JSON Web令牌,该令牌将根据本地密钥文件或远程服务进行验证。

2023-12-13 08:36:08 1772

原创 Nginx(23)-Nginx Plus增强功能之负载均衡

Nginx作为开源版,提供大量的丰富功能,能满足大部分需要。Nginx Plus是Nginx的加强版,是在开源Nginx功能基础上,提供了许多适合生产环境的专业功能,包括高可用性、主动健康检查、DNS 系统发现、会话保持和 RESTful API等,但这些功能基本都需要收费。本文讲述这些增强功能。

2023-12-10 10:06:57 1380

原创 Nginx(22)-网络传输层负载均衡-Stream和Mail

前面章节主要讲述Nginx对http协议的支持,这也是Nginx使用最广泛的功能。本节补充讲述Nginx对Stream协议和Mail协议的支持。

2023-12-06 14:32:01 1536

原创 Nginx(21)-十几种提升性能的优化方法

无论何种类型的服务器或应用,其性能都取决于许多可变项,包括但不限于物理硬件、操作系统、数据库、应用服务器等中间件、应用结构等。性能优化通常在碰到性能瓶颈时才进行调优测试,确定瓶颈,改进限制,并不断重复,直至满足性能需求。本文仅针对Nginx作为一个中间件如何进行性能优化,解决出现在Nginx这个环节的瓶颈。如果是第一次优化,性能提升达到10倍都不是梦。

2023-12-04 08:35:33 1163

原创 Nginx(20)-多种调试配置的方法与技巧

NGINX功能强大,模块多,对复杂需求要正确配置或正确调优,是有一定难度的。因此,如何进行配置调试就很重要,特别是对于生产环境调试。本文主要提供调试方法或技巧,对于配置调试Nginx非常又帮助。

2023-11-29 08:28:54 1323

原创 Nginx(19)-更多实用功能:身份认证、流媒体支持、大文件传输、流量镜像、分片、获取客户端真实ip等

Nginx具有很多强大功能,专栏前面讲述的主要是常用功能。本文主要讲述常用之外的其它实用功能,如身份认证、流媒体支持、大文件传输等。为充分利用Nginx,对这些技术都又必要了解。

2023-11-26 13:18:23 1361

原创 Nginx(18)-如何支持FastCGI/SCGI/uWSGI

最初用浏览器浏览的网页只能是静态html页面。随着社会发展,动态获取数据、操作数据需要变得日益强烈,CGI应运而生。CGI(Common Gateway Interface)公共网关接口,是外部扩展应用程序与静态Web服务器交互的一个标准接口。它可以使外部程序处理浏览器送来的表单数据并对此作出响应,响应结果可直接返回给浏览器。CGI技术示意图如下:CGI程序可以用任何脚本语言或独立编程语言实现。然而,由于每次请求都需要启动一个新的程序,导致CGI的性能相对较低,扩展性也较差。

2023-11-23 09:43:44 1214

原创 Nginx(17)-安全管控之防暴露、限制访问、防DDos攻击、防爬虫、防非法引用

安全是每个系统都需要考虑的关键因素,Nginx在这方面提供了丰富的功能,使我们可以就实际情形做很精细调整。这些功能包括防信息暴露、客户端访问限制、通讯加密、防DDos攻击、防爬虫、防非法引用及防非法域名请求等。

2023-11-22 08:49:53 1758 1

原创 Nginx(16)-利用http2/http3提升系统性能及支持websocket

HTTP( Hyper Text Transfer Protocol 超文本传输协议)是为Web浏览器与Web服务器之间的通信而设计的应用层传输协议,用于传输超文本文档,基于TCP协议。HTTP/2和HTTP/3都是HTTP发展产物,当前主流是HTTP/2,所有客户端器和服务端均支持。HTTP/3支持还并不那么全面。Nginx也是在最新版本Nginx1.25版本开始支持HTTP/3。

2023-11-21 13:34:23 1009

原创 Nginx(15)-快速解决CORS问题

CORS是一个W3C标准,全称是跨域资源共享(Cross-Origin Resource Sharing)。它允许浏览器向跨源服务器,发出XML HttpRequest(XHR) 或Fetch API跨域 HTTP 请求,从而克服了同源使用的限制。CORS 需要浏览器和服务器同时支持。目前,所有浏览器都支持该功能,整个 CORS 通信过程,浏览器自动完成,不需要用户参与。CORS 对开发者透明,CORS 通信与同源的 AJAX 通信没有差别,代码完全一样。

2023-11-20 08:00:21 2538

转载 OpenAI管理层“地震”,没有阿尔特曼,OpenAI的商业化是否就此终结?

据OpenAI的声明,之所以对阿尔特曼进行罢免,是由于董事会之前启动的一项特别调查,结论是阿尔特曼在与董事会沟通过程中没有完全的坦诚,董事会丧失了对其继续领导公司的信心,决定由公司首席技术官米拉·穆拉蒂接替阿尔特曼,担任公司过渡CEO。Forrester的AI分析师Rowan Curran表示,从OpenAI官方的措辞,以及大股东微软最近几周对该公司展现的信心来看,阿尔特曼的离职与他的个人问题有关,而不是OpenAI的庞大业务出现了问题。”今年7月份的一次采访中,他称最担心未来几年强大的AGI带来的危险。

2023-11-19 14:44:39 117

原创 Nginx(14)-HTTPS优化配置及典型问题

HTTPS是在 HTTP 协议的基础上使用 TLS/SSL 加密,其主要目标是提高数据传输的安全性。从HTTP2.0开始,HTTPS已经是网站的标准协议,很多开放平台非HTTPS不能访问。Nginx为HTTPS提供了强大的支持,且对应用服务器是完全透明的。

2023-11-16 21:59:07 1368 1

原创 Nginx(13)-数据压缩是显著提升性能最简单方式

压缩数据是一个重要的、潜在的性能加速器。图片(JPEG 和 PNG)、视频 (MPEG-4)和音乐 (MP3) 等文件都有着精心打造和非常高效的压缩标准,其中任何一个标准都可以将文件缩小一个数量级甚至更多。而HTML(包括纯文本和 HTML 标签)、CSS 和代码(如 JavaScript)等文本数据经常在不压缩的情况下进行传输。压缩这些数据可能会对可感知到的 Web 应用性能产生特别明显的影响,尤其是对速度缓慢或移动连接受限的客户端来说。

2023-11-15 10:54:14 389

原创 Nginx(12)-流量管控之分流、访问控制、限制连接速度、限制连接数量、限制带宽

NGINX 可智能地路由流量,并根据多个属性控制流量,包括:分流;利用客户端的地理位置进行访问控制;通过速率、连接数和带宽限制流量。

2023-11-14 09:44:45 905

原创 Nginx(11)-缓存详细配置及缓存多种用法

缓存可以提高性能并减少负载,这意味着可以用更少的资源更快地提供服务。NGINX 允许在NGINX 服务器的任何地方缓存内容。借助 NGINX 缓存,还可以在代理的服务器发生故障时被动地缓存并提供缓存的响应。缓存功能仅在 http 上下文中可用。

2023-11-13 12:08:25 5306 2

原创 Nginx(10)-负载均衡详细配置及健康检查

负载均衡就是将前端过来的负载分发到两台或多台应用服务器。Nginx支持多种协议的负载均衡,包括http(s)、TCP、UDP(关于TCP、UDP负载均衡另文讲述)等。

2023-11-10 08:47:30 1621

原创 Nginx(09)-强大的重写重定向

Nginx重写主要目标是基于改写URI,返回重定向和有条件地选择配置。

2023-11-09 08:38:13 143

原创 Nginx(08)-反向代理

反向代理(Proxy)指用代理服务器接受外部的连接请求,然后将请求转发给真实提供服务的服务器,并将从服务器上得到的结果返回给请求连接的客户端。示意图如下:保护目标服务器的资源安全:反向代理可以隐藏目标服务器的真实 IP 地址和端口,防止恶意用户直接攻击目标服务器。只有反向代理服务器对外可见,从而保护了目标服务器的资源安全。节省有限的 IP 地址资源:由于公网 IPv4 地址资源有限,通过使用反向代理,可以将多个后端服务器(用内网ip地址即可)隐藏在同一个公网 IP地址后面。

2023-11-08 08:44:00 124

原创 Nginx(07)-web服务从C10k到C100k高性能

Nginx初衷就是解决 C10K 问题:即客户端同时处理10,000 个连接的问题。因此作为Web服务器就是其最基础的功能。当前B/S应用实现一般都采用动态分离,Nginx作为静态Web服务器是个很好的选择。

2023-11-07 08:36:30 137

原创 Nginx(06)-日志配置与作用

利用日志查找配置问题或应用故障是常用手段。使用 NGINX 可有效控制对应用有意义的日志信息。NGINX 允许您根据不同的上下文将日志以不同的格式拆分到不同的文件中,并更改错误日志的日志级别,以更深入地了解当前状况。

2023-11-06 08:33:26 216

原创 Nginx(05)-http工作机制、配置指令和内置变量

http服务是Nginx最原始的服务,搞清楚其工作机制非常有利于弄懂nginx是如何工作的。Nginx核心模块为ngx_http_core_module。

2023-11-05 11:22:07 663

原创 Nginx(04)-全局配置核心指令

核心指令主要在nginx.conf的主上下文和event上下文中使用。

2023-11-03 08:41:47 148

原创 Nginx(03)-配置结构简述

本文主要讲述Nginx配置文件结构及调试技巧。

2023-11-02 08:39:12 219

原创 生产环境超时问题最佳实践-从timeout导致500错误获得

根据生产环境发生的500错误,发现是timeout问题导致。由于涉及环节多,因此有该最佳实践之说

2023-11-01 11:53:41 245

原创 Nginx(02)-rhel、debian、Ubuntu、SUSE安装

本文主要讲述Nginx在Linux下的yum安装方式。Yum安装一般用root模式。

2023-10-31 21:05:23 339

原创 Nginx(01)-产品族概览

Nginx是当今使用最广泛的 Web 服务器之一。2021年W3Techs 宣布, Nginx市场份额超越 Apache HTTP Server 成为全球最常用的 Web 服务器,最新Web Server排名如图所示(实际超过4亿站点实用Nginx)。Nginx由Igor Sysoev在2001年创建,其初衷是解决 C10K 问题:即客户端同时处理10,000 个连接的问题。Nginx采用了轻量级、可扩展且功能强大的事件驱动型架构,易于新增动态模块;

2023-10-29 21:31:11 434 1

转载 程序员易读错单词发音

程序员常见单词但易读错,笔者自己发音正确率也实在有点低啊,因此记录分享。

2023-10-29 09:25:56 233

原创 Notepad++正则查询替换操作

Notepad++编辑器查找功能非常强大,本处记录一些实战中常用到复杂查询替换操作。注意:如果是重要文件,替换操作前最好备份;当前一个操作后也可以用ctrl+z恢复。

2023-10-23 08:59:13 8330

原创 一起学SF框架系列附-常用官网及知识点资源链接推荐

学习SpringFramework过程中,用到的一些好的资源链接罗列

2023-10-16 15:35:50 148

原创 一起学SF框架系列补-模块core-cglib之Enhancer

Enhancer是CGLIB中最常用的一个类,和Java1.3动态代理中引入的Proxy类差不多。但和Proxy不同的是,Enhancer既能够代理普通的class,也能够代理接口。

2023-10-10 10:22:58 168

原创 Docker常用命令

docker最常用命令,所有命令均在centos7下实际使用。

2023-09-26 09:41:29 109

转载 国产AI登上《自然》:盘古大模型破解气象领域一大难题

在数值方法应用最广泛的领域如中长期预报中,现有的AI预报方法精度仍然显著低于数值预报方法,并受到可解释性欠缺,极端天气预测不准等问题的制约。今年5月,台风“玛娃”走向受到广泛关注。在刚刚结束的第19届世界气象大会上,欧洲中期天气预报中心也指出,盘古气象大模型在精度上有不可否认的能力,纯数据驱动的AI天气预报模型,展现出了可与数值模式媲美的预报实力。盘古大模型研发团队发现,AI气象预报模型的精度不足主要有两个原因:第一,原有的AI气象预报模型都是基于2D神经网络,无法很好地处理不均匀的3D气象数据;

2023-09-18 10:04:34 236

原创 一起学SF框架系列附-Springframework源码学习总结

1、采用应用跟踪方法为主,即编写最简单应用,然后以应用容器ClassPathApplicationContext初始化为起点,跟踪初始化全过程:容器初始化、加载资源、加载Bean定义及Bean初始化;同时把初始化过程同各个技术结合点入手,跟进具体技术如何实现。个人认为这种方法最有效的特点就是实现和结果印证,有助于对框架的理解。2、学习过程中仅仅看源码是远远不够,还需要到做如下几点:2.1 用UML工具画类关系图,这样才容易建立相关点的整体印象。

2023-08-28 10:35:49 119

原创 一起学SF框架系列7.4-spring-AOP-AOP代理创建

创建bean的代理对象。= null) {// 为给定的bean类和bean名称构建一个缓存键= bean) {// bean没有对应的代理,则创建代理// 如果目标bean已存在(在bean实例化前创建的),直接返回// 目标bean不是advisedBean,直接返回// 如果是基础类(是不能被代理的)或者 应该跳过的bean(“跳过”意思是给定的bean不应被此后处理器进行自动代理),直接返回/* 创建代理类 */

2023-08-21 09:30:37 106

原创 一起学SF框架系列7.3-spring-AOP-AOP配置解析

AOP的实现在SF框架中,统一作为Bean来解析处理,因此加载过程同一般bean基本相同(详细过程见”“),所不同的是:1、AOP对应的命名空间为”aop"2、AOP的NamespaceHandler对应的是AopNamespaceHandler。

2023-08-16 21:37:03 166

scrum使用的工具及模板

scrum使用的工具及模板,包括ProductBacklog模板、Scrum模板样例、SprintBacklog模板、用户故事卡样例等。适合于想引入scrum过程开始阶段。

2023-04-21

Tomcat8 server.xml详尽且可直接使用配置,每个参数都进行了详细说明,按需要进行微调即可

Tomcat8 server.xml详尽且可直接使用配置,每个参数都进行了详细说明,按需要进行微调即可,没有列出的参数通常采用默认值即可。形式如下: <!--Executor表示可以在Service中的组件之间共享的线程池。 name:线程池名称,用于 Connector中指定 maxThreads:池中最大线程数 ... <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="1000" minSpareThreads="50" prestartminSpareThreads="true" /> 如果需要更详细了解,参考默认安装的doc文档:http://127.0.0.1:16180/docs/config/ 如果想了解tomcat架构中文信息,推荐参考:https://blog.51cto.com/u_14057963/5222326

2023-03-13

ChatGPT实现秒杀代码及回答

chatGPT是当前最火的AIGC话题,感觉其无所不能。其编程能力也非常出众,本资料是让ChatGPT用java实现秒杀,记录实现秒杀代码及回答。具体过程见:https://blog.youkuaiyun.com/davidwkx/article/details/129375212

2023-03-07

Python网络爬虫-绕过防爬措施

目前大部分网站都有一定的反爬措施,最常见措施就是限制每个 IP 的访问速度或访问次数,超出了它的限制你的 IP 就会被封掉。使用代理 IP 去访问目标网址可以有效地解决这个问题:访问速度或访问次数。代理ip通常有免费的和付费的,免费的通常很不稳定,可用于学习技术或需爬的资料较少的情况。付费的ip适用于需要大量爬取资料,可按需要去找相关代理ip提供商,选择合适价格的。本资源为一个实用的网络爬虫代码,语言为python3.x

2023-03-06

Nginx在线运行系统之实战配置

本文以实际运行系统的nginx.conf配置来讲述配置参数,涉及**基本配置、负载均衡、SSL、多域名、配置片段、微信文件动态验证、升级自动提示、防域名劫持**等各种实战实际情况。

2023-02-22

vue面试题且全部详解

vue面试题且全部详解,不为面试,也有助于全面学习理解vue

2023-02-21

程序员建立模板,核心在于如何让HR或面试官一眼看出你的能力或特点

程序员建立模板,核心在于如何让HR或面试官一眼看出你的能力或特点,本模板给出具体写法思路

2023-02-20

Mysql基础面试题及解答

Mysql基础面试题

2023-02-20

Spring、SpringBoot、SpringCloud面试集锦

Spring、SpringBoot、SpringCloud面试集锦

2023-02-20

Memcached、Redis、MySQL存储层面试问题

Memcached、Redis、MySQL存储层面试问题

2023-02-20

Java高级程序员面试题,非基础并发为主

Java高级程序员面试题,非基础并发为主

2023-02-20

系统设计师面试题,要求比较全面,大家可以按面试题学习准备

系统设计师面试题,要求比较全面,大家可以按面试题学习准备

2023-02-20

软件架构师面试题,要求比较全面,大家可以按面试题学习准备

软件架构师面试题,要求比较全面,大家可以按面试题学习准备

2023-02-20

需求分析师面试题,要求比较全面,大家可以按面试题学习准备

需求分析师面试题,要求比较全面,大家可以按面试题学习准备

2023-02-20

产品经理面试题,大家可以按面试题学习准备

产品经理面试题,要求比较全面,大家可以按面试题学习准备

2023-02-20

空空如也

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

TA关注的人

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