自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

千门公子襄

人,无虎狼之牙,亦无狮象之力量,然能擒狼伏虎,训狮猎象。无他,唯智慧耳。

  • 博客(20)
  • 资源 (1)
  • 问答 (1)
  • 收藏
  • 关注

原创 五.memcached内存管理机制

memcached Slab Allocator分配机制Slab Allocator的基本原理是按照预先规定的大小,将分配的内存分割成特定长度的块,以完全解决内存碎片问题。 Slab Allocation的原理相当简单,就是将分配的内存分割成各种尺寸的块(chunk),并把尺寸相同的块分成组(chunk的集合)Slab Allocation缓存原理:memcached根据收到数据的大小,选择最合适

2017-03-21 12:32:42 326

原创 四.LRU删除机制与永久数据被T

Memcached的过期数据删除机制1.当某个值过期后,并没有从内存删除,因此,使用stats命令统计时,curr_item参数有信息(不为0) 2.当某个新值去占用他的位置时,当成空chunk来占用(即取代了原来数据占用内存的位置) 3.当get值时,判断是否过期,如果过期,返回空,并且清空,curr_item就减少这个过程,只是让用户看不到这个数据而已,并没有在过期的瞬间立即从内存删除,这个

2017-03-21 12:30:03 369

原创 三.缓存雪崩现象和无底洞现象

一.缓存雪崩现象一般是有某个节点失效,导致其他节点的缓存命中率下降,缓存中缺失的数据去数据库查询,短时间内,造成数据库服务器崩溃 重启DB,短时间又被压垮,但缓存数据也多了一些,DB反复多次启动,缓存重建完毕,DB才稳定运行案例: 一个上千万PV的门户网站,缓存生命周期设置了6小时,当等到6小时缓存失效后,之前放到缓存的数据,都转到DB中查询,这时候,DB的压力急剧上升,最后导致DB崩溃解决方法

2017-03-21 10:25:47 443

原创 二.memcached的运用

一.setset key flags exptime bytes [noreply]value参数说明如下:key:键值 key-value 结构中的 key,用于查找缓存值。flags:可以包括键值对的整型参数,客户机使用它存储关于键值对的额外信息 。exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)bytes:在缓存中存储的字节数noreply(可选): 该参数

2017-03-20 23:03:47 226

原创 一.memcached简介and安装

一.Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。 Memcached基于一个存储键/值对的hashmap。二.安装

2017-03-20 22:36:56 262

原创 六.负载均衡的算法

在负载反向代理的算法上,共有五种: 轮询、 ip_hash、weight、 fair(第三方)、 url_hash(第三方) 一.轮询是默认的每一个请求按顺序逐一分配到不同的后端服务器, 如果后端服务器down掉了,则能自动剔除。(如果又存活了,能自动加进来吗?) weight是设置权重,用于后端服务器性能不均的情况,访问比率约等于权重之比 配置文件: upstream test {

2017-03-18 22:42:56 281

原创 五.Nginx反向代理与动静分离

一.简单配置用nginx做反向代理用proxy_pass 以反向代理为例, nginx不自己处理图片的相关请求,而是把图片的请求转发给apache来处理. —-这就是传说的”动静分离”,动静分离不是一个严谨的说法,叫反向代理比较规范. 配置如下:location ~ \.(jpg|jpeg|png|gif)$ { proxy_pass HTTP://IP:port;}1:

2017-03-18 19:01:39 304

原创 四.配置详解

一.Nginx配置段详解// 全局区// 有1个工作的子进程,可以自行修改,但太大无益,因为要争夺CPU,// 一般设置为 CPU数*核数worker_processes 1; Events {// 一般是配置nginx连接的特性// 如1个worker能同时允许多少连接 worker_connections 1024; // 这是指 一个子进程最大允许连1024个连接}http {

2017-03-18 08:57:36 377

原创 三.Nginx进程与模块

一.Nginx架构介绍Nginx 的代码是由一个核心和一系列的模块组成。 核心主要用于提供 WebServer 的基本功能,以及 Web 和 Mail 反向代理的功能; 还用于启用网络协议,创建必要的运行时环境以及确保不同的模块之间平滑地进行交互。 不过,大多跟协议相关的功能和应用特有的功能都是由 nginx 的模块实现的。这些功能模块大致可以分为 事件模块、阶段性处理器、输出过滤器、变量处

2017-03-18 07:25:34 402

原创 二.Nginx的web服务器搭建

一.安装Nginx1.直接apt-get安装sudo apt-get install nginx2.源码安装安装依赖库ssl功能需要openss库gzip模块需要zlib库rewrite模块需要pcre库然后在编译安装nginx3.开启nginxsudo service nginx restart二.初级配置要让 php 与 nginx 一起工作//配置文件位置sudo vim /etc/

2017-03-17 14:35:52 756

原创 一.Nginx功能描述

一.Nginx是什么nginx是一款高性能的HTTP和反向代理服务器软件. 二.Nginx与Apache1.相同点同是HTTP服务器软件,都采用模块化结构设计支持通用语言接口,如PHP,Python等支持正向代理和反向代理支持虚拟主机及ssl加密传输支持缓存及压缩传输支持URL重写模块多,扩展性强多平台支持2.Nginx的优势轻量级 安装文件小 运行时CPU内存使用率低性能强

2017-03-17 10:48:55 516

原创 二.支付宝即时到帐接口和TP框架整合

一.第一步将核心方法和加密方法放在ThinkPHP框架里 home/common/function.php中即可,方便调用二.第二步将两个类放在ThinkPHP项目里的/ThinkPHP/Library/Think下,并修改名字 AlipayNotify.class.php AlipaySubmit.class.php 然后在类开始添加命名空间 namespace Think 然后删掉

2017-03-16 23:17:47 521

原创 一.支付宝接口-开发前的准备

一.支付流程二.环境要求1.PHP5.0以上. 2.curl 3.ssl:Secure Sockets Layer 安全套接层 4.文档地址: 蚂蚁金服:https://doc.open.alipay.com/docs/doc.htm?treeId=193&articleId=105304&docType=1 即时到帐:https://doc.open.alipay.com/doc

2017-03-16 16:13:48 348

原创 六.服务器硬件优化

一.选择CPU1.Mysql有一些工作(Replicate,SQL)只能使用到单核CPU,建议选择单核性能更快的CPU. 2.MySQL对CPU核数的支持并不是越多越快 MySQL5.5使用的服务器不要超过32核.二.Disk IO优化常用RAID级别简介 RAID0:也称为条带,就是把多个磁盘链接成一个硬盘使用,这个级别IO最好 RAID1:也称为镜像,要求至少有两个磁盘,每组磁盘存储的数

2017-03-15 18:00:31 345

原创 五.系统配置优化

一.操作系统配置优化1.网络方面的配置要修改/etc/sysctl.conf文件#增加tcp支持的队列数net.ipv4.tcp_max_syn_backlog=65535#减少断开连接时,资源回收net.ipv4.tcp_max_tw_buckets=8000net.ipv4.tcp_tw_reuse=1net.ipv4.tcp_tw_recycle=1net.ipv4.tcp_fin

2017-03-15 17:47:23 721

原创 四.数据库结构优化

一.选择合适的数据类型1.使用可以存下你的数据的最小的数据类型2.使用简单的数据类型.Int要比varchar类型在mysql处理上简单3.尽可能的使用not null定义字段4.尽量少用text类型,非用不可时最好考虑分表举例: ①使用int类型存储日期时间,利用from_unixtime(),unix_timestamp()两个函数来进行转换create table t

2017-03-15 16:37:36 323

原创 三.索引优化

一.如果选择合适的列建立索引1.在where从句,group by从句,order by从句,on从句中出现的列.2.在索引字段越小越好.3.离散度大的列放到联合索引的前面判断离散度 查看列唯一值的数量,数量越大,离散度越大.select count(distinct customer_id),count(distinct staff_id) from payment;二.索引优化SQL的方法1.

2017-03-15 13:37:22 593

原创 二.SQL语句优化

一.慢查询1.作用把运行时间较长的SQL语句记录下来.2.开启(1)查看是否开启慢查询show variables like 'slow_query_log';(2)记录未使用索引的查询set global log_queries_not_using_indexes=on;(3)慢查询时间show variables like 'long_query_time';//查看慢查询时间set glob

2017-03-14 22:47:07 402

原创 一.数据库分类、设计、优化

一.数据库分类1.关系型数据库:MySQL、Oracl、SQLServer、db2、informix、sysbase。 2.非关系型数据库:Memcache、redis、MongoDB。二.数据库设计(1).需求分析(2).概念结构设计阶段标识实体:具体存在的对象,一般的是名词,一个实体一个表 标识属性:一个属性是一个字段 标识关系: 1.一对多:主键和非主键建立关系 2.一对一:两个表的

2017-03-14 08:34:49 659

原创 虚拟机设置固定IP地址,并且能访问外网

正文

2017-03-01 07:28:32 3691 2

PHP开发晋升课程 BAT资深工程师解析Tp5+Tp6底层源码

1.自动加载。2.配置文件。3.IOC容器及Facade。4.框架执行流程以及路由解读。 5.控制器解读等等,一共11章。如果链接失效或者没有积分还想学习,可以关注并私聊我

2020-05-05

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

TA关注的人

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