7 e! f% b% b; M9 I& r$ C. q
# ?+ l3 U& S4 m# e2 ^ P& _
【课程简介】360高级工程师亲授,遵循一线互联网公司的实际开发流程,从更高级的层面,带你掌握项目功能设计优化、架构设计优化等更高级的技术,深入浅出地讲解实际开发难题和项目优化解决方案,点击视频,立即免费试学1 ?9 N9 z1 D y
% J/ `2 o8 c- Z- r* b% |- ]; z1 z3 h4 \3 s9 [
【课程目录】
$ L" o2 t, B& i! x第1章 课程简介7 y4 n V6 [7 |8 O6 @
本章内容会给大家通览本门课程的所有知识点。7 M7 }+ I6 u0 |' |
1-1 课程介绍' g* t6 n( j, F
* |# v! Y$ f6 C
第2章 Yii2框架的Assets前端资源发布的使用
0 Y4 h5 d; E1 R本章我们会详细学习Assets组件的使用,使用Nav插件和Breadcrumbs插件进行导航的加载,轻松安装加载第三方组件JSTree完成无限分类的树形展示,如何设置前端资源文件按需加载和使用压缩后的资源文件加速前端页面的加载
) w% u# ?% Z- d8 D, A2-1 升级Yii2最新版
4 a" o7 y7 J1 g: L2-2 如何使用Assets资源组件8 ?1 \* p4 N) p, `4 L0 E: f( s. q
2-3 使用Asset资源包管理页面资源8 Y Z& z! }; O( F4 V
2-4 前端资源的按需加载3 F' L# {7 r1 L. V i. N& P/ ?/ w) C
2-5 使用NavBar和Nav渲染页面导肮' f- _! q$ N' B
2-6 后台资源包的创建和使用3 p8 J$ m" X: R# B
2-7 面包屑组件Breadcrumbs的使用
9 n! o8 n2 I8 B+ i2-8 使用JSTree组件构建树形结构数据列表
6 ]$ q" q* |: C; |; `6 }2 m2-9 对JSTree树形结构数据进行分页处理
6 P* R/ [% ~, m2-10 对JSTree进行Ajax编辑和Ajax删除操作
% I# W6 |# H1 z$ d7 k2 X( x2-11 使用压缩后的资源文件加速前端页面的加载
5 D6 y3 X, S* B! g: ^( r, c8 g t' `) X$ Y4 Q; A& B. e, A
第3章 Yii2框架的用户认证体系8 n8 `- n& t* c. t
本章对Web系统的用户认证体系进行重构,我们将使用Yii2框架的用户认证User组件重新设计用户的登录和退出操作,并使用过滤器进行访问用户的验证和请求方式的过滤,不仅如此,我们还会使用更加安全的哈希算法取代MD5对密码进行加密处理,为我们的系统提供更高的安全性。通过本章的学习,大家将可以使用User组件更轻松安全地...* u& P! i4 N$ }- S4 U3 X
3-1 Yii2用户认证体系基本概念及实现
2 m* p9 Y: g) \1 ?3-2 使用用户认证组件User相关属性和方法完成前台的登录和退出操作: ^3 j, x$ l# U. ]5 U
3-3 使用过滤器AccessControl控制认证用户6 b' W: d3 U! @8 d
3-4 使用过滤器VerbFilter过滤请求方式) `) [3 _! o* [( b7 e$ z
3-5 分离前后台用户认证' U6 M# |! H" k c. s1 I ~! T0 w( V
3-6 后台使用过滤器验证用户
/ r7 o. w' A: R+ c( {3-7 使用更安全的哈希算法bcrypt对密码加密处理
* L+ p# y8 W) z# ~" u
8 M2 l- G `5 k8 h3 y; d9 I+ K) ^8 X第4章 Yii2框架的RBAC(基于角色的权限访问)权限管理# K$ J% ^3 r% R4 k& E
本章将对后台用户的认证进行更细致的权限分配管理,为大家详细讲解RBAC基于角色的访问控制的工作原理以及如何使用Yii2框架的RBAC组件进行用户角色管理、权限节点的一键批量添加,以及为角色分配权限和为用户分配角色的操作,以及如何添加个性化Rule验证规则做精确到数据的权限认证,最后设置后台菜单智能化显示,隐藏没有权...4 Y6 ?, z: [4 G# t( W: c% h+ k3 u
4-1 RBAC权限管理基本概念- @2 }+ R. w% U+ u
4-2 配置RBAC) h0 v6 Q% M! t3 U
4-3 后台创建用户角色
# D4 d' H0 a4 t4 \& D2 |1 ~4-4 利用GridView在后台显示角色列表
/ V% u% O1 o9 b# U3 A# X& m& @) X7 {2 v4-5 利用Yii2的console命令行一键添加所有权限(1)* Z1 v, F5 J0 X% S& ^( `
4-6 为角色分配权限子节点和角色子节点(1)
, k" w5 H! v" w! }; @$ `8 n9 p4-7 为角色分配权限子节点和角色子节点(2)
/ q; b( Z- U, J$ z+ |8 k4-8 在后台为管理员用户授权(1)
. b1 n8 L- \1 b- G2 X" w7 X4-9 在后台为管理员用户授权(2)
3 c5 T* b# s/ P9 U% |4 K7 ~) x4-10 后台管理员权限的认证; ^0 ^* `4 ~, W5 Z, x: b
4-11 为后台管理员添加权限
8 }* I1 }2 H; A, z P4-12 添加Rule规则做精确到每一条数据的认证(1) v$ W* P F' o3 j, b) ]) [
4-13 添加Rule规则做精确到每一条数据的认证(2)
7 T2 T8 Y/ _0 j; B6 @. G4-14 后台智能判断没有权限访问的菜单不做显示/ E1 K6 ]) B8 W& K! ]
4-15 为新加用户添加默认角色; @' L2 t( C; [0 C1 N& Y" G0 v
8 B$ P: ]! h8 o5 H% G! b9 |
第5章 基于ElasticSearch实现商品的全文检索
3 i1 Y4 Q1 S+ J- E本章会完成商品的全文检索功能,课程将为大家搭建ElasticSearch全文检索引擎服务,通过ElaticSearch为我们提供的RESTful_API创建索引以及完成全文数据的检索和关键字的高亮处理。9 n' X: T: \3 g( c; r f# [
5-1 介绍全文检索概念" |9 K0 n( _/ |% f {0 ?
5-2 全文检索引擎ElasticSearch
4 W8 N) L% g$ @/ N2 _& x* {5 S5-3 ElasticSearch以及中文分词插件IK的安装和配置以及服务的启动
, V4 f7 p) z* R' J4 E) e! @1 @# Y+ h4 n5-4 通过_analyze分析分词器standard和ik的区别8 W C8 a; T1 s) y
5-5 通过RESTful_API创建一个索引9 {7 K' R* ~ l& b! q8 }* `
5-6 通过RESTful_API完成全文数据的检索以及关键字的高亮显示/ G4 ] W9 R; ]/ Q3 m+ K+ @
5-7 使用elasticsearch-jdbc将现有MySQL数据批量导入至ElasticSearch当中4 O8 P/ \8 p5 }$ H. l7 W7 f" r
5-8 使用yii2-elasticsearch组件将ES集成到Yii2当中完成商品检索(1)/ k1 i$ e; f1 g& @: _6 W
5-9 使用yii2-elasticsearch组件将ES集成到Yii2当中完成商品检索(2)
8 m8 `; Y( O3 U9 A! M. n" j7 m5-10 使用elasticsearch-jdbc自动导入增量数据
b; `' Q* _ O v& P% Z7 A+ R2 k L0 D
第6章 编写基于Redis的邮件异步发送工具/ l: Z9 \. g8 A. q& V6 f
本章将使用Redis优化系统的邮件发布系统,首先课程会为大家展示如何编写一个基于Redis的邮件离线发送插件,该插件将改进扩展SwiftMailer组件的邮件发送和接收方式,不仅如此,我们还会将编写好的插件提交至Composer官方库,吸引更多的开发者一起来维护和开发我们的插件。通过本章内容的学习,大家可以学习到Redis队列的使用.../ E# C' ^8 I5 l: n1 _8 S t. @ E
6-1 介绍异步发送邮件工具原理
6 j8 K3 w& h0 ?6 S, u* Q6-2 安装Redis服务) `4 ]0 Z2 N. w: X% d- X8 G
6-3 安装PHP的redis扩展0 c) ?. A2 Q: S" a5 I
6-4 安装Yii2的Redis插件! r; Y% e6 k6 f
6-5 扩展SwiftMailer将邮件存储至Redis队列4 U# l' C" h7 l9 p
6-6 扩展SwiftMailer将队列中的邮件进行离线发送
5 b. T" r; t* \1 e6-7 建立计划任务定时离线发送队列中的邮件
+ R, c' `3 Q) h+ o8 d- |7 O6-8 提交自定义插件到Composer源并设置包自动更新( G7 x& M) m, S. Y
3 o- J1 Q9 _8 F- B2 _1 _
第7章 Yii2缓存机制和URL美化处理6 g% b$ L% h% {; u0 q- c; d# {
本章会对系统进行数据缓存、SQL查询缓存,此外,课程还会在缓存的基础上设置缓存依赖,最后我们将开启Session自定义存储至Redis以及使用UrlManager组件进行URL路由的美化,更利于系统的SEO。通过本章内容的学习,大家会掌握绝大多数Web系统的缓存设置方式以及URL美化方式。...9 I# [7 [" N% ?: x" _* Y
7-1 开启Redis缓存以及Debug调试台_xvid2 c* K1 N* X- h. I) i6 g1 k' g
7-2 使用数据缓存将菜单分类数据进行缓存
8 `0 z L& U" w0 c V& y6 W7-3 使用缓存依赖自动更新购物车缓存数据: k# f ~& o4 ^' }( y; C9 i9 ?
7-4 使用【查询缓存】缓存商品数据$ j, o: z4 U1 B* [% y3 c' T. i0 Y
7-5 自定义session存储Redis避免会话保持问题
+ ~# k# U2 a& G7-6 使用UrlManager处理项目URL路由美化6 t9 [+ ]% d) M4 x
V7 D: H; k0 @( W2 x# x
第8章 Yii2日志组件的使用和Sentry日志收集以及Kafka消息队列的使用* Z! c* y* v, Y6 |) g
日志对一个系统的安全和开发运营的重要性是不言而喻的,本章将为大家带来Web日志的分类和处理方式,首先课程会为大家讲解Yii2框架的日志组件的使用,其次将讲解到如何使用Sentry进行错误日志的收集和开发人员处理错误的管理,最后为了提高系统日常运行日志的收集效率而不影响正常业务的运行,将使用Kafka消息队列进行日志的...* K6 |% S9 k4 }" @1 W4 Z
8-1 如何使用Yii2的日志组件0 Q# ?# H3 t& ~; ?
8-2 使用sentry进行错误日志的收集和开发人员的管理* J( H( M/ v8 ]; I. j
8-3 理解消息队列相关概念
, H; j8 p* ^' d9 [8-4 了解Kafka消息队列
1 W% M1 v' f. C! w+ g$ _8-5 安装kafka服务
G$ B1 g" J4 w8-6 安装PHP的kafka扩展rdkafka
U- ^, \! A$ C8-7 编写Kafka的Producer方法
R; y1 ]. v( S$ l2 ~8-8 编写Kafka的异步消费者方法* _+ B. Y0 N2 x& H
; N7 l; z8 I9 T; ~
第9章 搭建高性能、高可用的MySQL集群架构2 |& @! e! |! ?' `! ]. O
本章着重对MySQL架构进行优化设计,课程将搭建高性能高可用的MySQL架构,包括MySQL的主从复制、双主热备的实现,以及使用数据库中间件MyCAT进行MySQL数据的读写分离、心跳检测和数据表水平分片分库处理。 通过本章内容的学习,大家可以深入理解如何在大并发、大流量场景下搭建高可用、高性能的MySQL集群架构。...2 [( c! A& ~6 c" Q: }$ V
9-1 MySQL主从复制的工作原理
8 q( {' w* a; j A8 S" }9-2 配置MySQL主从复制
+ P6 Y7 F) I* {+ n+ C7 z" y9-3 MySQL双主热备的实现
7 i/ I. |& v P7 t P8 l9-4 介绍数据库中间件MyCat/ y. s/ r! b) Z8 n+ }: i$ T
9-5 下载安装Mycat配置并启动
6 T( B; {! M/ h* l& V9-6 配置Mycat实现读写分离以及心跳检测自动切换
0 F7 t+ P4 m b& K) o9-7 配置Mycat对数据表进行水平分片分库处理6 L8 p& c, p- e
9-8 Mycat使用总结以及项目db配置的修改 t$ E) ]# S+ W$ t: U3 ~
0 d; ~) e; W: g
第10章 使用LVS负载均衡技术实现高可用、高性能的服务器集群架构0 x/ X) Q3 f9 l$ D
本章内容将使用LVS负载均衡技术实现高可用、高性能的服务器集群架构,其中课程会讲解LVS负载均衡技术的NAT模式、DR模式以及IP-TUNNELING模式的工作原理及实现方式。$ \4 R6 ]- s: L; ^' B; b
10-1 LVS基本概念( f2 K# o: R, q
10-2 准备LVS所需要的环境和ipvsadm软件的安装* K+ U$ x8 x1 y
10-3 LVS负载均衡技术NAT模式原理及实现方式
+ }6 V' o; L% M) {% Q( L. A10-4 LVS负载均衡技术DR模式原理及实现方式3 b- I; v% Z: ]3 b% m2 C# p
10-5 LVS负载均衡技术IP-TUNNELING模式原理及实现方式
' d& Z! c' b& h; W' h* T: N
7 G5 K. o" `( f, f; p* U第11章 课程总结8 t3 s4 c. Y# s. U
本章节针对本课程的所有内容,做下整体的梳理和回顾。
- T% J" k1 c8 u11-1 学习总结
; H; \3 B! j- J- m
% g& ^% U, h. U( }& u: J【下载地址】
# V$ O- A# b1 \
- o( |; d0 b( ]5 f9 ?- [* _4 x( e6 S% I) I8 u5 L5 b! M6 A! V
3 g, g, E: R8 ^
$ M- Z1 @' D2 q' s% P% y) R8 i |
|