11 2018 档案

摘要:<!-- flowchart 箭头图标 勿删 --> 本文主要记录一下学习swoole的过程、填过的坑以及swoole究竟有多么强大! 首先说一下对swoole的理解:披着PHP外衣的C程序。很多PHPer朋友看到swoole提供的强大功能、外界对其的崇拜便跃跃欲试的安装、调 试其demo、编写新功 阅读全文
posted @ 2018-11-26 16:24 Kris-Q 阅读(637) 评论(0) 推荐(0) 编辑
摘要:用单引号代替双引号来包含字符串,这样做会更快一些。因为PHP会在双引号包围的字符串中搜寻变量,单引号则 不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的“函数”(译注:PHP手册中说echo是语言结构,不是真正的函数,故把函数加 上了双引号)。 1、如果能将类的方法定义成stat 阅读全文
posted @ 2018-11-23 16:50 Kris-Q 阅读(105) 评论(0) 推荐(0) 编辑
摘要:$mongo = new Mongo(); $db = $mongo->selectDB('test'); $collection = $db->selectCollection('foo'); //插入 $array = array('name'=>'张三','sex'=>'male'); $bo 阅读全文
posted @ 2018-11-23 16:49 Kris-Q 阅读(231) 评论(0) 推荐(0) 编辑
摘要:vsftpd配置文件详解 1.默认配置: 1>允许匿名用户和本地用户登陆。 anonymous_enable=YES local_enable=YES 2>匿名用户使用的登陆名为ftp或anonymous,口令为空;匿名用户不能离开匿名用户家目录/var/ftp,且只能下载不能上传。 3>本地用户的 阅读全文
posted @ 2018-11-23 16:46 Kris-Q 阅读(220) 评论(0) 推荐(0) 编辑
摘要:server { listen 80; server_name 域名; #access_log /var/log/nginx/admin.log; index index.html index.htm index.php; root 项目路径; if ( $query_string ~* ".*[\ 阅读全文
posted @ 2018-11-23 16:45 Kris-Q 阅读(122) 评论(0) 推荐(0) 编辑
摘要:一、下载完安装包,并解压 tgz(以下演示的是 64 位 Linux上的安装) 。 curl -O https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz # 下载 tar -zxvf mongodb-linux-x86_64- 阅读全文
posted @ 2018-11-23 16:44 Kris-Q 阅读(194) 评论(0) 推荐(0) 编辑
摘要:查看PATH:echo $PATH以添加mongodb server为列修改方法一:export PATH=/usr/local/mongodb/bin:$PATH//配置完后可以通过echo $PATH查看配置结果。生效方法:立即生效有效期限:临时改变,只能在当前的终端窗口中有效,当前窗口关闭后就 阅读全文
posted @ 2018-11-23 16:43 Kris-Q 阅读(3841) 评论(0) 推荐(0) 编辑
摘要:nginx服务器日志相关指令主要有两条,一条是log_format,用来设置日志格式,另外一条是access_log,用来指定日志文件的存放路径、格式和缓存大小,一般在nginx的配置文件中日记配置(/usr/local/nginx/conf/nginx.conf)。 nginx的log_forma 阅读全文
posted @ 2018-11-23 16:18 Kris-Q 阅读(383) 评论(0) 推荐(0) 编辑
摘要:rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm rpm  阅读全文
posted @ 2018-11-23 16:16 Kris-Q 阅读(247) 评论(0) 推荐(0) 编辑
摘要:~]# systemctl start mysql.service 要启动MySQL数据库是却是这样的提示 Failed to start mysqld.service: Unit not found 解决方法如下: 首先需要安装mariadb-server ~]# yum install -y m 阅读全文
posted @ 2018-11-23 16:15 Kris-Q 阅读(702) 评论(0) 推荐(0) 编辑
摘要:# # The default compiled in settings are fairly paranoid. This sample file # loosens things up a bit, to make the ftp daemon more usable. # Please see 阅读全文
posted @ 2018-11-23 16:13 Kris-Q 阅读(197) 评论(0) 推荐(0) 编辑
摘要:整理自《鸟哥的私房菜》 对于每一个Linux学习者来说,了解Linux文件系统的目录结构,是学好Linux的至关重要的一步.,深入了解linux文件目录结构的标准和每个目录的详细功能,对于我们用好linux系统只管重要,下面我们就开始了解一下linux目录结构的相关知识。 当在使用Linux的时候, 阅读全文
posted @ 2018-11-23 16:10 Kris-Q 阅读(207) 评论(0) 推荐(0) 编辑
摘要:忘记ftp密码修改方法:1.登录服务器 cd /etc/vsftpdcat ftpusers找到对应的ftp用户名 (如果用户名也忘记了 那么 cd /etc 然后cat passwd 查看用户和对应的管理目录)passwd ftp用户名(回车)service vsftpd restart Linu 阅读全文
posted @ 2018-11-23 16:08 Kris-Q 阅读(1922) 评论(0) 推荐(0) 编辑
摘要:linux版本:64位CentOS 6.4 Nginx版本:nginx1.8.0 php版本:php5.5 1.编译安装Nginx 官网:http://wiki.nginx.org/Install 下载 # wget http://nginx.org/download/nginx-1.8.0.tar 阅读全文
posted @ 2018-11-23 16:05 Kris-Q 阅读(204) 评论(0) 推荐(0) 编辑
摘要:一、安装telnet 1、检测telnet-server的rpm包是否安装 [root@localhost ~]# rpm -qa telnet-server 若无输入内容,则表示没有安装。出于安全考虑telnet-server.rpm是默认没有安装的,而telnet的客户端是标配。即下面的软件是默 阅读全文
posted @ 2018-11-23 16:02 Kris-Q 阅读(3724) 评论(0) 推荐(0) 编辑
摘要:把文件放入linux下bin目录#!/bin/bash server_ips=("第一台主机IP" "第二台主机IP" "第三台主机IP"); #pwd 当前路径 work_path=$(pwd); #option up info参数 option=$1; #sw_url 例如sw 后面的路径 sw 阅读全文
posted @ 2018-11-23 15:56 Kris-Q 阅读(841) 评论(0) 推荐(0) 编辑
摘要:一,什么触发器 1,个人理解触发器,从字面来理解,一触即发的一个器,简称触发器(哈哈,个人理解),举个例子吧,好比天黑了,你开灯了,你看到东西了。你放炮仗,点燃了,一会就炸了。2,官方定义触发器(trigger)是个特殊的存储过程,它的执行不是由程序调用,也不是手工启动,而是由事件来触发,比如当对一 阅读全文
posted @ 2018-11-23 15:11 Kris-Q 阅读(440) 评论(0) 推荐(0) 编辑
摘要:规则 1:绝不要信任外部数据或输入 关于 Web 应用程序安全性,必须认识到的第一件事是不应该信任外部数据。外部数据(outside data) 包括不是由程序员在 PHP 代码中直接输入的任何数据。在采取措施确保安全之前,来自任何其他来源(比如 GET 变量、表单 POST、数据库、配置文件、会话 阅读全文
posted @ 2018-11-23 15:01 Kris-Q 阅读(202) 评论(0) 推荐(0) 编辑
摘要:Abstract 有关于WEB服务以及web应用的一些安全隐患总结资料。 1. 常见web安全隐患 1.1. 完全信赖用户提交内容 开发人员决不能相信一个来自外部的数据。不管它来自用户提交表单,文件系统的文件或者环境变量,任何数据都不能简单的想当然的采用。所以用户输入必须进行验证并将之格式化以保证安 阅读全文
posted @ 2018-11-23 14:59 Kris-Q 阅读(992) 评论(0) 推荐(0) 编辑
摘要:本类包含了微信官方公布的所有可使用的接口,包括了普通接口及高级接口,具体哪些接口可用还是要看您的账号级别。 具体接口如下: 基础支持 接收消息 发送消息 用户管理 自定义菜单 推广支持 Weixin JS接口 代码如下: <?php class WeiXin { const MSG_TYPE_TEX 阅读全文
posted @ 2018-11-23 14:29 Kris-Q 阅读(772) 评论(0) 推荐(0) 编辑
摘要:12 位运算 C语言是为描述系统设计的,因此它应该具有汇编语言所以完成的一些功能。C语言既有高级语言的特点,又具有低级语言的功能。因而具有广泛的用途和很强的生命力。 12.1 位运算符和位运算 运算符 含义 & 按位与 | 按位或 ^ 按位异或 ~ 取反 << 左移 >> 右移 说明: (1)位运算 阅读全文
posted @ 2018-11-23 14:25 Kris-Q 阅读(185) 评论(0) 推荐(0) 编辑
摘要:数组有N个单元,同时只能操作一个单元。比如循环时,只能一个一个单元读取他的值。 那么数组是怎么记住刚才读取的是哪个单元,接着读取下个单元的呢? 在数组内部,有一个指针,指针指向某一个单元。 每循环一个单元,指针向尾部移动。 游标操作函数:current(),key(),next(),prev(),r 阅读全文
posted @ 2018-11-23 14:05 Kris-Q 阅读(384) 评论(0) 推荐(0) 编辑
摘要:数据存储演进思路一:单库单表 单库单表是最常见的数据库设计,例如,有一张用户(user)表放在数据库db中,所有的用户都可以在db库中的user表中查到。 数据存储演进思路二:单库多表 随着用户数量的增加,user表的数据量会越来越大,当数据量达到一定程度的时候对user表的查询会渐渐的变慢,从而影 阅读全文
posted @ 2018-11-23 14:03 Kris-Q 阅读(442) 评论(0) 推荐(0) 编辑
摘要:<!--done--> soap方法 一:PHP本身的SOAP 所有的webservice都包括服务端(server)和客户端(client)。 要使用php本身的soap首先要把该拓展安装好并且启用。下面看具体的code 首先这是服务端实现: <?php class test { function 阅读全文
posted @ 2018-11-23 13:58 Kris-Q 阅读(187) 评论(0) 推荐(0) 编辑
摘要:在数据库表中,对字段建立索引可以大大提高查询速度。假如我们创建了一个 mytable表: 代码如下: CREATE TABLE mytable( ID INT NOT NULL, username VARCHAR(16) NOT NULL ); 我们随机向里面插入了10000条记录,其中有一条:55 阅读全文
posted @ 2018-11-23 13:55 Kris-Q 阅读(111) 评论(0) 推荐(0) 编辑
摘要:empty 如果 变量 是非空或非零的值,则 empty() 返回 FALSE。换句话说,”"、0、”0″、NULL、FALSE、array()、var $var、未定义;以及没有任何属性的对象都将被认为是空的,如果 var 为空,则返回 TRUE。 isset 如果 变量 存在(非NULL)则返回 阅读全文
posted @ 2018-11-23 13:52 Kris-Q 阅读(148) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 1、 存储结构 MyISAM:每个MyISAM在磁盘上存储成三个文件。第一个文件的名字以表的名字开始,扩展名指出文件类型。.frm文件存储表定义。数据文件的扩展名为.MYD (MYData)。索引文件的扩展名是.MYI (MYIndex)。 InnoDB:所有的表都保存在同一 阅读全文
posted @ 2018-11-23 13:50 Kris-Q 阅读(127) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 1 class myIterator implements Iterator { 2 private $position = 0; 3 private $array = array( 4 "first_element", 5 "second_element", 6 "last 阅读全文
posted @ 2018-11-23 13:45 Kris-Q 阅读(140) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 介绍 策略模式:定义了算法族,分别封装起来,让它们之间可以互相替换,此模式让算法的变化独立于使用算法的客户。 封装:把行为用接口封装起来,我们可以把那些经常变化的部分,从当前的类中单独取出来,用接口进行单独的封装。 互相替换:我们封装好了接口,通过指定不同的接口实现类进行算法 阅读全文
posted @ 2018-11-23 13:43 Kris-Q 阅读(106) 评论(0) 推荐(0) 编辑
摘要:<!--done--> sort() 函数用于对数组单元从低到高进行排序。 rsort() 函数用于对数组单元从高到低进行排序。 asort() 函数用于对数组单元从低到高进行排序并保持索引关系。 arsort() 函数用于对数组单元从高到低进行排序并保持索引关系。 ksort() 函数用于对数组单 阅读全文
posted @ 2018-11-23 11:23 Kris-Q 阅读(1662) 评论(0) 推荐(0) 编辑
摘要:<!--done--> ? 1 2 3 4 5 6 7 8 原创文章,转载请注明出处:http://www.cnblogs.com/hongfei/archive/2012/07/07/2580776.html 简单工厂模式: ①抽象基类:类中定义抽象一些方法,用以在子类中实现 ②继承自抽象基类的子 阅读全文
posted @ 2018-11-23 11:21 Kris-Q 阅读(150) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 观察者模式(Observer),当一个对象的状态发生改变时,依赖他的对象会全部收到通知,并自动更新。 场景:一个事件发生后,要执行一连串更新操作.传统的编程方式,就是在事件的代码之后直接加入处理逻辑,当更新得逻辑增多之后,代码会变得难以维护.这种方式是耦合的,侵入式的,增加新 阅读全文
posted @ 2018-11-23 11:18 Kris-Q 阅读(172) 评论(0) 推荐(0) 编辑
摘要:1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 阅读全文
posted @ 2018-11-23 11:11 Kris-Q 阅读(134) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 对于商品抢购等并发场景下,可能会出现超卖的现象,这时就需要解决并发所带来的这些问题了 在PHP语言中并没有原生的提供并发的解决方案,因此就需要借助其他方式来实现并发控制。 方案一:使用文件锁排它锁 flock函数用于获取文件的锁,这个锁同时只能被一个线程获取到,其它没有获取到 阅读全文
posted @ 2018-11-23 11:09 Kris-Q 阅读(312) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 抢购、秒杀是如今很常见的一个应用场景,主要需要解决的问题有两个: 1 高并发对数据库产生的压力 2 竞争状态下如何解决库存的正确减少("超卖"问题) 对于第一个问题,已经很容易想到用缓存来处理抢购,避免直接操作数据库,例如使用Redis。 重点在于第二个问题 常规写法: 查询 阅读全文
posted @ 2018-11-23 11:06 Kris-Q 阅读(292) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 由于数据库查询的及插入的操作 耗费的实际时间要耗费比redis 要多, 导致 多人查询时库存有,但是实际插入数据库时却超卖 redis 会有效的减少相关的延时,对于并发量相对较少的 可以一用 1 public function buy($goods_id = 0){ 2 if 阅读全文
posted @ 2018-11-23 11:03 Kris-Q 阅读(5492) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 一、使用视图的理由是什么?1.安全性。一般是这样做的:创建一个视图,定义好该视图所操作的数据。之后将用户权限与视图绑定。这样的方式是使用到了一个特性:grant语句可以针对视图进行授予权限。2.查询性能提高。3.有灵活性的功能需求后,需要改动表的结构而导致工作量比较大。那么可 阅读全文
posted @ 2018-11-23 11:00 Kris-Q 阅读(416) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 存储过程 什么是存储过程?? 简单来说,存储过程就是为了以后使用而保存的一条或多条SQL语句的集合 . 和我们编程语言中的函数这个概念比较像。 在编程语言中,我们经常要完成某个功能,我们都会将它写成一个函数,然后在需要这个函数的时候调用它就好了。 同样的道理,存储过程也是这样 阅读全文
posted @ 2018-11-23 10:58 Kris-Q 阅读(179) 评论(0) 推荐(0) 编辑
摘要:<!--done--> PHP中的魔术方法总结 :__construct, __destruct , __call, __callStatic,__get, __set, __isset, __unset , __sleep, __wakeup, __toString, __set_state, _ 阅读全文
posted @ 2018-11-23 10:56 Kris-Q 阅读(194) 评论(0) 推荐(0) 编辑
摘要:basename(url) 返回路径中的文件名部分。 dirname(url) 返回路径中的目录名称部分。 pathinfo(url) 返回关于文件路径的信息。 basename() 函数返回路径中的文件名部分。 语法 basename(path,suffix) 参数 描述 path 必需。规定要检 阅读全文
posted @ 2018-11-23 10:53 Kris-Q 阅读(450) 评论(0) 推荐(0) 编辑
摘要:1.编辑mysql的配置文件my.cnf,这个文件通常在/etc目录下,但我用rpm装mysql的时候这个配置文件是在/usr目录下,但我测试过,无论是放在/etc目录下,还是放在 /usr目录下,都可以生效,不过由于习惯,我还是将my.cnf文件放到/etc目录下vim /etc/my.cnf# 阅读全文
posted @ 2018-11-23 10:46 Kris-Q 阅读(253) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 规则 1:绝不要信任外部数据或输入 关于 Web 应用程序安全性,必须认识到的第一件事是不应该信任外部数据。外部数据(outside data) 包括不是由程序员在 PHP 代码中直接输入的任何数据。在采取措施确保安全之前,来自任何其他来源(比如 GET 变量、表单 POST 阅读全文
posted @ 2018-11-23 10:26 Kris-Q 阅读(139) 评论(0) 推荐(0) 编辑
摘要:<!--done--> 获得当前周的周一到周日 select subdate(curdate(),date_format(curdate(),'%w')-1)//获取当前日期在本周的周一 select subdate(curdate(),date_format(curdate(),'%w')-7)/ 阅读全文
posted @ 2018-11-23 10:22 Kris-Q 阅读(755) 评论(0) 推荐(0) 编辑
摘要:索引类型 mysql索引类型normal,unique,full text的区别是什么? normal:表示普通索引 unique:表示唯一的,不允许重复的索引,如果该字段信息保证不会重复例如身份证号用作索引时,可设置为unique full textl: 表示 全文搜索的索引。 FULLTEXT 阅读全文
posted @ 2018-11-23 10:18 Kris-Q 阅读(2883) 评论(0) 推荐(1) 编辑
摘要:<!--done--> 对于:string, set , sort set , hash 的增,改操作,是同一个命令,但是把它当改操作时,及时成功返回值依旧为0 对于:list结构来说,增删改查自有一套方法。 1 <?php 2 /*1.Connection*/ 3 $redis = new Red 阅读全文
posted @ 2018-11-23 09:35 Kris-Q 阅读(346) 评论(0) 推荐(0) 编辑
摘要:PHP内存管理机制 1 var_dump(memory_get_usage()); //获取内存 2 $a = "laruence"; //定义一个变量 3 var_dump(memory_get_usage()); //定义变量之后获取内存 4 unset($a); //删除该变量 5 var_d 阅读全文
posted @ 2018-11-22 17:24 Kris-Q 阅读(196) 评论(0) 推荐(0) 编辑
摘要:首先搞清楚php-fpm与cgi的关系 cgi cgi是一个web server与cgi程序(这里可以理解为是php解释器)之间进行数据传输的协议,保证了传递的是标准数据。 php-cgi php-cgi是php解释器,就是上文提到的cgi程序。 Fastcgi Fastcgi是用来提高cgi程序( 阅读全文
posted @ 2018-11-22 17:15 Kris-Q 阅读(531) 评论(0) 推荐(0) 编辑
摘要:CGI是HTTP Server和一个独立的进程之间的协议,把HTTP Request的Header设置成进程的环境变量,HTTP Request的正文设置成进程的标准输入,而进程的标准输出就是HTTP Response包括Header和正文。FASTCGI是和HTTP协议类似的概念。无非就是规定了在 阅读全文
posted @ 2018-11-22 17:01 Kris-Q 阅读(144) 评论(0) 推荐(0) 编辑
摘要:在linux或者unix操作系统中在系统引导的时候会开启很多服务,这些服务就叫做守护进程。为了增加灵活性,root可以选择系统开启的模式,这些模式叫做运行级别,每一种运行级别以一定的方式配置系统。 守护进程是脱离于终端并且在后台运行的进程。守护进程脱离于终端是为了避免进程在执行过程中的信息在任何终端 阅读全文
posted @ 2018-11-22 16:51 Kris-Q 阅读(766) 评论(0) 推荐(0) 编辑
摘要:>>Memcached Memcached的优点:Memcached可以利用多核优势,单实例吞吐量极高,可以达到几十万QPS(取决于key、value的字节大小以及服务器硬件性能,日常环境中QPS高峰大约在4-6w左右)。适用于最大程度扛量。支持直接配置为session handle。Memcach 阅读全文
posted @ 2018-11-22 16:49 Kris-Q 阅读(150) 评论(0) 推荐(0) 编辑
摘要:<!--done--> Fiddler是一个http调试代理,它能 够记录所有的你电脑和互联网之间的http通讯,Fiddler 可以也可以让你检查所有的http通讯,设置断点,以及Fiddle 所有的“进出”的数据(指cookie,html,js,css等文件,这些都可以让你胡乱修改的意思)。 F 阅读全文
posted @ 2018-11-22 16:36 Kris-Q 阅读(154) 评论(0) 推荐(0) 编辑
摘要:PHP性能优化利器:生成器 yield理解 如果是做Python或者其他语言的小伙伴,对于生成器应该不陌生。但很多PHP开发者或许都不知道生成器这个功能,可能是因为生成器是PHP 5.5.0才引入的功能,也可以是生成器作用不是很明显。但是,生成器功能的确非常有用。 优点 直接讲概念估计你听完还是一头 阅读全文
posted @ 2018-11-22 14:16 Kris-Q 阅读(134) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示