- 博客(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(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
原创 生产环境超时问题最佳实践-从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
原创 Notepad++正则查询替换操作
Notepad++编辑器查找功能非常强大,本处记录一些实战中常用到复杂查询替换操作。注意:如果是重要文件,替换操作前最好备份;当前一个操作后也可以用ctrl+z恢复。
2023-10-23 08:59:13
8330
原创 一起学SF框架系列补-模块core-cglib之Enhancer
Enhancer是CGLIB中最常用的一个类,和Java1.3动态代理中引入的Proxy类差不多。但和Proxy不同的是,Enhancer既能够代理普通的class,也能够代理接口。
2023-10-10 10:22:58
168
转载 国产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使用的工具及模板
2023-04-21
Tomcat8 server.xml详尽且可直接使用配置,每个参数都进行了详细说明,按需要进行微调即可
2023-03-13
ChatGPT实现秒杀代码及回答
2023-03-07
Python网络爬虫-绕过防爬措施
2023-03-06
Nginx在线运行系统之实战配置
2023-02-22
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人