自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 解密网易MySQL实例迁移高效完成背后的黑科技

作者:温正湖,网易杭研院资深工程师,负责网易云数据库平台核心开发和运维工作,对MySQL、MongoDB等数据库和Linux存储领域具有深入研究。 1简介我们把数据库里部分或全部Schema和数据迁移到另一个实例的行为称为实例迁移,将导出数据的实例称为源实例,导入数据的实例称为目标实例。根据迁移数据库类型的不同,可以分为同种数据库之间的迁移,如从MySQL迁到MySQL

2016-10-19 17:57:46 904 1

转载 MySQL 数据库优化(运维角度)

一个成熟的数据库架构并不是一开始设计就具备高可用、高伸缩等特性的,它是随着用户量的增加,基础架构才逐渐完善。这篇博文主要谈MySQL数据库发展周期中所面临的问题及优化方案,暂且抛开前端应用不说,大致分为以下五个阶段:1、数据库表设计  项目立项后,开发部根据产品部需求开发项目,开发工程师工作其中一部分就是对表结构设计。对于数据库来说,这点很重要,如果设计不当,会直接影响访问速度和用

2016-10-14 14:30:38 570

转载 SQL语句优化技巧30个

1、应尽量避免在 where 子句中使用!=或2、对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。3、应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如:select id from t where num is null可以在num上设置默认值0,确保表中num列没

2016-10-13 11:59:44 418 1

转载 PHP Socket 编程过程详解

Socket用于进程间通信。进程间通信通常基于客户端—服务端模型。此时,客户端—服务端是可以彼此交互的应用程序。客户端和服务端之间的交互需要连接。Socket编程负责的就是为应用程序之间建立可进行交互的连接。在本文中,我们将学习如何用PHP创建一个简单的客户端—服务端。我们还将学习如何客户端应用程序如何发送消息到服务端,以及如何从服务端接受消息。◆使用代码目的:开发

2016-10-13 10:38:32 381

转载 MySQL数据库的数据类型和索引

数据库的数据库索引对程序员来说是透明的,意味着数据库建立索引之前和之后,你的SQL语句都可以正常运行,索引的运用只是数据库引擎工作时候的优化手段。但是,这不是意味着数据库索引仅仅是数据库设计和运维者的事情,对于一个程序员如果对数据库已有的索引有所了解,还是可以大大优化程序员数据库的查询和修改语句执行效率的,以免你的低效查询语句称为拖累整个系统性能的Black Sheep。本文对MySQL数

2016-09-29 14:44:24 2172

转载 使用 mytop 监控mysql性能状态

Linux 有个非常有用的 top 命令,可以查看操作系统的性能状态,mytop 命令类似 top 命令,界面结构也类似,只是 mytop 显示的是 mysql 的状态信息,例如我们非常关心的QPS 指标使用说明mytop 的结果信息主要分为上下两个部分,上面是各项指标,下面是线程列表第1行很简单,就是版本信息第2行是整体信息Queries 服务器处理过的q

2016-09-21 15:46:37 3433

转载 iptables示例:限制来自某一IP的并发访问

下面模拟一个iptables的应用场景场景描述有两台机器 A 和 BA 上运行WEB服务,B 向 A 发送大量请求A 想限制 B 的并发数量,通过 iptables 配置实现:当 B 发送的并发数大于10时,拒绝对其提供服务模拟过程A 的 IP:192.168.31.158B 的 IP:192.168.31.2

2016-09-05 11:36:29 6137

转载 Mysql 5.7 主从复制的多线程复制配置方式以及读写分离中间件 MaxScale

mysql主从复制配置配置思路1. 修改master和slave的配置文件,使用二进制日志,指定serverid目的是让各自都有了自己的唯一标示,并以二进制文件格式进行交流2. master中创建授权用户,查看二进制日志文件名,及最新位置让slave知道用哪个用户信息访问master,知道读取哪个日志文件,及从哪儿开始读3. slave中使用被授权用户信息及日志文件信息

2016-08-17 17:19:23 10955

转载 更快的方式实现 PHP 数组去重

概述使用PHP的array_unique()函数允许你传递一个数组,然后移除重复的值,返回一个拥有唯一值的数组。这个函数大多数情况下都能工作得很好。但是,如果你尝试在一个大的数组里使用array_unique()函数,它会运行地慢一些。有一个比较好而且更快的函数array_flip()来替代使用array_unique()函数来创建唯一的数组。这个魔法般的函

2016-08-12 15:06:54 322

转载 双机高可用、负载均衡、MySQL(读写分离、主从自动切换)架构设计

架构简介前几天网友来信说帮忙实现这样一个架构:只有两台机器,需要实现其中一台死机之后另一台能接管这台机器的服务,并且在两台机器正常服务时,两台机器都能用上。于是设计了如下的架构。此架构主要是由keepalived实现双机高可用,维护了一个外网VIP,一个内网VIP。正常情况时,外网VIP和内网VIP都绑定在server1服务器,web请求发送到server1

2016-08-09 17:12:21 2163

转载 浏览器缓存知识小结及应用

浏览器缓存,也就是客户端缓存,既是网页性能优化里面静态资源相关优化的一大利器,也是无数web开发人员在工作过程不可避免的一大问题,所以在产品开发的时候我们总是想办法避免缓存产生,而在产品发布之时又在想策略管理缓存提升网页的访问速度。了解浏览器的缓存命中原理,是开发web应用的基础,本文着眼于此,学习浏览器缓存的相关知识,总结缓存避免和缓存管理的方法,结合具体的场景说明缓存的相关问题。希望能对有需要

2016-08-01 14:57:35 343

转载 php魔术方法和魔术变量

PHP把所有以__(两个下划线)开头的类方法当成魔术方法。所以你定义自己的类方法时,不要以 __为前缀。 1、__construct()当实例化一个对象的时候,这个对象的构造方法将首先被调用;我们知道php5对象模型和类名相同的函数是类的构造函数,那么如果同时定义构造函数和__construc()方法的话,php5会默认调用__contruct()而不会调用同类名函数,所以__co

2016-07-21 17:55:22 523

转载 linux和win下 MySQL数据库的备份与还原

MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。 1.Win32下MySQL的备份与还原 1.1 备份 开始菜单 | 运行 | cmd |利用“cd /Program Files/MySQL/MySQL Server 5.0/bin”命令进入bin文件夹 | 利用“mysqldump  -u 用户名 -p databasename >

2016-07-20 17:02:33 432

转载 PHP编程中10个最常见的错误

错误1:foreach循环后留下悬挂指针在foreach循环中,如果我们需要更改迭代的元素或是为了提高效率,运用引用是一个好办法:$arr = array(1, 2, 3, 4);foreach ($arr as &$value) {$value = $value * 2;}// $arr is now a

2016-07-11 15:55:47 579

转载 Redis和Memcached的区别(数据类型、内存管理、数据持久化、集群管理)

Redis的作者Salvatore Sanfilippo曾经对这两种基于内存的数据存储系统进行过比较:Redis支持服务器端的数据操作:Redis相比Memcached来说,拥有更多的数据结构和并支持更丰富的数据操作,通常在Memcached里,你需要将数据拿到客户端来进行类似的修改再set回去。这大大增加了网络IO的次数和数据体积。在Redis中,这些复杂的操作通常和一般的GET/SET

2016-07-08 10:52:13 14958 2

转载 看看PHP迭代器的内部执行过程以及用PHP迭代器来实现一个斐波纳契数列

下面我们来了解如何实现一个自定义的迭代器,然后再开始慢慢理解迭代器的内部工作原理。先来看一个官方的例子:class myIterator implements Iterator { private $position = 0; private $array = array( "first_element", "second_element",

2016-07-07 11:41:57 468

转载 PHP引用(&)各种使用方法实例详解

php的引用(就是在变量或者函数、对象等前面加上&符号),在PHP 中引用的意思是:不同的名字访问同一个变量内容。与C语言中的指针是有差别的.C语言中的指针里面存储的是变量的内容,在内存中存放的地址。1.变量的引用PHP 的引用允许你用两个变量来指向同一个内容复制代码代码如下:    $a="ABC";    $b =&$a;    echo $a;//

2016-07-06 18:07:14 3168

转载 10个值得深思的PHP面试问题

Q1第一个问题关于弱类型$str1 = 'yabadabadoo';$str2 = 'yaba';if (strpos($str1,$str2)) { echo "\"" . $str1 . "\" contains \"" . $str2 . "\"";} else { echo "\"" . $str1 . "\" does not contain \""

2016-07-06 16:47:29 445

原创 SAE中php预定义常量引入位置

在sae中搭建了一个wordpress项目,查看配置文件时发现了几个常量/** WordPress 数据库的名称 */define('DB_NAME', SAE_MYSQL_DB);/** MySQL 数据库用户名 */define('DB_USER', SAE_MYSQL_USER);/** MySQL 数据库密码 */define('DB_PASSWORD', SAE_MYS

2016-07-06 15:45:14 615

转载 PHP 漏洞与代码审计

1.xss + sql注入其中占大头的自然是XSS与SQL注入,对于框架类型或者有公共文件的,建议在公共文件中统一做一次XSS和SQL注入的过滤。写个过滤函数,可由如下所示:$_REQUEST = filter_xss($_REQUEST);$_GET = filter_xss($_GET);$_POST = fi

2016-07-06 14:17:53 315

转载 对 Linux 专家非常有用的 20 个命令

对 Linux 专家非常有用的 20 个命令41. 命令: ifconfigifconfig用来配置常驻内核的网络接口信息。在系统启动必要时用来设置网络适配器的信息。之后,它通常是只需要在调试时或当系统需要调整时使用。检查活动网络适配器01[avishek@tecmint ~]$ ifconfig0

2016-07-04 19:23:14 2143

转载 对中级 Linux 用户非常有用的 20 个命令

对中级 Linux 用户非常有用的 20 个命令也许你已经发现第一篇文章非常的有用,这篇文章是继对初级Linux用户非常有用的20个命令 的一个延伸。 第一篇文章的目的是为新手准备的而这篇文章则是为了Linux的中高级用户。在这里你将学会如何进行自定义搜索,知道正在进行的进程和停掉进程,如何使用Linux的强势功能和如何在系统内编译C,C++和JAVA程序。21. 命令: Find

2016-07-04 19:20:07 874 1

转载 对 Linux 新手非常有用的 20 个命令

对 Linux 新手非常有用的 20 个命令你打算从Windows换到Linux上来,还是你刚好换到Linux上来?哎哟!!!我说什么呢,是什么原因你就出现在我的世界里了。从我以往的经验来说,当我刚使用Linux,命令,终端啊什么的,吓了我一跳。我担心该记住多少命令,来帮助我完成所有任务。毫无疑问,在线文档,书籍,man pages以及社区帮了我一个大忙,但是我还是坚信有那么一篇文章记录了

2016-07-04 19:10:20 2339

转载 通信协议 - HTTP、TCP、UDP

CP   HTTP   UDP: 都是通信协议,也就是通信时所遵守的规则,只有双方按照这个规则“说话”,对方才能理解或为之服务。TCP   HTTP   UDP三者的关系:TCP/IP是个协议组,可分为四个层次:网络接口层、网络层、传输层和应用层。在网络层有IP协议、ICMP协议、ARP协议、RARP协议和BOOTP协议。在传输层中有TCP协议与UDP协议。在应

2016-06-21 16:16:04 616

转载 PHP类中的重要知识点

1. __construct:      内置构造函数,在对象被创建时自动调用。见如下代码:phpclass ConstructTest { private $arg1; private $arg2; public function __construct($arg1, $arg2) { $this->arg1 = $arg1;

2016-06-03 16:39:58 2026

转载 探讨PHP类的封装与继承

封装       把成员方法和成员属性封装到类中,隐藏属性和方法实现的细节,通过public、protected、private等限定类成员的访问权限,数据被保护在内部,只通过被授权的成员方法才可以操作,尽可能的对成员进行封装。public:方法或者属性在任何作用域下都可以访问到,而且是默认的,如果没有为一个属性或方法指定访问修饰符,它将是public。protected:本类

2016-06-02 11:04:32 248

转载 jQuery选择器大全

选择器是jQuery最基础的东西,本文中列举的选择器基本上囊括了所有的jQuery选择器,也许各位通过这篇文章能够加深对jQuery选择器的理解,它们本身用法就非常简单,我更希望的是它能够提升个人编写jQuery代码的效率。本文配合截图、代码和简单的概括对所有jQuery选择器进行了介绍,也列举出了一些需要注意和区分的地方。一、基本选择器1. id选择器(指定id元素)将i

2016-06-01 19:58:08 282

转载 js事件列表

javascript事件列表解说事件浏览器支持解说一般事件onclickIE3、N2鼠标点击时触发此事件ondblclickIE4、N4鼠标双击时触发此事件onmousedownIE4、N4按下鼠标时触发此事件onmouseupIE4、N4鼠标按下后松开鼠标时触发此事件onmouse

2016-06-01 19:29:15 241

转载 处理PHP中字符串的常用操作及函数

1. 确定一个字符串的长度这是最为常见和基础的例子,对于确定一个字符串的长度,我们应该使用strlen()函数,比如要获取下面字符串$text 的长度:$text = "sunny day";  $count = strlen($text);   // $count = 9  2. 截取文本来创建一个概要新闻性质的网站通常会在发布正文中的开头部分截取大约20

2016-06-01 18:34:24 557

转载 HandlerSocket简介以及php使用handlersocket

HandlerSocket作者:Eugene ,发布于2012-11-9 目录:HandlerSocket的原理HandlerSocket的优势和缺陷阐述HandlerSocket的性能测试HandlerSocket的原理HandlerSocket的应用场景:MySQL自身的局限性,很多站点都采用了MySQ

2016-06-01 11:30:19 724

转载 mysql存储过程详解以及PHP调用MYSQL存储过程实例

mysql存储过程详解1.      存储过程简介 我们常用的操作数据库语言SQL语句在执行的时候需要要先编译,然后执行,而存储过程(Stored Procedure)是一组为了完成特定功能的SQL语句集,经编译后存储在数据库中,用户通过指定存储过程的名字并给定参数(如果该存储过程带有参数)来调用执行它。一个存储过程是一个可编程的函数,它在数据库中创建并保存

2016-05-31 16:06:40 11475 2

转载 Mysql事件学习

转自  http://blog.chinaunix.net/uid-20639775-id-3323098.html在系统管理或者数据库管理中,经常要周期性的执行某一个命令或者SQL语句。对于linux系统熟悉的人都知道linux的cron计划任务,能很方便地实现定期运行指定命令的功能。Mysql在5.1以后推出了事件调度器(Event Scheduler),和linux的cron功能一样,能

2016-05-31 15:52:31 257

转载 你必须了解的Session的本质

【转载】51CTO.COM博文有一点我们必须承认,大多数web应用程序都离不开session的使用。这篇文章将会结合php以及http协议来分析如何建立一个安全的会话管理机制。我们先简单的了解一些http的知识,从而理解该协议的无状态特性。然后,学习一些关于cookie的基本操作。最后,我会一步步阐述如何使用一些简单,高效的方法来提高你的php应用程序的安全性以及稳定行。

2016-05-24 17:35:24 1268

转载 serialize序列化和json

【序列化的概念】序列化是将对象状态转换为可保持或可传输的格式的过程。与序列化相对的是反序列化,它将流转换为对象。这两个过程结合起来,可以轻松地存储和传输数据。将对象的状态信息转换为可以存储或传输的窗体的过程。 在序列化期间,对象将其当前状态写入到临时或持久性存储区。以后,可以通过从存储区中读取或反序列化对象的状态,重新创建该对象。通常,对象实例的所有字段都会被序列化,这意味

2016-05-24 15:41:47 8066

转载 面试题集锦

1、实现一个函数,对一个正整数n,算得到1需要的最少操作次数。操作规则为:如果n为偶数,将其除以2;如果n为奇数,可以加1或减1;一直处理下去。例子:func(7) = 4,可以证明最少需要4次运算n = 7n-1 6n/2 3n-1 2n/2 1要求:实现函数(实现尽可能高效) int func(unsign int n);n为输入,返回最小的运算次数。给出思

2016-05-24 10:57:05 327

转载 深入 PHP 面向对象、模式与实践

转自:http://blog.jobbole.com/97315/1 语法1.1 基础语法clone需要操作原对象,但又不想影响原对象.PHP1$K_back = clone $K;基本数据类型和数组都为真复制,即为真副本,当属性为对象时,为假复制,改变副

2016-05-23 16:45:05 867

转载 PHP 安全性漫谈 Linux+Apache+Mysql+PHP

原文出处: 彭长霖    转自 http://blog.jobbole.com/99448/本文所讨论的安全性环境是在Linux+Apache+Mysql+PHP。超出此范围的安全性问题不在本文范畴之内一、apache server安全性设置1、以Nobody用户运行一般情况下,Apache是由Root 来安装和运行的。如果Apache Server进程具有

2016-05-21 16:05:46 613

转载 PHP下富文本HTML过滤器:HTMLPurifier使用教程

一、如何在程序中调用HTMLPurifier1、一般性调用根据官方的文档中,我们可以要在PHP程序中调用HTMLPurifier,需要先将HTMLPurifier.auto.php引入到程序文件中,具体方法如下:require_once '/path/to/HTMLPurifier.auto.php';2、将HTMLP

2016-05-21 11:45:56 1434

转载 xss攻击入门

转自   http://www.cnblogs.com/bangerlee/archive/2013/04/06/3002142.htmlxss表示Cross Site Scripting(跨站脚本攻击),它与SQL注入攻击类似,SQL注入攻击中以SQL语句作为用户输入,从而达到查询/修改/删除数据的目的,而在xss攻击中,通过插入恶意脚本,实现对用户游览器的控制。xss攻击可以分

2016-05-21 11:34:04 524

转载 Linux命令大全----常用文件操作命令

摘要:本文主要讲了Linux命令大全----常用文件操作命令,并附有实例ls这个命令是经常用到的,用来显示当前目录下有哪些文件 ,ls最常用的参数有三个: -a -l -F。ls -a说明:Linux上的文件以“.”开头的文件被系统视为隐藏文件,仅用ls命令是看不到他们的,而用ls -a除了显示 一般文件名外,连隐藏文件也会显示出来。ls -l(这个参数

2016-05-19 20:09:01 611

空空如也

空空如也

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

TA关注的人

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