自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(65)
  • 收藏
  • 关注

转载 索引的一些案列

转至:http://www.cnblogs.com/zhaoguan_wang/p/4604025.html索引的原理与作用,各种书籍和网络上的介绍可以说是铺天盖地,基本上主流数据库系统的也都是一致的。选择索引字段的原则,比如外键字段、数据类型较小的字段、经常用于查询或排序的字段、表关联的字段等等,在此不做赘述。本人在工作中见到过很多人创建的索引,回想自己以前也会有理论知识空洞的体会,

2017-08-28 13:20:07 422

转载 索引使用场景

转至:http://database.51cto.com/art/201505/476869.htm1. 为什么使用索引在无索引的情况下,MySQL会扫描整张表来查找符合sql条件的记录,其时间开销与表中数据量呈正相关。对关系型数据表中的某些字段建索引可以极大提高查询速度(当然,不同字段是否selective会导致这些字段建立的索引对查询速度的提升幅度不同,而且索引也并非越

2017-08-25 18:38:27 1468

转载 nginx和swoole高并发原理

转至:https://segmentfault.com/a/1190000007614502一、阅前热身为了更加形象的说明同步异步、阻塞非阻塞,我们以小明去买奶茶为例。1、同步与异步①同步与异步的理解同步与异步的重点在消息通知的方式上,也就是调用结果通知的方式。同步当一个同步调用发出去后,调用者要一直等待调用结果的通知后,才能进行后续的执

2017-07-26 20:57:45 637

转载 单列模式

转至:http://www.cnblogs.com/yangjinjin/archive/2013/01/31/2887492.html单例模式(Singleton Pattern 单件模式或单元素模式)单例模式确保某个类只有一个实例,而且自行实例化并向整个系统提供这个实例。单例模式是一种常见的设计模式,在计算机系统中,线程池、缓存、日志对象、对话框、打印机、数据库操作

2017-07-17 23:37:44 253

转载 B-树和B+树的应用:数据搜索和数据库索引

转至 http://blog.csdn.net/hguisu/article/details/7786014B-树1 .B-树定义B-树是一种平衡的多路查找树,它在文件系统中很有用。定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树;⑵若根结点不是叶子结点,则至少有两棵子树;⑶除根结点之外的所有非终端结点

2017-07-13 11:22:12 206

原创 秒杀系统思路以及优化

对于秒杀系统相信大家并不陌生,想每天的淘宝京东秒杀,双十一,618的秒杀系统,还有小米,12306的抢购系统等等这些秒杀系统是如何做的呢,下面我们一步步的探讨吧1,对于产品层次的考量,我们应该进行一些限制,比如app用户点一次抢购之后就不能让他再点击,可以将按钮置灰或者禁止点击,如果是浏览器可以用js限制多少秒之内只能提交一次请求,因为其实这是一个很严重的负载,很多时候很多请求其实是没有意义的

2017-07-11 14:37:40 466

转载 常见的数据结构

转至:http://www.cnblogs.com/Yellow-ice/p/5326856.htmlC语言的基本数据类型有:整型int,浮点型float,字符型char等等 那么,究竟什么是数据结构呢?数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合大部分数据结构的实现都需要借助C语言中的指针和结构体类型 

2017-07-10 18:27:08 671

转载 redis持久化分析

转至:http://www.cnblogs.com/Fairy-02-11/p/6182478.html1、前言最近在项目中使用到Redis做缓存,方便多个业务进程之间共享数据。由于Redis的数据都存放在内存中,如果没有配置持久化,redis重启后数据就全丢失了,于是需要开启redis的持久化功能,将数据保存到磁盘上,当redis重启后,可以从磁盘中恢复数据。redis提供两

2017-06-15 15:49:55 186

原创 myaql索引优化

mysql索引类型:1,普通索引:最基本的索引,没有什么限制,可以使用CREATE INDEX indexName ON mytable(username(length));特别注意的是,如果字段数据类型为char,varchar类型,length的值可以小于等于字段设置的实际长度,但是如果是text或者blob类型,必须指定的length;2,唯一索引:索引列的值必须唯一,但

2017-06-14 15:57:05 450

转载 PHP的生命周期

转至:http://www.cnblogs.com/ghjbk/p/6953546.html1、PHP的运行模式:    PHP两种运行模式是WEB模式、CLI模式。无论哪种模式,PHP工作原理都是一样的,作为一种SAPI运行。1、当我们在终端敲入php这个命令的时候,它使用的是CLI。它就像一个web服务器一样来支持php完成这个请求,请求完成后再

2017-06-14 14:29:07 237

转载 php版本差异

转至:http://www.4u4v.net/php-5-25-35-45-55-6-contrast-difference-and-the-new-version-features-detailed.html截至目前(2015.1), PHP 的最新稳定版本是 PHP5.5, 但有差不多一半的用户仍在使用已经不在维护  的 PHP5.2, 其余的一半用户在使用 PHP5.3 .

2017-06-14 11:24:13 263

转载 mysql主从复制延迟问题

转至:http://www.cnblogs.com/wangtao_20/p/6711144.html一、如何监控发生了主从延迟? 在从库机器上,执行show slave status,查看Seconds_Behind_Master值,代表主从同步从库落后主库的时间,单位为秒,若同从同步无延迟,这个值为0。 Mysql主从延迟一个重要的原因之一是:mysql是以单线程串行执

2017-06-14 10:51:14 1055

转载 Apache与Nginx的优缺点比较

转至 http://www.cnblogs.com/huangye-dream/p/3550328.htmlApache与Nginx的优缺点比较 1、nginx相对于apache的优点: 轻量级,同样起web 服务,比apache 占用更少的内存及资源 抗并发,nginx 处理请求是异步非阻塞的,而apache 则是阻塞型的,在高并发下nginx 能保持低资源低消耗高性能 

2017-06-09 15:29:32 207

转载 mysql优化

转至 http://www.cnblogs.com/daxian2012/articles/2767989.html今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显。关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我 们程序员需要去关注的事情。当我们去设计数据库表结构,对操作数据库时(尤其是查表时的SQL语句),我们都需要注意数据操作的性能

2017-06-08 14:53:40 251

原创 tcp/ip参考模块

1,tcp/ip协议参考模型可以归类于四个抽象层中1,主机-网络层:这是tcp/ip的最底层,也称网络接口层,主要负责接收从互联网交来的ip数据包并将其通过低层物理网络发送出去,或者从低层物理网络上接收物理幁并从中抽取ip数据包交给互联网络层。2,互联网层:也称为互联层或者ip层,主要负责将源主机的报文分组发送到目的主机,协议族主要是ip协议,所以也称为ip层3,传输层:传输层主要负责

2017-06-02 15:36:58 646

原创 redis持久化实现原理

redis提供了两种数据持久化实现1,内存快照将内存中的数据以快照的方式写入二进制文件中,默认文件名为dump.rdb,不过有一个问题就是每次快照都是将内存里面的所有数据写入到文件里面,而不是增量数据,所有有时候会有重复数据,如果写入比较频繁的应用可能效率不是很高我们还需要在redis.config里面配置如下:Redis快照写入的频率    save 900 1   

2017-05-18 18:44:38 277

原创 redis各种数据类型应用场景

1,string类型:string类型是二进制类型,可以将图片和视屏,等等保存起来,也可以将一些静态文件保存起来,如js、css等等2,list类型:list类型是双向链表结构,如在微博中的我关注的列表或者论坛中所有回帖用户的id等等数据,同时list也能实现简单的消息队列,具体可以先用rpush把消息放入到队列尾部,再用lpop把消息从队列头部取出3,set类型:

2017-05-18 18:19:58 5043 1

原创 数据库备份shell脚本

实现数据库备份,每周末删除这周的所有备份文件,生成最新的备份文件代码如下:#!/bin/bashcd "/home/backup/"#获取当前时间currentTime=$(date +%Y%m%d)#获取当前是周几currentWeek=`date -d $currentTime +%w`if(($currentWeek == 0));then    rm

2017-05-18 16:52:37 482

转载 http协议中的缓存

原文:http://www.cnblogs.com/TankXiao/archive/2012/11/28/2793365.html缓存的概念缓存这个东西真的是无处不在, 有浏览器端的缓存, 有服务器端的缓存,有代理服务器的缓存, 有ASP.NET页面缓存,对象缓存。 数据库也有缓存, 等等。http中具有缓存功能的是浏览器缓存,以及缓存代理服务器。  http缓存的是指:

2017-05-17 17:04:19 312

原创 垃圾信息防御措施

1,限制ip,Http协议是透明的,ip是在tcp层传递,而http属于应用层,无法控制ip,所以多余ip的限制还是有很大的效果的,最好使用server变量中的HTTP_CLIENT_IP或REMOTE_ADDR函数获取ip,这个很难伪造的,2,Tocken法,可以在程序代码中加上一个隐藏可变的token,每次提交都和服务器校验,校验不通过不返回数据3,校验码,这个不在赘述;

2017-05-10 17:24:30 200

转载 traits使用

PHP是单继承的语言,在PHP 5.4 Traits出现之前,PHP的类无法同时从两个基类继承属性或方法。php的Traits和Go语言的组合功能类似,通过在类中使用use关键字声明要组合的Trait名称,而具体某个Trait的声明使用trait关键词,Trait不能直接实例化。具体用法请看下面的代码:<?php trait Drive { public $carN

2017-05-04 19:12:46 199

转载 nginx运行原理分析

转至 http://www.cnblogs.com/linguoguo/p/5511293.html1.  Nginx的模块与工作原理Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置

2017-03-27 14:35:25 751

转载 nginx优化方案

转至http://blog.csdn.net/xifeijian/article/details/20956605大多数的Nginx安装指南告诉你如下基础知识——通过apt-get安装,修改这里或那里的几行配置,好了,你已经有了一个Web服务器了。而且,在大多数情况下,一个常规安装的nginx对你的网站来说已经能很好地工作了。然而,如果你真的想挤压出Nginx的性能,你必须更深入一些。在本

2017-03-27 14:15:53 374

转载 理解sql原理

我们做软件开发的,大部分人都离不开跟数据库打交道,特别是erp开发的,跟数据库打交道更是频繁,存储过程动不动就是上千行,如果数据量大,人员流动大,那么我们还能保证下一段时间系统还能流畅的运行吗?我们还能保证下一个人能看懂我们的存储过程吗?要知道sql语句,我想我们有必要知道sqlserver查询分析器怎么执行我么sql语句的,我么很多人会看执行计划,或者用profile来监视和调优查询语句或者

2017-03-21 19:12:59 198

原创 深入理解php,lamp,php与计算机硬件

1,先来看看php四层结构第一层:Zend引擎,zend引擎都是用c写的,属于php的内核部分,每次请求的时候zend引擎都会把php代码翻译(即编译)成可执行的opcode码,并且实现了基本的数据结构(如hashtable),内存管理并且提供了api供外部调用,其它的三层都是围绕zend实现第二层:Extensions,extensions通过组件式的方式提供各种基础服务,我们常

2017-03-16 15:29:56 911

原创 mysql优化

1,join优化(1),因为inner join 是等值连接,所以他的效率是最高的,能够使用inner join 就尽量使用inner join (2),连表查询的效率又比子查询效率高,能够使用联查代替子查询就尽量使用联查(3),用join联查的时候先要使用on 再使用where条件过滤(4),使用left join 的时候左边的表尽量小,right join 反之

2017-03-10 17:11:00 215

原创 shell命令基础

1:pgrep:获取某个服务的进程id如:pgrep redis2:查看进程运行时的环境变量可以使用如下命令cat /proc/$pid/environ3:给$path 添加一条新的路径export PATH="$PATH:/home/user/bin"或者PATH="$PATH:/home/user/bin"export PATH4:u

2017-02-05 19:01:47 200

原创 find命令详解

1:列出当前某个目录的文件和目录find ./2:匹配所有以.txt结尾的文件名find /home/root -name "*.txt" -print3:多个条件find . \( -name "*.txt" -o -name "*pdf" \) -printfind . -regex ".*\(\.py\|\.sh\)$"4:否定参数find . | -name

2017-01-22 16:07:22 408

转载 shell 监控服务器负载

在没有nagios监控软件的情况下,只要服务器能上互联网,就可通过发邮件的方式来提醒管理员系统负载与CPU占用的使用情况。一、安装linux下面的一个邮件客户端msmtp软件(类似于一个foxmail的工具) 1、下载安装: http://downloads.sourceforge.net/msmtp/msmtp-1.4.16.tar.bz2?modtime=1217206451&bi

2017-01-19 15:53:51 475

转载 Redis缓存服务搭建及实现数据读写

转至:http://www.cnblogs.com/lc-chenlong/p/3218157.html发现博客园中好多大牛在介绍自己的开源项目是很少用到缓存,比如Memcached、Redis、mongodb等,今天得空抽时间把Redis缓存研究了一下,写下来总结一下,跟大家一起分享 一下。由于小弟水平有限又是第一次接触Redis,有些的不对的地方欢迎指出纠正。1、  下载安装Red

2017-01-10 15:42:12 201

转载 redis分布式部署

转至:http://blog.csdn.net/jhq0113/article/details/44134833Redis在百度百科里的解释:Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库,并提供多种语言的API,包括C#、Java、PHP等等,甚至连JavaScript都做了很好的封装。       可

2017-01-10 14:48:50 364

原创 c++ 内联函数使用技巧

C++语言新增关键字 inline,用于将一个函数声明为内联函数。在程序编译时,编译器会将内联函数调用处用函数体替换,这一点类似于C语言中的宏扩展。采用内联函数可以有效避免函数调用的开销,程序执行效率更高。使用内联函数的缺点就是,如果被声明为内联函数的函数体非常大,则编译器编译后程序的可执行码将会变得很大。另外,如果函数体内出现循环或者其它复杂的控制结构的时候,这个时候处理这些复杂控制结构

2017-01-04 15:04:00 240

原创 c++ 中几个常见的强制类型转换

1) static_cast在C++语言中static_cast用于数据类型的强制转换,强制将一种数据类型转换为另一种数据类型:结构如下static_cast (变量或表达式)如:int a = 10 ;int b = 3;double result  = static_cast (a) / static_cast (b);2) const_cast

2017-01-04 14:58:41 412

转载 负载均衡实现原理和方法

转至:http://blog.csdn.net/lihao21概述在分布式系统中,负载均衡(Load Balancing)是一种将任务分派到多个服务端进程的方法。例如,将一个HTTP请求派发到实际的Web服务器中执行的过程就涉及负载均衡的实现。一个HTTP请求到达Web服务器,这中间涉及多个过程,也存在多种不同负载均衡的方法。本文讲述负载均衡的基本原理与派发策略,下图1是负载均

2016-12-30 18:27:01 907

原创 c++ 变量存储类型

extern 储存类型 :只声明而不定义变量,变量的声明只是告诉编辑器变量的名称和数据类型;变量的定义是给变量分配存储区域;优点就是可以在多个文件里面共享一个全局变量,static 存储类型:static指的是静态变量(又叫持久性变量);静态变量分为两种,第一种是局部静态变量在函数内定义的变量,该变量被分配一个持久的存储空间,当函数调用的时候,变量不会被释放,依然保留其值,下一次调

2016-12-28 19:58:11 692

转载 mysql主重复制

转至http://369369.blog.51cto.com/319630/790921怎么安装mysql数据库,这里不说了,只说它的主从复制,步骤如下:1、主从服务器分别作以下操作:  1.1、版本一致  1.2、初始化表,并在后台启动mysql  1.3、修改root的密码2、修改主服务器master:   #vi /etc/my.cnf    

2016-12-16 10:12:23 311

原创 msyql 忘记密码修改root密码

自己最喜欢用的方法:sudo service mysql stopmysqld_safe --skip-grant-tables & mysql use mysql;update user set password=PASSWORD("newpassword")where user="root";flush privileges;quit;sudo

2016-11-24 11:16:26 303

原创 解决linux crontab无法执行php文件方案总结

1,对于无法执行php文件,首先你应该考虑的问题是是否php代码有错误,你可以先检查一下你的php代码,或者可以在linux上面执行一下这个文件,看是否能够执行成功;如果成功了,就说明是crontab的问题;2,查看你的这个文件是否有执行权限,如果没有,chmod 755 test.php3,看你的crontab语法是否写错了,这个网上一堆的解决方案,我就不在这里赘述了;自己不懂网上搜索,

2016-11-16 20:48:12 2054 1

原创 shell基础(注意事项)

1,shell:shell脚本是用户通向linux文件的桥梁,即是命令语言,也是一种脚本语言;2,shell执行方式:可以赋予脚本执行权限;chmod +x ./test.sh #使脚本具有执行权限./test.sh #执行脚本注意./不能少,这是指当前目录之下3,shell变量:变量名=变量值(注意变量名和=号之间不能有空格),访问可以使用$变量名访问,readonl

2016-10-28 19:27:25 309

转载 php实现队列

此队列算法中有两个类一个是data类,这个类是存放数据;第二个是queue也就是队列类这个就是队列的一些操作。首先队列里包含front(队列的头,也就是出队是要出去的) rear(队列的尾部在这里永远指向0) queue(存放所有入队的data对像,queue中默认存在一个元素当空时front和rear都指向他) maxsize(队列的长度)四个属性应用说明:1初始化队列:生成一个队列

2016-10-28 16:17:38 262

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除