这里以ZPHP框架作为演示,实现swoole的代码热更新,在WorkerStart回调函数中,载入ZPHP框架:use ZPHPZPHP;$zphp = null;$mimes = null;$http = new swoole_http_server('0.0.0.0',9501);$http-&...
所谓自动化部署, 我的理解就是在用户保证代码质量的前提下, 将代码能够快速的自动部署到目标服务器上的一种手段. 实现原理本地推送代码 -> 代码库 -> webhook 通知服务端 -> 自动拉取代码库代码 生成并且部署公钥具体步骤参照 配置SSH公钥1) 生成公钥# 使用给定的 ...
一、为什么要有HTTPS在HTTPS出现之前,所有请求都是以明文方式送出的,那么如果有人在传输途中偷听或者抓包的话,你的所有通信内容都会泄漏。比较安全的方法是将通信内容加密在发送给对方。加密方法有两种,对称加密和非对称加密。 二、对称加密对称加密指的是加密和解密用同一个密钥。但是在通信之前,客户端和...
Nginx 以其高性能,稳定性,丰富的功能,简单的配置和低资源消耗而闻名。本文从底层原理分析 Nginx 为什么这么快! Nginx 服务器,正常运行过程中:多进程: 一个 Master 进程、多个 Worker 进程。Master 进程: 管理 Worker 进程。对外接口:接收外部的操作(信号)...
mysql 作为常用数据库,操作贼六是必须的,对于数字操作相关的东西,那是相当方便,本节就来拎几个统计案例出来供参考!order订单表,样例如下:CREATE TABLE `t_order` ( `id` bigint(20) unsigned NOT NULL AUTO_INCREMENT, `u...
 nginx比较强大,可以针对单个域名请求做出单个连接超时的配置.比如些动态解释和静态解释可以根据业务的需求配置proxy_connect_timeout :后端服务器连接的超时时间_发起握手等候响应超时时间proxy_read_timeout:连接成功后_等候后端服务器响应时间_其实已经进入后端的...
本文会提到52条SQL语句性能优化策略。1、对查询进行优化,应尽量避免全表扫描,首先应考虑在where及order by涉及的列上建立索引。2、应尽量避免在where子句中对字段进行null值判断,创建表时NULL是默认值,但大多数时候应该使用NOT NULL,或者使用一个特殊的值,如0,-1作为默...
问题使用命令发现磁盘使用率为100%了,还剩几十兆。 一系列神操作:备份数据库,删除实例、删除数据库表、重启mysql服务.结果磁盘空间均为释放 怎么办网上查了很多资源,说要进行磁盘碎片化整理。原因是datafree占据的空间太多啦。具体可以通过这个sql查看。SELECT CONCAT(TRUNC...
0 - 前言近期接了一个新项目,某部门的日志要从HDFS迁移到ES中,每天15T,保留15天,每天有150亿条数据写入,这对于我们现有集群吞吐量是一个很大的挑战。 1 - 现状目前默认ES集群采用3 master、3 data的结构。数据节点服务器:CPU: 24 核、Intel(R) Xeon(R...
设计模式单例模式解决的是如何在整个项目中创建唯一对象实例的问题,工厂模式解决的是如何不通过new建立实例对象的方法。 单例模式$_instance必须声明为静态的私有变量构造函数和析构函数必须声明为私有,防止外部程序new 类从而失去单例模式的意义getInstance()方法必须设置为公有的,必须...
本文将介绍微服务架构和相关的组件,介绍他们是什么以及为什么要使用微服务架构和这些组件。本文侧重于简明地表达微服务架构的全局图景,因此不会涉及具体如何使用组件等细节。要理解微服务,首先要先理解不是微服务的那些。通常跟微服务相对的是单体应用,即将所有功能都打包成在一个独立单元的应用程序。从单体应用到微服...
问题背景docker run -d -p 9999:8080 -i --name tomcat7 tomcat:7创建容器时,指定了端口映射(-p)如果容器运行之后发现端口需要改怎么办?当前是访问 9999 端口 删除原有容器,重新创建新的容器删除容器docker rm -f 容器ID/名字重新创建...
 1 前言Redis 相比较于 memcache,多了持久化的功能。而持久化分为 2 种,一种是 RDB(全量),一种是 AOF(增量)。RDB 是旧的模式,现在基本上都使用 AOF。当然,今天两个都会一起聊聊。 2 RDBRDB 流程图:RDB 特点:RDB 是一种快照模式,即——保存的是 key...
缓存由于其高性能,支持高并发的特性,在高并发的项目中不可或缺。被大家广泛使用的有Redis,Memcached等。本文主要探讨几种常见的缓存的读写模式,以及如何来保证缓存和数据库的数据一致性。 Cache-AsideCache-Aside可能是项目中最常见的一种模式。它是一种控制逻辑都实现在应用程序...
ss命令用于显示socket状态. 他可以显示PACKET sockets, TCP sockets, UDP sockets, DCCP sockets, RAW sockets, Unix domain sockets等等统计. 它比其他工具展示等多tcp和state信息. 它是一个非常实用、快...
概述MySQL数据库与 Oracle、 SQL Server 等数据库相比,有其内核上的优势与劣势。我们在使用MySQL数据库的时候需要遵循一定规范,扬长避短。无意中从github上看到一个大佬的MySQL数据库设计规范,顺便在这里分享一下。 1. 规范背景与目的MySQL数据库与 Oracle、 ...
PHP操作MySQL的三种方式MySQL:非永久链接,性能比较低,PHP5.5以后被废弃MySQLi:永久链接,减轻服务器压力,只支持MySQL数据库,并且会导致内存的浪费PDO:能实现MySQLi的常用功能,支持大部分数据库 MySQL面向对象操作数据库1、面向对象方式链接数据库$mysqli =...
PHP连接 MySQL在我们访问 MySQL 数据库前,我们需要先连接到数据库服务器,连接服务器,我们使用mysqli_connect()函数。在使用这个函数之前,我们首先来看一下这个函数的语法:mysqli_connect(host,username,password,dbname,port,so...
常用参数常用参数分类# 调试类-v, --verbose 输出信息-q, --disable 在第一个参数位置设置后 .curlrc 的设置直接失效,这个参数会影响到 -K, --config -A,...
最近在复习数据库索引部分,看到了 fulltext,也即全文索引,虽然全文索引在平时的业务中用到的不多,但是感觉它有点儿意思,所以花了点时间研究一下,特此记录。 引入概念通过数值比较、范围过滤等就可以完成绝大多数我们需要的查询,但是,如果希望通过关键字的匹配来进行查询过滤,那么就需要基于相似度的查询...