使用微信扫一扫分享到朋友圈
使用微信扫一扫进入小程序分享活动
PHP 大会的 PPT 和视频的版权归属于讲师,讲师可以自行决定是否公开与发布时间。
所有可以公开的内容都会整理到 https://github.com/devlinkcn/
所有现场照片由 IT 大咖说提供
第一天照片:http://gallery.vphotos.cn/vphotosgallery/index.html?vphotowechatid=9A1475B806AF3C3E4B6E0A931D47F5AA
第二天照片:http://gallery.vphotos.cn/vphotosgallery/index.html?vphotowechatid=458656FE08874CE1419BB6B0A982F86E
大会现场花絮视频,由黑马柒伍零提供:
https://sh5.heima750.cn/video.php?id=786&from=timeline&isappinstalled=1
PHP 全球开发者大会是 DevLink 开发者社区主办的,一年一度的 PHP 开发者节日。今年,我们首站活动依然选择在北京开始,具体时间为 6 月 10-11 日,规模为 800-1000 人。
继前年的“ PHP7 初探”、去年的“高性能的 PHP ”主题后,第三届 PHP 全球开发者大会的活动主题是“高可用的 PHP ”,本次活动,我们将在 PHP7 这个日趋成熟的 PHP 版本之上,与大家探讨 PHP 开发和运维中的高可用性挑战。
在过去的 2 年间,在以鸟哥为首的 PHP 开发组的努力之下,PHP 解决了被开发界诟病的性能问题。在今天,我们已经可以在非常可靠的状态下使用 PHP7 来编写和部署我们的 PHP 程序,在不做任何改动的情况下,将运行效率提高了几倍甚至几十倍,而在性能上,PHP 代码可以与任何现代 Web 编程语言比肩。
而在赋予 PHP 新生命的 PHP7 之上,在性能提升之余。过去一年中,相信 PHP 开发者更加注重高可用方面的提升,除了传统的 LA(N)MP 组合以外,PHP 能否与更“先进”、前沿的开发和部署思想相结合?PHP 能否也可以采用微服务、容器化的思想提升可用性?PHP 能否与 newSQL、DFS 等新兴的分布式系统配合?答案虽然是肯定的,但相信这里会有很多很多的坑需要让大家知道。
开发界最近两年推崇的 Devops 和持续集成理念,给开发和运维带来了不小的颠覆和挑战,如何通过持续集成理念的应用,让 PHP 这个略显古老的语言焕发青春?PHP 开发者传统的编程方法,在这个理念下又会有怎样的颠覆?所谓测试驱动开发,在 PHP 开发中如何做到最佳实践?
在开发框架方面,过去一年,以 Laravel 为代表的新兴框架也吸引了大家的广泛注目,而这样的框架产生,是否对PHP简洁、直接的代码风格带来了一些变化和颠覆?新兴框架的产生,在完善工程实践支持的目标下,是否会让 PHP 变成一个不再简单却更加复杂和臃肿的语言,相信大家一定在拭目以待。
相信所有希望在 PHP 开发领域持续精进的开发者都会关注上面的这些问题和方向,PHP 虽然是个已经诞生 22 年的,“古老”的编程语言,但是否“古老”就意味着“落后”?PHP7 已经通过性能提升回答了这个问题,而在今年的第三届 PHP 全球开发者大会上,让我们从高可用角度,来继续探讨和学习。
在鸟哥的支持和建议下,本次大会的目的仍旧是推广 PHP 语言、为 PHP 核心开发组甄选和培养开发者。所以,我们仍然将以平价出售门票,门票收入用来支付场地费用、会场搭建成本。
付费参加过往届 DevLink 活动的参会者请发送邮件至 hushuqi@devlink.cn 领取50元代金券。
提交议题、申请赞助,请联系 hushuqi@devlink.cn
签到 & 开场
微博新一代 LAMP 平台架构 架构专题
LAMP 架构 性能
微博作为一个重要的社交平台,经常会遇到一些突发事件,传统做法存在一些不足之处,如传统设备采购申请周期长、扩缩容繁琐、设备运营成本高。当面临流量压力时,常规做法是IT设备会做一部分冗余,但不能无限冗余,毕竟还需要考虑到成本问题。
面对流量压力,还有一个常规做法是服务降级,将那些不是很重要的功能模块依次关闭,保证最主要功能运行无虞。但是这样做的弊端是,在最严重情况下,微博很多模块不再显示,用户体验非常不好。
在这样的情况下,我们开始思索如何既降低设备运营成本,又能增强业务的弹性扩容部署。最终设计了基于混合云平台的新一代 LAMP 平台,搭建了 DCP 平台,既可以实现业务的弹性调度,基础设施又可以跨云操作,非常好地解决了突发流量的问题。
主要分享大纲:
1. 背景与挑战 -- 主要介绍目前微博的业务背景以及遇到的问题。
2. DCP 平台介绍 -- 介绍微博内部开发的混合云平台的以及他的设计思路
3. PHP 服务 docker 化 -- 重点介绍基于混合云平台我们所做的容器化工作
4. 弹性扩容 -- 介绍微博 LAMP 平台弹性扩容设计思路和部署流程
使用 C++ 11 编写 PHP 7 扩展 扩展性专题
本次分享主要介绍 PHP 7 扩展的实现方法和原理,ZendAPI 的使用,传统 PHP 扩展开发的难点和解决办法。基于 Swoole 最新的 C++ API实现 PHP 7 扩展。在 C++ 程序中嵌入 PHP,实现 C++ 与 PHP 动静结合优势互补。
瓜子后端技术架构的变迁 架构专题
介绍瓜子如何从最初的原始状态,如何逐步进化到现在的准服务化现状,中间所碰到的问题,以及我们解决的方案和一些经验总结,最后讲一下我们对瓜子整体架构的规划。
演讲大纲
1. 瓜子1.0的问题——单体结构、代码耦合严重;
2. 瓜子代码的剥离——从赶集之前的架构剥离的痛;
3. 业务的拆分——DB层拆分、服务化的雏形;
4. RPC服务调用;
5. API的统一网关、监控、性能及容灾处理;
6. 瓜子的将来——服务化&docker、前后端分离、持续集成、自动化测试、服务体系的建立
PHP 在机器学习上的应用及云深度学习平台的架构设计与实现
机器学习专题
PHP 7 以来发布了 PHP 的机器学习库 PHP-ML,使得 PHP 在机器学习开发上也可以大展身手,那么现在有哪些应用?同时,云深度学习平台也在逐渐发展 ,深度学习平台都要包含哪些功能和服务,架构是什么样的,PHP 语言作为 Client 端如何实现?谷歌的 Cloud Machine Learning 上有什么可以借鉴的经验?我们就一起聊一聊这些话题。
演讲大纲:
一、明晰 平台的功能、机器学习服务介绍、PHP-ML 的应用
二、云深度学习平台设计和实践
平台:集群架构设计及部署:参数配置、多实例并行计算
算法及框架:测试和数据可视化、PHP-ML 配合 Kubernetes、Spark 的大规模数据训练
1. 深度学习的问题理解与分析:场景分析、数据评估、问题抽象
2. 参数调优技巧:基于成熟模型进行微调(fine-tune)、训练误差衡量准则等
生产环境:部署模型
1. 生产应用:训练环境与生产环境的数据接口、生产应用环境服务接口、模型退化的解决方法
三、从谷歌的 Cloud Machine Learning 和亚马逊的 Amazon Machine Learning 上可以借鉴的经验
聊聊稳定性保障那些事 性能专题
一个应用是否稳定很重要。如果经常出现问题,会极大的影响用户体验,甚至带来直接的经济损失。那么如何保障应用的稳定性?其实是有一些原则和方法的。在本次分享中,我会和大家聊聊常见的稳定性问题有哪些,稳定性保障方面有哪些原则需要遵守。另外,我会以案例的方式说说我们在稳定性保障方面都做了那些工作。
一、 常见的稳定性问题
在日常测试正常,上线后出现问题
一个服务出问题,整个系统崩溃
调用关系复杂,很难追查问题
线上机器负载突然特别高,不知所措
线上突然出现问题,自己又恢复了
二、稳定性保障的原则
环境一致原则
适当隔离原则
有效监控原则
充分预案原则
追根溯源原则
三、稳定性保障的案例
我们在保障环境统一方面做的一些努力
服务物理隔离,并通过熔断等手段降低依赖
如何设计和使用服务调用链分析系统
设计多种预案,快速解决突发问题
解决线上问题的思路和手段
复杂 PHP 系统性能瓶颈排查及优化 高可用专题
随着系统复杂度的增加,系统性能瓶颈的排查会越来越难,通过接入 xhprof 的数据,介绍一套完整的性能分析、瓶颈排查的统计策略和方法。
演讲大纲:
- 复杂系统性能瓶颈排查及优化
- 陌陌API介绍
- 优化成果
- 性能分析工具
- 使用性能分析数据,分析代码运行状态,而不是代码
- 方案选择
- 数据处理方案
- xhprof数据阅读经验
- 高效优化方案
- 性能专项Tips
MySQL 5.7 优化不求人 性能专题
MySQL 5.7 新增了众多特色功能,诸如 Optimizer 增强、支持多个触发器、P_S 增强、增加 sys schema、在线修改 VARCHAR 长度、并发复制等,对于提升 SQL 效率都有很大帮助,作为非专业 DBA,如何利用这些特性帮助我们做好 SQL 优化呢?
主要内容有:
1、MySQL 5.7关键新特性
a) MySQL 5.7性能提升;
b) MySQL 5.7新特性,Server层优化、InnoDB层优化、Optimizer优化、EXPLAIN CONNECTION、JSON、虚拟列、新增sys schema、performance schema增强等等;
2、MySQL 5.7下的SQL优化招数
a) 如何设置SQL超时,避免个别垃圾SQL破坏生产环境;
b) 如何查看某个线程当前执行的SQL效率;
c) 如何找到性能瓶颈SQL;
d) 如何找到消耗最多内存的SQL;
e) 如何找到哪些SQL被频繁执行;
f) 如何找到慢SQL中的TOP 10;
g) 哪个文件(数据表)产生了最多的IO,读多,还是写的多;
h) 如何找出哪些利用率很低的索引; 以及其他等等。
3、关注MySQL 8.0新特性
a) 重大变化,数据字典改用InnoDB,不再使用MyISAM引擎,顺便实现了DDL的原子性;
b) 重大变化,增加不可见索引(INVISIBLE INDEX),方便删除利用率很低的索引;
c) 重大变化,增加支持倒序索引;
d) 重大变化,重构Optimizer,HINT增强等;
以及其他等等。
签到 & 开场
The Next Generation of PHP 性能专题
PHP 7 发布以来,其优异的性能以及可靠的向下兼容,使得基于 PHP 的应用都可以近乎透明的得到优化和性能上的巨大提升。过去一年间,大量的基于 PHP 的应用平滑升级到 PHP 7,其取得的成绩有目共睹。
PHP 开发组的努力当然不会止于此,在 PHP 7 发布以后的一年半以来,核心开发组的成员正在致力于 PHP 更进一步的性能、架构上的优化和改进。我们关注于哪些方面?PHP 还有哪些值得改善和提升的空间,JIT 会不会成为 PHP 8 的重要特性之一?本次分享将为大家揭开 PHP 持续迭代的内幕消息 ...
PHP 与 APM:技术内幕和最佳实践 性能专题
在一个完整的 APM (应用性能管理)体系中,PHP 不可或缺。APM 是一套方法论,可以帮助架构师和工程师,充分地了解自己的应用体验和瓶颈点,以便更好地迭代和管理。在此次分享中,将首次披露 PHPAgent 的技术内幕,并以实例的方式讲解如何以 APM 的方法论实现 PHPAgent,以及如何使用它为你的 PHP 应用进行管理。
Swoole 2.0 原生协程高性能开发实践 高可用专题
主要介绍 Swoole2.0 原生协程特性原理和探索心得,同时结合腾讯 QQ 号和 QQ 看点业务本身探索出一整套高并发,自带容灾/监控/过载保护机制的后台解决方案,方便业务开发可以基于 Swoole 快速搭建起一套高性能同时兼顾稳定可用/可监控/可容灾的集群系统。
演讲大纲:
一、swoole2.0高性能原生协程实践
1. swoole的异步高性能在实践推广中遇到的开发问题
2. 分析基于Yield的协程实现原理和遇到的问题
3. 介绍swoole2.0内置原生协程的实现原理,如何解决Yield协程的问题
4. 介绍内置原生协程带来的新开发实践,如何极大降低了开发复杂度
5. 分享swoole2.0性能压测数据
二、TSF3.0高可用框架实现
1. TSF3.0跨进程连接池机制介绍,解决了传统PHP服务进程内伪连接池问题
2. TSF3.0提供了单机和联机频控组件,防止大并发对服务的冲击,保证服务质量
3. 介绍TSF3.0在单机和分布式的场景的过载保护机制,如何防止服务雪崩
4. TSF3.0在服务监控系统的实现
5. TSF3.0整体架构的介绍
三、业务应用
分享TSF3.0在QQ公众号看点实际业务中的应用和实践
云原生的 MySQL 托管服务架构及读写分离的优化 高可用专题
在私有数据中心运维 MySQL 的方式是单机运行、一主一备,甚至是多主复制的集群,为了保证高可用,成本是比较高的。而基于云计算,托管运维大量的用户 MySQL 实例,如何用 Cloud Native 的原则,通过沙箱隔离、计算和数据的完全分离,实现低成本和高扩展的高可用方案?通过开篇分享,使大家更好的理解 Cloud RDS 的架构精髓。进而通过基于 Azure storage 的针对 MySQL 读写分离的优化,比较深入的分享了一种可以借鉴的主从分离优化技术。
PHP 安全开发:从白帽角度做安全 安全专题
Web 安全问题时有发生,有些比较轻微,有些比较致命;那么白帽是如何发现的漏洞?以及利用的漏洞对我们业务可以造成那些危害? 接下来的内容会从漏洞的发现到漏洞的特征,以及案例给大家分享;通过这次分享,会让大家更了解白帽挖掘漏洞的流程,漏洞的利用方式,以及我们怎么去防范漏洞的产生。
演讲大纲:
1、Web 安全现状
2、常见漏洞分析
3、如何提升安全
如何无痛解决 MySQL 扩展性和一致性问题 高可用专题
最近几年数据库技术快速发展,很多开发者是用的技术栈仍然是 LAMP,然而经典的 LAMP 也在新技术的推动下快速演进。这里重点聊聊新的 “M“, 很多时候随着数据越来越大,查询开始遭遇容量瓶颈,性能瓶颈,以及主从技术缺乏一致性带来的数据丢失问题,也给维护带来很大的痛苦。借这次机会和大家聊聊 TiDB 怎么无痛解决这些问题,以及最佳实战经验。
圆桌讨论
签到 & 开场
微博新一代 LAMP 平台架构 架构专题
使用 C++ 11 编写 PHP 7 扩展 扩展性专题
瓜子后端技术架构的变迁 架构专题
PHP 在机器学习上的应用及云深度学习平台的架构设计与实现
机器学习专题
聊聊稳定性保障那些事 性能专题
复杂 PHP 系统性能瓶颈排查及优化 高可用专题
MySQL 5.7 优化不求人 性能专题
签到 & 开场
The Next Generation of PHP 性能专题
PHP 与 APM:技术内幕和最佳实践 性能专题
Swoole 2.0 原生协程高性能开发实践 高可用专题
云原生的 MySQL 托管服务架构及读写分离的优化 高可用专题
PHP 安全开发:从白帽角度做安全 安全专题
如何无痛解决 MySQL 扩展性和一致性问题 高可用专题
圆桌讨论
1、之前付费参加过去年 PHP 大会的参会者,均可得到 ¥50 的代金券一张,请将去年订票的电话或者邮箱发送至 hushuqi@devlink.cn 领取代金券。
2、有不定期限时购票优惠活动,所有优惠只能选择一种,不能叠加使用(系统限制)。
3、门票为大会两日通票,包含两天所有主题演讲、大会资料一份。并可参与展区参观,并领取各种礼品。
4、购买含餐门票,两日中午均包含由亚洲大酒店提供的价值70元的商务快餐一份。
5、发票无法补开,使用团购的参会者,无法单独申请发票。
6、发票申请成功的,会按照 付款顺序 依次寄出,当月开完则顺延到下个月。因税务限制,发票数量有限,不建议开具个人抬头发票。
另外参会者到场参与现场活动,都可以领取到限量版 PHP 小象一只哦~
现场与讲师提问互动的参会者,都有机会拿到由清华大学出版社提供的《PHP7 实践指南》一本~
欢迎加入 PHP 大会的微信群,与讲师和其他 PHP 开发者一同交流。
由于群已满100人,请加工作人员微信,注明 PHP 大会,然后拉您入群。
注意:只加 PHP 参会者,更多大会信息,也将在群里分享。
(活动官网)第二届 PHP 全球开发者大会
(知乎)如何评价 DevLink 举办的第二届PHP全球开发者大会?
https://www.zhihu.com/question/46467811
(微博)写在 PHP 全球开发者大会之后