- 博客(24)
- 资源 (1)
- 收藏
- 关注
原创 MySQL索引的实现和使用 -- B+树的实例
前言:索引是数据库中常用的一种数据结构,对于大量数据的表结构中,实现快速查询离不开索引的帮助,本文简单介绍MySQL中索引的实现以及使用在你想要了解索引之前,掌握树的数据结构是必要的,请先阅读 数据结构之树索引分类索引按种类分为主键索引,唯一索引,普通索引 按数据结构分为B+树索引和哈希索引 按创建类型分聚簇索引和非聚簇索引- 聚簇索引就是以主键创建的索引 ...
2018-09-07 11:08:11 1011
原创 Etcd实战、一(安装、配置、设置集群及认证)
ETCD前言:etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值(key-value)数据库。etcd内部采用raft协议作为一致性算法,etcd基于Go语言实现本文非原理介绍,仅介绍etcd在linux上的安装及在go下的使用简介核心:k-v存储,高可用,分布式,raft,go (嗯具体底层可以阅读源码)使用场景:服务发现,分布式配置...
2020-02-19 18:54:41 2456 1
原创 GO接收GET/POST参数以及发送GET/POST请求
GO接收GET/POST参数以及发送GET/POST请求go作为21世纪的新C语言,还是应该学习一下的,本文主要介绍net/http包相关用法GO发送HTTP请求发送GET请求直接放代码//简易快速版func Get1(url string) { rsp, err := http.Get(url) if err != nil { //handle error fmt...
2019-11-27 23:47:03 11636 3
原创 简单理解KMP - 三分钟复习算法Go
KMP - 字符串匹配算法前言:其实本来没有打算写KMP算法,毕竟这种课本上的基础算法,想必大家也都了解。但是某夜刷题遇到时竟苦苦思索不得正解,网上文章又大多杂乱无章,或代码不得正解,故写下此篇以便来日复习代码先行算法就是拿来用的,没有代码的算法算什么以下是用Go语言实现的KMP算法func kmp(haystack string, needle string) int { ...
2019-07-07 10:29:08 520 1
原创 对话机器人 - 在微信公众号上的实例
微信公众号智能对话机器人说明:该插件可以直接配置到自己的公众号上,实现智能对话,不影响其他功能使用使用步骤注册申请一个微信公众号。微信公众号平台在你的公众号中,去打开开发配置去图灵机器人官网注册并创建一个机器人。图灵机器人记下机器人的API_KEY和你的账号ID后面使用。将服务端插件部署到你的服务器上。插件地址在微信公众号上填写开发者配置,服务器地址就是插件的index...
2019-06-06 14:18:54 1504
原创 Centos(Linux)安装/重装MySQL8.0及设置允许远程连接
centos7下重装MYSQL前言:由于我在腾讯云上的MySQL被黑客黑了(直接开放了服务器所有端口,而且MySQL允许任何IP远程连接),所以不得不重装一波MySQL附被黑客黑的图:(还好只是自己玩的站,数据也不是很多。。)卸载原有MySQL如果还没有安装MySQL的服务器可以直接跳过这一步执行 yum remove mysql mysql-server mysq...
2019-04-18 13:36:15 1034
原创 堆排序实现 -- 图解/实例/java/php
堆排序前言:利用堆这种数据结构所实现的排序算法概念将待排序数组构造成一个大顶堆,然后依次交换根节点和末尾最小值(由变量i定位),最终得到一个正序的数组。需要逆序的则通过构造小顶堆来实现平均时间复杂度O(nlogn)空间复杂度O(1)堆定义:heap,堆总是一棵完全二叉树,堆中某个节点的值总是大于或小于其子结点的值。根节点为最大值的堆,称为大顶堆(大根堆),根节点...
2019-03-06 14:23:07 498
原创 PHP接入微信公众号(二)- 如何实现“价值一个亿的AI”代码
PHP接入微信公众号前言:对公众号进行基本的连接后,我们就可以开始对公众号进行开发了。这其中,就有很多的事可以做了还没有了解如何接入微信公众号的同学们,请查看上一遍博客PHP接入微信公众号(一)获取access_token说明:access_token是公众号的全局唯一接口调用凭据,公众号调用各接口时都需使用access_token请求方式:HTTP GET请求域名:http...
2019-02-04 14:57:49 575
原创 Mysql设置默认编码格式为UTF-8(修复MySQL中文乱码)
Linux下MySQL设置编码格式前言:MySQL是大家必备的数据库,但在服务器上有时新装的MySQL默认编码格式不正确,导致无法正常显示中文,因此需要重设默认编码查看编码格式连接进入MySQL后,执行:show variables like ‘%char%’;查看自己的编码格式通用模式为下图,如果你的配置和下图相同,那么请检查你的表默认格式添加配置文件MySQL的配置文...
2019-01-30 14:43:42 36422 1
原创 PHP接入微信公众号(一)
PHP接入微信公众号前言:微信公众号现在是大家不可缺少的宣传平台,毕竟背靠微信这个巨大流量平台,所以将项目接入微信公众号是必须要掌握的技能前提服务器资源:你需要拥有一台公网服务器资源(阿里云、腾讯云或者其他云资源)服务器环境:推荐使用LNMP环境,完美契合PHP开发。(请确保你的服务器已经成功运行PHP,有不清楚的可以私聊楼主)公众号资源:如果没有公众号,先去公众号平台申请微信公众...
2018-12-21 14:04:26 5269 2
原创 一个HTTP请求的生命周期(TCP/IP五层网络模型)
一个请求的生命周期前言:当我们从电脑上去访问一个网址时,究竟发生了什么?这个问题可能是自己思考或者面试的时候问到,这里我们以访问百度首页为例,进行一个全面的HTTP请求分析。核心概念计算机网络核心结构,就是TCP/IP五层网络模型(OSI七层模型是将应用层分为了三层)以及,每一层对应的协议始于本地键盘输入:你要访问www.baidu.com,自然需要在浏览器地址栏中使用键盘输...
2018-12-03 22:44:08 4616
原创 数据结构之树--二叉树/B树/B+树/红黑树及相关算法
树定义:由一个根结点和m个非根结点组成(m >= 0),其中每个结点下连接n个子结点(n >= 0),非根结点且无子结点的称为叶子结点树与图的区别在于树中没有一个闭环二叉树定义:即每个结点都最多只有两个子结点的树完全二叉树:高度为k的二叉树,其1~h-1层为满结点,且其h层(叶子结点层)的节点从左至右依次排列(最多2^h-1个,最少0个)满二叉树:除最后一层外...
2018-11-19 16:37:53 11657
原创 快速排序实现--图解/实例/java/php
快速排序概念选择一个关键值,通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另一部分的所有数据小,然后再按此方法分别对这两组数据排序,最终获得一个有序数组最坏时间复杂度O(n^2)最好时间复杂度O(nlogn)平均时间复杂度O(nlogn)快速排序是一种不稳定排序算法图解以初始数组 = {5,3,6,1,7},为例,对其排序得到一个升序数组取第...
2018-11-08 16:57:11 154
原创 插入排序实现--图解/实例/java/php
插入排序在一个有序的数组中,插入新的数据,实现这种的操作就是插入排序概念原理:从第一个元素开始,左边视为已排序数组,右边视为待排序数组,从左往右依次取元素,插入左侧已排序数组,对插入新元素的左侧数组重新生成有序数组需要注意的是,在往有序数组插入一个新元素的过程中,我们可以采用按顺序循环比较,也可以通过折半查找法来找到新元素的位置,两种方式的效率取决于数组的数据量最坏时间复杂度O...
2018-11-06 18:00:07 3745 5
原创 冒泡排序实现--图解/实例/java/php
冒泡排序概念在接触程序的过程中,我们经常会使用到各种各样的排序算法来满足我们的需求冒泡排序就是众多排序算法中一种简单好用的算法冒泡排序以其像气泡一样将元素交换到顶端的形式从而命名冒泡排序原理:(以升序为例) 依次比较相邻的两个数,将小数放前,大数放后,一直到第N个元素,然后重复该操作,一直到第N-1个元素,循环,直到第一个元素。因为每一轮比较下来,我们都会获得一个当前剩余数组的最...
2018-11-06 15:53:11 477
原创 PHP连接sftp上传/下载/删除文件(PHP操作SFTP超详解)
前提:项目需要,第三方用sftp交互,不得不用 =。=支持SFTP -- 使用证书认证登录 or 使用账号密码登录PHP7 -- 需要开启ssh2扩展支持操作 -- 可以处理单个文件,也可以操作文件夹证书生成ssh-keygen -t rsa -C "备注信息"完成后将公钥配到sftp服务器 -- 交给运维 or SFTP配置账户...
2018-11-01 00:09:29 1729
原创 PHP处理图片(JPG/PNG/GIF)
后端处理图片在有些特殊时候,可能需要后端来处理一些图片数据或者需要批量处理图片,这时候我们可以依赖GD库来实现 说明:主要是对JPG/PNG/GIF图的缩放,修改尺寸,如果需要裁剪而非缩放的话,其实原理也是一样,稍稍改造下函数即可 代码实现 <?php/** * Message: 处理图片 * Date: 2018/10/18 * Time: 上午10...
2018-10-18 14:37:35 2304
原创 mac下iterm使用rz指令卡死解决方法
macOS上使用rz或者sz指令会卡死,不弹出文件选择框解决方法:brew install lrzsz (下载rz和sz指令,有的话无需下载) 添加执行脚本到本地目录,脚本路径,点此下载将这两个脚本放到本地 /usr/local/bin/ 目录下 3. 配置iterm, Preferences -> Profiles -> 当前使用的配置...
2018-09-12 17:16:09 22158 17
原创 PSR&&RESTful--如何编写优雅的代码
我们经常会在很多地方看到要求我们有代码规范,能够编写优雅的代码,然而究竟如何写代码才是合适的呢?这里我们仅谈PHP语言的规范PSR--PHP标准规范以下规则必须执行!传送门psr规范只要你是一名PHPer,你就必须要遵守以下规则,不然不就不是一名合格的PHPer!一切为了进步基础规范文件开头:<?php 或 <?=编码:UTF-8内容:定义和输出(...
2018-08-15 14:03:29 293
原创 深入理解PHP单例模式的实现&static&clone
前提提到单例模式,那就不得不说设计模式。单例模式是最简单的一种设计模式,提供了一种唯一访问其对象的方式,可以直接访问。属于创建型模式实现之前,我们先要明白两个关键字的原理static声明类属性或方法为静态,就可以不实例化类而直接访问。静态属性不能通过一个类已实例化的对象来访问(但静态方法可以)。 函数体中的静态变量与全局中的静态变量不冲突,只有在关键字global作用下才...
2018-07-31 11:32:39 1014
原创 Nginx路由简单解析--php正则表达式与实例解析
一条简单的路由 (以下内容都是我当时有限的理解,后面自己理解深入了再更新,有错误也希望能帮忙指正下) 在webserver环境里,我们经常要用到路由,将url重写解析,才能访问到真正的接口。以Nginx为例,一个http请求(或者其他协议)通过网页或者端上发送到服务器上,这里的服务器只的是物理服务器,相当于电脑,电脑上装有Nginx服务器。这里需要提的一点是,Nginx和A...
2018-02-01 16:47:58 2589
原创 Linux服务器下常用mysql指令
以下内容为服务器上对mysql的常用操作系统操作的话请看Ubuntu下mysql操作连接mysql连接本地库mysql -uroot -proot连接线上库mysql -h127.0.0.1 -p3306 -uroot -proot替换成自己的IP和端口账号密码退出mysql使用exit或者quit指令mysql免密登录配置.my.cnf文件
2018-01-31 13:33:19 374
原创 Ubuntu下mysql常用指令
以下内容主要为安装mysql以及mysql的配置操作Mysql安装目录数据库目录/var/lib/MySQL/配置文件/usr/share/mysql(mysql.server命令及配置文件)相关命令/usr/bin(mysqladmin mysqldump等命令)启动脚本/etc/init.d/mysql(启动脚本文件mysql的目录)====
2018-01-31 11:35:42 550
原创 压力测试 - HTTP压测工具stress指南
2019.03.19重新修改(之前的使用安装方式有误!)Stress安装指南github地址:https://github.com/buaazp/stress使用环境:macOS 或者 Linux (Windows用户请安装虚拟机或者Linux服务,如git工具)编译环境:需要安装GO环境(go环境安装)操作流程:1. 确保安装了go服务且在Unix or unx内核系统下...
2018-01-16 14:48:22 35494 2
亿级流量网站架构核心技术百度网盘.txt
2019-06-14
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人