通过nginx来实现禁止国外ip访问网站【转】-编程思维

前言: 先来说说为啥要写这篇文章,之前小编看了下nginx 的访问日志,发现每天有好多国外的IP地址来访问我的网站,并且访问的内容基本上都是恶意的。因此 我决定 禁止国外IP 来访问我的网站 想要实现这个功能有很多方法,下面我就来介绍基于 NGINX的ngx_http_geoip2模块 来禁止国外IP 访问网站   一、安装geoip2扩展依赖 [root@fxkj ~]# yum instal

nginx高并发性能优化【转】-编程思维

在日常的运维工作中,经常会用到nginx服务,也时常会碰到nginx因高并发导致的性能瓶颈问题。这里简单梳理下nginx性能优化的配置 一、Nginx配置中比较重要的优化项如下:1)nginx进程数,建议按照cpu数目来指定,一般跟cpu核数相同或为它的倍数。worker_processes 8;2)为每个进程分配cpu,上例中将8个进程分配到8个cpu,当然可以写多个,或者将一个进程分配到多个

obs+nginx+vlc推拉流-编程思维

目录概述环境准备安装Nginx安装OBS安装VLC操作步骤Nginx添加rtmp配置使用OBS推流设置推流来源设置推流地址开始直播使用VLC拉流附图 概述 推拉流分为推流和拉流。推流就是将client端的视频画面推送到流媒体服务器;拉流就是另外一个client端从流媒体服务器获取视频画面。 本文中,使用OBS软件作为推流客户端,使用Nginx作为流媒体服务器,使用VLC作为拉流客户端。 整个推拉

nginx安装nginx-rtmp-module模块-编程思维

简介 nginx中的模块虽然就是类似插件的概念,但是它无法像VsCode那样轻松的安装扩展。 nginx要安装其它模块必须同时拿到nginx源代码和模块源代码,然后手动编译,将模块打到nginx中,最终生成一个名为nginx的可执行文件。 流程 查看当前nginx 的版本(假设安装位置为:/usr/local/nginx) 下载当前版本的源代码 下载 nginx-rtmp-module模块源代

数据库连接池-编程思维

数据库连接池 db.unidac.dfm object DB: TDB OnCreate = DataModuleCreate OnDestroy = DataModuleDestroy Height = 469 Width = 752 object con: TUniConnection LoginPrompt = False BeforeConnect

插件框架-编程思维

插件框架 plugin.json { "plugin": [ { "plugid":1000, "plugname":"bpl1.bpl", "remark":"REST CRUD" }, { "plugid":1001, "plugname":"bpl2.bpl", "remark":"REST文件传输" }, { "plug

路由-编程思维

路由 api.router.pas /// <author>2024-1-25</author> unit api.router; interface uses global, net.CrossHttpServer, yn.log, Classes, StrUtils, SysUtils; type TMyProc = procedure(req: TR

json序列-编程思维

json序列 serialize.pas unit serialize; /// <author>cxg 2024-1-11</author> interface uses system.Classes, System.SysUtils, System.JSON.Serializers; type TSerial<T: record> =

二进制序列-编程思维

二进制序列 keyValue.serialize.pas /// <author>cxg 2023-8-16</author> /// 支持 delphi and fpc. /// 支持 linux and windows. /// 键-值 数据序列: keyLen(integer)+keyName(rawbytestring)+valueLen(integer)+va

使用分布式锁实现定时任务的精确调度-编程思维

使用分布式锁实现定时任务的精确调度 在分布式系统中,实现定时任务的精确调度是一项具有挑战性的任务。由于分布式环境中存在多个节点,传统的定时任务可能会出现并发执行、重复执行或者错过执行的问题。为了解决这些问题,我们可以使用分布式锁来实现定时任务的精确调度。 准备工作 在开始之前,我们需要准备以下环境和工具: Spring框架 Redis作为分布式锁的存储介质 实现步骤 1. 创建自定义注解 首

nginx健康检查【转】-编程思维

Nginx作为一款强大的反向代理服务和负载均衡服务,具有高并发、低消耗、配置简单等特点,而健康检查,则是为了保障nginx能够准确的转发到后端的可用服务。 Nginx健康检查分为被动探测与主动探测两种,顾名思义,被动探测指nginx被动的发起探测;而主动探测则是在固定时间(可配置)主动发起探测,更具灵活性。 一、Nginx被动健康检查 通过自带健康检查模块ngx_http_upstream_m

centos7安装nginx并添加成服务【转】-编程思维

当我们使用Nginx作为 Web 服务器时,将其添加为系统服务可以更方便地管理它的启动和停止。下面是 CentOS 7 将 Nginx 添加系统服务的方法步骤: 创建nginx服务配置文件 首先,创建一个 nginx 服务配置文件,并将以下内容复制到文件中: [Unit] Description=The NGINX HTTP and reverse proxy server After=sys

springboot整合xxljob-编程思维

目录XXLJob简介特性模块安装调度中心初始化数据库配置启动整合执行器pomymlXxlJobConfig启动执行器实践简单的定时任务在执行器创建任务在调度中心创建执行器在调度中心创建任务带前置和后置处理的定时任务XxlJob注解详解创建带前(后)置处理的任务父子任务父子执行器关联父子任务执行器侧log调度中心-任务管理详解执行器路由策略调度过期策略阻塞处理策略超时和重试引用 XXLJob简介

redis-cluster nodes命令信息说明-编程思维

  集群定义 1.1 每个字段的含义如下: 1. id: 节点ID,一个40字节的随机字符串,节点创建时生成,且不会变化(除非使用CLUSTER RESET HARD命令)。 2. ip:port: 客户端访问的地址。 3. flags: 逗号分隔的标记位,可能值有:myself, master, slave, fail?, fail, handshake, noaddr, noflag

第三节:redis缓存雪崩、击穿、穿透、双写一致性、并发竞争、热点key重建优化、bigkey的优化 等解决方案【转】-编程思维

一. 缓存雪崩 1. 含义  同一时刻,大量的缓存同时过期失效。 2. 产生原因和后果 (1). 原因:由于开发人员经验不足或失误,大量热点缓存设置了统一的过期时间。 (2). 产生后果:恰逢秒杀高峰,缓存过期,瞬间海量的QPS(每秒查询次数)直接打到DB上,如果系统架构没有熔断机制,直接将导致系统全线崩溃。 3. 处理方案 (1). 设置不同的缓存失效时间,比如可以在缓存过期时间后面加个随机

apollo多环境部署-编程思维

一、环境准备   jdk : 1.8+         mysql  5.6.5+ 二、安装包下载   https://github.com/ctripcorp/apollo/releases   下载如下三个压缩包    下载sql文件,下载地址 :https://github.com/apolloconfig/apollo-quick-start/tree/master/sql      

minio分布式部署-编程思维

目录先决条件网络和防火墙网络防火墙负载均衡顺序的主机名驱动器要求XFS格式性能最优最小IO顺序的驱动器名任意迁移时间同步考虑相同的硬软件环境存储容量规划推荐的操作系统预先存在的数据部署分布式MinIO在每一个节点上安装MinIO创建服务文件minio.service创建环境文件添加TLS/SSL证书运行MinIO服务进程访问MinIO控制台说明 本文翻译自MinIO官网:部署MinIO(多节点

deepin安装tomcat-编程思维

一、环境部署 jdk:安装Tomcat前需安装jdk,安装链接 中间件:Tomcat Linux操作系统:Deepin20 二、下载安装 下载apache-tomcat-9.0.76.tar.gz文件 在下载位置打开终端,解压至自己选择的文件夹 tar -xzvf apache-tomcat-9.0.76.tar.gz -C /data/home/admin/soft/tomcat 重命名文件

asn.1抽象语法标记1-编程思维

ASN.1编码ber ASN.1(抽象语法表示法一) ASN.1(抽象语法表示法一)是一种正式但灵活的表示法,允许您指定高级电信协议中使用的抽象对象。您可以使用整数和位字符串等简单类型以及集合和序列等结构化类型来构建复杂类型的定义。 基本编码规则 (BER) BER 描述了如何将每种 ASN.1 类型的值表示或编码为八位八位组的字符串。通常有不止一种方法对给定值进行 BER 编码。 可辨别编码规

nginx入门理解-编程思维

一、简介 文本内容较多(原理+实践),讲解较为详细,大约10分钟才能阅读完。 本文Nginx安装和配置部分均以 Mac OS 系统为作为示例,使用windows的同学慎入   (1)Nginx是什么? “Nginx 是一款轻量级的 HTTP 服务器,采用事件驱动的异步非阻塞处理方式框架,这让其具有极好的 IO 性能,时常用于服务端的反向代理和负载均衡。” 这是大多数开发者对 Nginx