经验教程 php 中 cgi 是什么意思 在PHP中,cgi是“Common Gateway Interface”的缩写,是公共网关接口的意思,cgi可以让一个客户端从网页浏览器向执行在网络服务器上的程序请求数据,是描述了服务器和请求处理程序之间传输数据的一种标准。 简单来说 CGI、 FastCGI只是一个协议而已, php-cgi 是实现cgi的程序, php-fpm是管理php-cgi的一个管理器而已。 CGI全称是“公共网关接口”…
经验教程 Windows 下 git 配置代理 Github 实在太慢,如果不配置代理几乎无法克隆仓库,于是今天几种办法都尝试了一下。 这里说明一下,由于阿蛮君本地装了代理,所以这里用的代理地址都是本地代理。 1. 临时使用代理 这种方式仅适用于 https 方式。 git clone -c http.proxy=socks5://127.0.0.1:10808 https://github.com/username/repository.gi…
经验教程 设计模式之三种工厂模式 前言 工厂模式是一种创建对象的设计模式,它提供了一个统一的接口来实例化对象,而不需要通过直接调用构造函数来创建。工厂模式可以根据不同的条件返回不同类的实例,从而实现对象的灵活创建。 常见的工厂模式包括:简单工厂模式、工厂方法模式和抽象工厂模式。 详解 1. 简单工厂模式 简单工厂模式,就像它的名字一样,非常简单。只需要创建一个工厂类,根据传入的参数或条件,工厂类决定实例化哪个具体类的对象并返回。 …
经验教程 设计模式之软件设计原则 在软件开发中,为了提高软件系统的可维护性和可复用性,增加软件的可扩展性和灵活性,程序员要尽量根据 6 条原则来开发程序,从而提高软件开发效率、节约软件开发成本和维护成本。 1 开闭原则 对扩展开放,对修改关闭。在程序需要进行拓展的时候,不能去修改原有的代码,实现一个热插拔的效果。简言之,是为了使程序的扩展性好,易于维护和升级。 想要达到这样的效果,我们需要使用接口和抽象类。 因为抽象灵活性好,适应…
经验教程 设计模式之UML类图 1. 类图概述 统一建模语言(Unified Modeling Language,UML)是用来设计软件的可视化建模语言。它的特点是简单、统一、图形化、能表达软件设计中的动态与静态信息。 UML 从目标系统的不同角度出发,定义了用例图、类图、对象图、状态图、活动图、时序图、协作图、构件图、部署图等 9 种图。 类图(Class diagram)是显示了模型的静态结构,特别是模型中存在的类、类的内部…
经验教程 Git 提交了错误的代码怎么回滚并和远程仓库同步 可能由于某些原因,比如代码提交到了错误的分支,或者提交了错误的代码,那么就需要进行回滚。 使用 git reset 命令可以回滚到某次提交,根据自己的需要添加参数。 # 撤销commit操作,此时相当于仅进行了add操作 git reset –soft <commit> # 撤销commit操作和add操作,此时相当于仅仅修改了文件 git reset –mixed <com…
经验教程 Docker 搭建 rtsp-simple-server 及相关使用教程 前言 阿蛮君最近接触了 ffmpeg,之前只知道它很强大,但从来没有用过。由于工作上使用 ffmpeg 录制了摄像头的视频流,但是自己没有摄像头,于是想着如何搭建自己的直播流。 后来发现开源的 rtsp 服务器 rtsp-simple-server,它可以读取和发布实时流,并且还可以代理流,以及进行流转换,同时还可以进行身份验证,并可以使用 api 查询和控制服务器。 rtsp-simple-se…
经验教程 Ningx 配置 tcp 端口转发 平常 Nginx 用得最多的也就是 http 反向代理,包含在 http 块中。 如果需要用到 tcp 端口转发,那么需要在 nginx.conf 文件夹中添加配置。 # 1. 直接转发 stream { server { listen 100; proxy_pass 192.168.1.1:2000; } } # 2. 负载均衡 stream { server { listen 100; pro…
经验教程 分享一个批量导入 docker 镜像和导入并运行镜像的脚本 在生产环境下,一般不允许连接外网,那么就需要把镜像导出拷贝到生产环境下。如果一个项目的中间件比较多,并且微服务架构下的服务镜像也很多,那么这个步骤就会显得比较麻烦。 并且,服务镜像是可以导入并直接启动的,因为他们运行的命令都类似,除了镜像名称不同以外,所有阿蛮君写了如下脚本: #!/bin/bash shell_dir=$(pwd) loadStartDir="load_and_star…
经验教程 iptables 实现端口转发 除了 SSH 隧道本地转发,其实可以用 iptables 进行端口转发。 以下在开启了转发功能和默认接收所有流量的情况下进行,看机器有没有开启转发参考 Linux 开启 ipv4 转发的几种方式。 1. 情况一 情况一:接受请求的网卡和转发请求的网卡是一张网卡。 现假设网络情况如下,201 机器上开放了 8080 端口的 web 服务,客户端想要访问,但网络并不通(可以认为是添加了某条路由规则导致…
经验教程 Docker 搭建流量控制中间件 Sentinel sentinel 是阿里中间件团队开源的,面向分布式服务架构的轻量级高可用流量控制组件,主要以流量为切入点,从流量控制、熔断降级、系统负载保护等多个维度来帮助用户保护服务的稳定性。 docker 搭建方式如下: docker run -d \ –name sentinel \ -p 8858:8858 \ –restart always \ bladex/sentinel-dashboard …
经验教程 Docker 安装 Redis 和可视化工具 Redisinsight Redis 作为一款使用广泛的内存数据库,阿蛮君不管是在工作中,或者自己建站加快网站加载速度都有用到,下面就来讲一下用 docker 怎么安装。 1. 安装Redis 首先创建 redis 的配置文件,这里指定密码 123456,并且设置了外网可以访问。 mkdir -p /home/docker/redis/data && cat > /home/docker/redis/…