含笑

一个在虚幻世界中比较真实的生物。

高可用高性能yii2.0

知识点介绍

这里写图片描述

查看Yii版本

  1. controllers中加入echo \Yii::getVersion();
  2. 使用yii自带脚本yii.bat

Assets资源组件

  1. 资源文件按需加载
  2. 解决资源间依赖
  3. 一键安装前端插件
  4. 管理方便
class AppAsset extends AssetBundle
{
    public $basePath = '@webroot';
    public $baseUrl = '@web';
    public $css = [
        'css/site.css',
    ];
    public $js = [
    ];
    public $depends = [
        'yii\web\YiiAsset',
        'yii\bootstrap\BootstrapAsset',
    ];
}

AsseetsBundle attribute

这里写图片描述

按需加载

这里写图片描述

用法:http://www.yiichina.com/doc/api/2.0/yii-web-view#registerJsFile()-detail

用户认证User组件

这里写图片描述

这里写图片描述

yii密码加密

这里写图片描述

RBAC(基于角色的权限访问)权限管理 Role Based Access Control

这里写图片描述

这里写图片描述
这里写图片描述

'authManager' => [
            'class' => 'yii\rbac\DbManager',
            // auth_item (role permission)
            // auth_item_child (role->permission)
            // auth_assignment (user->role)
            // auth_rule (rule)
            'itemTable' => '{{%auth_item}}',
            'itemChildTable' => '{{%auth_item_child}}',
            'assignmentTable' => '{{%auth_assignment}}',
            'ruleTable' => '{{%auth_rule}}',
        ],
创建数据表
.yii migrate --migrationPath=@yii/rbac/miginations

全文检索

这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述
这里写图片描述

这里写图片描述

顺序扫描法

索引扫描法

这里写图片描述

创建索引

这里写图片描述

这里写图片描述

搜索索引

这里写图片描述

下载ES文件
yum -y install elasticsearch
配置elasticsearch.yml
cluster.name: yii2-search
node.name: master-1
network.host: 192.168.199.112
http.port: 9200
启动ES
service elasticsearch start
不过中文如果想支持分词,需要安装一个analysis-ak插件
clone下载
git checkout tags/版本号
安装略,然后重启

这里写图片描述

Redis优化QQ邮箱注册

这里写图片描述

  • 网络因素
  • 网络慢导致发邮件响应慢
  • 用户体验差

解决方案

这里写图片描述

  • 安装Redis服务
  • 编写YII2的插件
  • 重写SwiftMailer类的方法

MySQL主从复制

看我之前写过的一篇文章http://blog.csdn.net/qq_33936481/article/details/72956186

  • 解决问题
    • 数据分布
    • 负载均衡
    • 备份
    • 高可用性和容错性

这里写图片描述

这里写图片描述

这里写图片描述

大概步骤:

  1. vim /etc/my.cnf log-bin,server-id
  2. show master status ,reset master status 查看master数据库当前正在使用的二进制日志及当前执行二进制日志位置
  3. grant replication slave on *.* to slave@192.168.199.152 identified by ”123456”; 主服务器授权slave用户通过密码经过152服务器访问 master;
  4. 确定两台服务器是否相同 ping 从服务器启动复制(注意这个写的是主服务器的位置)
  5. start slave;启动复制链路。

MySQL双主热备(复制拓扑)

  • 解决问题
    • Master挂掉不会影响业务
    • 实现心跳

这里写图片描述

大概步骤

  1. 从:log_slave_updates = 1 然后授权 grant
  2. 二主监听从,启动复制
  3. start slave
  4. …….

数据库中间件Mycat

这里写图片描述

  1. 解压
  2. 留坑,以后学

LVS

这里写图片描述

uname -r 查询linux内核版本
yum -y install ipvsadm
ipvsadm -h 

Nat模式

这里写图片描述

阅读更多
版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_33936481/article/details/78838787
个人分类: php
想对作者说点什么? 我来说一句

PHP开发高可用高安全App后端

2018年03月09日 64B 下载

没有更多推荐了,返回首页

不良信息举报

高可用高性能yii2.0

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭