SlideShare a Scribd company logo
1 of 44
千万级 PHP 接口优化
kim
问题
• 什么是千万级?
• 接口扛不住,措施 1 、 2 、 3 是?
• 如何优化?
并发数
• 10000000 / 86400 ≈ 116
• 按高峰期 10 倍,即 1160req/s
观察
• Ping
• Trace
• HttpWatch
• Uptime
• Top
• Free
• Nagios
Top 举例
紧急措施
• 重启
• 缓存穿透
• 启用备机(如果有的话)
系统日志
• Nginx access log
• Nginx error log
• PHP error log
• PHP slow log
访问统计
• 各种访问统计
• awk -F"[" '{ print $1 }'
/home/nginx/logs/access.log | sort | uniq -c
| sort -rn | head -n 10
非 200 统计
• 非 200 访问
• cat /home/nginx/logs/access.log | grep -v
""200""
日志统计系统
• https://56.com/ops/index.htm
PHP 慢?
• 有 opcode cache 的 PHP ,已经够快了
!
真正的原因
• 端口( Socket )连接慢
• 端口( Socket )数据交互多
举例 1
• mysql_connect()
• mysql_query()
• redis->connect()
• redis->select()
举例 2
• memcache->connect()
• memcache->get()
• new Mongo()
• MongoCollection->find()
举例 3
• Http::Get()
如何优化 Socket
释放要主动
• mysql_close()
• Redis->close()
• Memcache->close()
• Mongo->close()
• unset
验证要提前
• 比如: xxx.56.com/api/someapi.php :
• <?php
• if (!isset($_GET['ids'])) {
• die('Invalid arguments');
• }
• require 'index.php';
缓存要耦合
• 评论数
• 人气
• 视频顶踩
如何优化 PHP
PHP 优化利器
• http://pecl.php.net/package/xhprof
XHProf 安装
• XHProf lib 包
• 代码举例
XHProf 举例
代码“完美”了,还能优化吗?
Tcp 短连接也不能忍受了!
缓存优化利器
• https://github.com/twitter/twemproxy
• 安装与配置
特性
• 1. 轻量,安装配置简单
• 2. 多点长连接
• 3. 自动冗余
• 4. 支持 memcached ascii 和 redis 协议
• 5. 可监控,可记录日志
站内使用状况
• Infov 视频信息接口
• Stat 人气接口
• Album 专辑信息接口
客户端选择
• Memcached (推荐) VS Memcache
• Phpredis (推荐) VS Predis
反复实战
• Memp 类使用举例
• $mm = new Memp(array('servers' =>
array('127.0.0.1', 22122)));
Twemproxy 日志
• -v, --verbosity=N
set logging level (default: 5, min: 0, max:
11)
• 日志举例
Twemproxy 的问题
Memcache 删除不了
• Bug 如下:
• command_len = spprintf(&command, 0,
"delete %s %d", key, time);
• command[command_len] = '0';
• 需要人工修复:
• command_len = spprintf(&command, 0,
"delete %s", key);
乱码与截断
• 不能压缩
• Memcached->setOption(
Memcached::OPT_COMPRESSION,
false);
EOF
• Twemproxy 要求 EOL 是 “ rn” ,而不是
“ n” ,所以在一些情况下是要注意,比如
使用 nc 时,要带上 -C 参数,但不是每
个版本的 nc 都带这个参数
• $ echo get key | nc -C 127.0.0.1 22121
配置要接地气
• 痛苦的经历:不支持 redis->select()
保正一致性
• hash: md5
• distribution: ketama
缓存冗余
• auto_eject_hosts: true
• 无规律
• 不一致
如何清缓存?
• 循环删除 + 队列补刀
• Infov 代码举例
总结
毫秒必争
• 如过你的接口平均服务时间是 30ms ,那
么 1ms 的价值就是 3% 的性能提升!
• 提升 1ms 的途径:
• 1. 把 count 移出 for 循环
• 2. 把 preg_match 换成了 strstr
• 3. 去掉了数组的 交集 / 并集 / 合并 操作
• 4. 少创建了几个 memcache 对象
• 实践和测试
• 加节点是最后手段
谢谢!

More Related Content

What's hot

Java内存管理问题案例分享
Java内存管理问题案例分享Java内存管理问题案例分享
Java内存管理问题案例分享bluedavy lin
 
线上问题排查交流
线上问题排查交流线上问题排查交流
线上问题排查交流Edward Lee
 
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewaveTrack2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewaveOpenCity Community
 
构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 Renaun Erickson
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践zhliji2
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.pptFrank Cai
 
《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具
《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具
《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具Will Huang
 
PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223
PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223
PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223Jinrong Ye
 
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践rewinx
 
Java常见问题排查
Java常见问题排查Java常见问题排查
Java常见问题排查bluedavy lin
 
D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版Jackson Tian
 
02.python.开发最佳实践
02.python.开发最佳实践02.python.开发最佳实践
02.python.开发最佳实践Na Lee
 
Http cache 的優化
Http cache 的優化Http cache 的優化
Http cache 的優化振揚 陳
 
MongoDB at Qihoo 360
MongoDB at Qihoo 360MongoDB at Qihoo 360
MongoDB at Qihoo 360MongoDB
 
Java线上应用问题排查方法和工具(空望)
Java线上应用问题排查方法和工具(空望)Java线上应用问题排查方法和工具(空望)
Java线上应用问题排查方法和工具(空望)ykdsg
 
Linux performance analysis cpu
Linux performance analysis cpuLinux performance analysis cpu
Linux performance analysis cpu静 丁
 
Sun jdk 1.6内存管理 -使用篇
Sun jdk 1.6内存管理 -使用篇Sun jdk 1.6内存管理 -使用篇
Sun jdk 1.6内存管理 -使用篇bluedavy lin
 
Linux Network Monitoring
Linux Network MonitoringLinux Network Monitoring
Linux Network MonitoringKenny (netman)
 
课题三:Nginx基础知识
课题三:Nginx基础知识课题三:Nginx基础知识
课题三:Nginx基础知识Liu Allen
 

What's hot (20)

Java内存管理问题案例分享
Java内存管理问题案例分享Java内存管理问题案例分享
Java内存管理问题案例分享
 
线上问题排查交流
线上问题排查交流线上问题排查交流
线上问题排查交流
 
Ceph intro
Ceph introCeph intro
Ceph intro
 
Track2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewaveTrack2 -刘继伟--openstack in gamewave
Track2 -刘继伟--openstack in gamewave
 
构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接 构建ActionScript游戏服务器,支持超过15000并发连接
构建ActionScript游戏服务器,支持超过15000并发连接
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.ppt
 
《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具
《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具
《保哥線上講堂》打造一個具有 Linux 溫度的 Windows 命令提示字元工具
 
PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223
PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223
PC服务器阵列卡管理简易手册 叶金荣@CYOU-20121223
 
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
 
Java常见问题排查
Java常见问题排查Java常见问题排查
Java常见问题排查
 
D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版D2_node在淘宝的应用实践_pdf版
D2_node在淘宝的应用实践_pdf版
 
02.python.开发最佳实践
02.python.开发最佳实践02.python.开发最佳实践
02.python.开发最佳实践
 
Http cache 的優化
Http cache 的優化Http cache 的優化
Http cache 的優化
 
MongoDB at Qihoo 360
MongoDB at Qihoo 360MongoDB at Qihoo 360
MongoDB at Qihoo 360
 
Java线上应用问题排查方法和工具(空望)
Java线上应用问题排查方法和工具(空望)Java线上应用问题排查方法和工具(空望)
Java线上应用问题排查方法和工具(空望)
 
Linux performance analysis cpu
Linux performance analysis cpuLinux performance analysis cpu
Linux performance analysis cpu
 
Sun jdk 1.6内存管理 -使用篇
Sun jdk 1.6内存管理 -使用篇Sun jdk 1.6内存管理 -使用篇
Sun jdk 1.6内存管理 -使用篇
 
Linux Network Monitoring
Linux Network MonitoringLinux Network Monitoring
Linux Network Monitoring
 
课题三:Nginx基础知识
课题三:Nginx基础知识课题三:Nginx基础知识
课题三:Nginx基础知识
 

Viewers also liked

First quarter 2010
First quarter 2010First quarter 2010
First quarter 2010SKF
 
Economics Group Presentation 0905018
Economics Group Presentation 0905018Economics Group Presentation 0905018
Economics Group Presentation 0905018amykua
 
Marketing for Researchers
Marketing for ResearchersMarketing for Researchers
Marketing for Researchersguest8b8013
 
Waterbottles
WaterbottlesWaterbottles
WaterbottlesUCSC
 
Internet presentation q1_2010
Internet presentation q1_2010Internet presentation q1_2010
Internet presentation q1_2010SKF
 
Carbon Calculators
Carbon CalculatorsCarbon Calculators
Carbon CalculatorsUCSC
 
Archives Of Agronomy Soil Science (49) 333 345
Archives Of Agronomy  Soil Science (49) 333 345Archives Of Agronomy  Soil Science (49) 333 345
Archives Of Agronomy Soil Science (49) 333 345Turlough Guerin
 
Presentation Creating Magic In Life ~
Presentation Creating Magic In Life ~Presentation Creating Magic In Life ~
Presentation Creating Magic In Life ~fkaramally
 
TouchTyping03 - the bottom row
TouchTyping03 - the bottom rowTouchTyping03 - the bottom row
TouchTyping03 - the bottom rowadisg
 
Identifying Tumor Permeability Heterogeneity with MRI Contrast Agents
Identifying Tumor Permeability Heterogeneity with MRI Contrast AgentsIdentifying Tumor Permeability Heterogeneity with MRI Contrast Agents
Identifying Tumor Permeability Heterogeneity with MRI Contrast AgentsMike Aref
 

Viewers also liked (20)

First quarter 2010
First quarter 2010First quarter 2010
First quarter 2010
 
Economics Group Presentation 0905018
Economics Group Presentation 0905018Economics Group Presentation 0905018
Economics Group Presentation 0905018
 
Marketing for Researchers
Marketing for ResearchersMarketing for Researchers
Marketing for Researchers
 
In Harmony With Wildlife
In Harmony With WildlifeIn Harmony With Wildlife
In Harmony With Wildlife
 
Waterbottles
WaterbottlesWaterbottles
Waterbottles
 
03 what is physics
03 what is physics03 what is physics
03 what is physics
 
Big Data Tsunami
Big Data TsunamiBig Data Tsunami
Big Data Tsunami
 
Internet presentation q1_2010
Internet presentation q1_2010Internet presentation q1_2010
Internet presentation q1_2010
 
Cloud Computing
Cloud ComputingCloud Computing
Cloud Computing
 
Supply Chain Management
Supply  Chain  ManagementSupply  Chain  Management
Supply Chain Management
 
Mark Green's Funky Furniture and Walls
Mark Green's Funky Furniture and WallsMark Green's Funky Furniture and Walls
Mark Green's Funky Furniture and Walls
 
Carbon Calculators
Carbon CalculatorsCarbon Calculators
Carbon Calculators
 
Celeb shakespeare 1
Celeb shakespeare 1Celeb shakespeare 1
Celeb shakespeare 1
 
giftee@NCC2010
giftee@NCC2010giftee@NCC2010
giftee@NCC2010
 
Archives Of Agronomy Soil Science (49) 333 345
Archives Of Agronomy  Soil Science (49) 333 345Archives Of Agronomy  Soil Science (49) 333 345
Archives Of Agronomy Soil Science (49) 333 345
 
Presentation Creating Magic In Life ~
Presentation Creating Magic In Life ~Presentation Creating Magic In Life ~
Presentation Creating Magic In Life ~
 
TouchTyping03 - the bottom row
TouchTyping03 - the bottom rowTouchTyping03 - the bottom row
TouchTyping03 - the bottom row
 
Presentation
PresentationPresentation
Presentation
 
Identifying Tumor Permeability Heterogeneity with MRI Contrast Agents
Identifying Tumor Permeability Heterogeneity with MRI Contrast AgentsIdentifying Tumor Permeability Heterogeneity with MRI Contrast Agents
Identifying Tumor Permeability Heterogeneity with MRI Contrast Agents
 
Symmetry
SymmetrySymmetry
Symmetry
 

Similar to PHP Optimization for Millions Visits Level

Hacking Nginx at Taobao
Hacking Nginx at TaobaoHacking Nginx at Taobao
Hacking Nginx at TaobaoJoshua Zhu
 
高性能LAMP程序设计
高性能LAMP程序设计高性能LAMP程序设计
高性能LAMP程序设计fuchaoqun
 
Monitor is all for ops
Monitor is all for opsMonitor is all for ops
Monitor is all for ops琛琳 饶
 
高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践孙立
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲84zhu
 
04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化littlecong
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰Scourgen Hong
 
分布式缓存与队列
分布式缓存与队列分布式缓存与队列
分布式缓存与队列XiaoJun Hong
 
淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践丁 宇
 
淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化丁 宇
 
Pptv lb日志实时分析平台
Pptv lb日志实时分析平台Pptv lb日志实时分析平台
Pptv lb日志实时分析平台drewz lin
 
服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130Jinrong Ye
 
4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdf4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdfStevenShing
 
构建可扩展的微博系统
构建可扩展的微博系统构建可扩展的微博系统
构建可扩展的微博系统lonegunman
 
MySQL压力测试经验
MySQL压力测试经验MySQL压力测试经验
MySQL压力测试经验Jinrong Ye
 
优酷 Web网站架构案例分析
优酷   Web网站架构案例分析优酷   Web网站架构案例分析
优酷 Web网站架构案例分析George Ang
 
Youku arch qcon2009_beijing
Youku arch qcon2009_beijingYouku arch qcon2009_beijing
Youku arch qcon2009_beijingdrewz lin
 

Similar to PHP Optimization for Millions Visits Level (20)

Hacking Nginx at Taobao
Hacking Nginx at TaobaoHacking Nginx at Taobao
Hacking Nginx at Taobao
 
高性能LAMP程序设计
高性能LAMP程序设计高性能LAMP程序设计
高性能LAMP程序设计
 
Monitor is all for ops
Monitor is all for opsMonitor is all for ops
Monitor is all for ops
 
高可用
高可用高可用
高可用
 
高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践高性能队列Fqueue的设计和使用实践
高性能队列Fqueue的设计和使用实践
 
Nosql三步曲
Nosql三步曲Nosql三步曲
Nosql三步曲
 
04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化04.web sphere培训 应用websphere优化
04.web sphere培训 应用websphere优化
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
 
分布式缓存与队列
分布式缓存与队列分布式缓存与队列
分布式缓存与队列
 
A
AA
A
 
淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践
 
淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化
 
Pptv lb日志实时分析平台
Pptv lb日志实时分析平台Pptv lb日志实时分析平台
Pptv lb日志实时分析平台
 
服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130
 
4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdf4.陈群-唯品会大规模Redis集群存储架构演进.pdf
4.陈群-唯品会大规模Redis集群存储架构演进.pdf
 
构建可扩展的微博系统
构建可扩展的微博系统构建可扩展的微博系统
构建可扩展的微博系统
 
java title
java titlejava title
java title
 
MySQL压力测试经验
MySQL压力测试经验MySQL压力测试经验
MySQL压力测试经验
 
优酷 Web网站架构案例分析
优酷   Web网站架构案例分析优酷   Web网站架构案例分析
优酷 Web网站架构案例分析
 
Youku arch qcon2009_beijing
Youku arch qcon2009_beijingYouku arch qcon2009_beijing
Youku arch qcon2009_beijing
 

More from Ho Kim

解决Lvs上行丢包的过程和收获
解决Lvs上行丢包的过程和收获解决Lvs上行丢包的过程和收获
解决Lvs上行丢包的过程和收获Ho Kim
 
40 Powerful Shortcuts of Xcode 6.x
40 Powerful Shortcuts of Xcode 6.x40 Powerful Shortcuts of Xcode 6.x
40 Powerful Shortcuts of Xcode 6.xHo Kim
 
Project Management Using Redmine
Project Management Using RedmineProject Management Using Redmine
Project Management Using RedmineHo Kim
 
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tipsOpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tipsHo Kim
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and DesignHo Kim
 
Lua 30+ Programming Skills and 20+ Optimization Tips
Lua 30+ Programming Skills and 20+ Optimization TipsLua 30+ Programming Skills and 20+ Optimization Tips
Lua 30+ Programming Skills and 20+ Optimization TipsHo Kim
 
人人-56 账号拆分项目总结
人人-56 账号拆分项目总结人人-56 账号拆分项目总结
人人-56 账号拆分项目总结Ho Kim
 
OpenResty/Lua Practical Experience
OpenResty/Lua Practical ExperienceOpenResty/Lua Practical Experience
OpenResty/Lua Practical ExperienceHo Kim
 
JavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization SkillsJavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization SkillsHo Kim
 
Character Encoding and Database Transcoding Project
Character Encoding and Database Transcoding ProjectCharacter Encoding and Database Transcoding Project
Character Encoding and Database Transcoding ProjectHo Kim
 
Video Upload Architecture of 56.com
Video Upload Architecture of 56.comVideo Upload Architecture of 56.com
Video Upload Architecture of 56.comHo Kim
 
Comment System of 56.com
Comment System of 56.comComment System of 56.com
Comment System of 56.comHo Kim
 
Git Essence Tutorial
Git Essence TutorialGit Essence Tutorial
Git Essence TutorialHo Kim
 
MongoDB Basics and Tutorial
MongoDB Basics and TutorialMongoDB Basics and Tutorial
MongoDB Basics and TutorialHo Kim
 
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsPHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsHo Kim
 

More from Ho Kim (15)

解决Lvs上行丢包的过程和收获
解决Lvs上行丢包的过程和收获解决Lvs上行丢包的过程和收获
解决Lvs上行丢包的过程和收获
 
40 Powerful Shortcuts of Xcode 6.x
40 Powerful Shortcuts of Xcode 6.x40 Powerful Shortcuts of Xcode 6.x
40 Powerful Shortcuts of Xcode 6.x
 
Project Management Using Redmine
Project Management Using RedmineProject Management Using Redmine
Project Management Using Redmine
 
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tipsOpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
OpenResty/Lua 70+ Advanced Programming Skills and Optimization tips
 
Web Caching Architecture and Design
Web Caching Architecture and DesignWeb Caching Architecture and Design
Web Caching Architecture and Design
 
Lua 30+ Programming Skills and 20+ Optimization Tips
Lua 30+ Programming Skills and 20+ Optimization TipsLua 30+ Programming Skills and 20+ Optimization Tips
Lua 30+ Programming Skills and 20+ Optimization Tips
 
人人-56 账号拆分项目总结
人人-56 账号拆分项目总结人人-56 账号拆分项目总结
人人-56 账号拆分项目总结
 
OpenResty/Lua Practical Experience
OpenResty/Lua Practical ExperienceOpenResty/Lua Practical Experience
OpenResty/Lua Practical Experience
 
JavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization SkillsJavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization Skills
 
Character Encoding and Database Transcoding Project
Character Encoding and Database Transcoding ProjectCharacter Encoding and Database Transcoding Project
Character Encoding and Database Transcoding Project
 
Video Upload Architecture of 56.com
Video Upload Architecture of 56.comVideo Upload Architecture of 56.com
Video Upload Architecture of 56.com
 
Comment System of 56.com
Comment System of 56.comComment System of 56.com
Comment System of 56.com
 
Git Essence Tutorial
Git Essence TutorialGit Essence Tutorial
Git Essence Tutorial
 
MongoDB Basics and Tutorial
MongoDB Basics and TutorialMongoDB Basics and Tutorial
MongoDB Basics and Tutorial
 
PHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming SkillsPHP Coding Standard and 50+ Programming Skills
PHP Coding Standard and 50+ Programming Skills
 

PHP Optimization for Millions Visits Level