当前位置: 首页 > 后端技术 > PHP

ThinkSNS+性能简介

时间:2023-03-29 17:52:10 PHP

概述本文主要介绍ThinkSNSPlus服务器系统性能、服务器端高性能部署方案及优化措施、服务器端系统持续优化升级策略。本文不涉及前端(PC站、H5站、Android、IOS)性能解决方案。系统吞吐量压测使用的服务器为阿里云ECS服务器,服务器配置为2vCPU/4GB/5Mbps/普通云盘200G。安装thinksnsplus后,在数据库中添加了少量数据,保证每个接口都有数据;然后在服务器本地对一些常用的数据读取接口进行了压测,压测结果的吞吐量在30QPS左右。30QPS表示系统每秒可以处理30个请求,一天有86400秒,一天可以处理大约260万个请求;根据thinksnsplus移动端统计,平均每页有3次请求,假设用户平均每天访问50次。页面,计算结果是支持约17,000个日活跃用户(日活跃用户不是注册会员数)。当然,这样计算出来的结果是不准确的。计算中不考虑峰值等因素,需要根据实际业务进行分析。系统部署及优化系统及基础软件优化对系统及基础软件(nginx、mysql、php等)进行优化,可以使系统支持更多的连接和请求,运行更稳定。具体优化项根据不同的系统环境和业务需求而定。百度或谷歌上有很多优化教程,我就不一一列举了。ThinkSNSPlus部署优化使用php7,相比之前的php5版本性能提升了一倍以上。启用PHPOPcache,生产环境要启用OPcache,性能会有很大提升。关闭debug模式,在.env文件中设置APP_DEBUG为false;这可以减少程序逻辑处理。配置信息缓存phpartisanconfig:cache,缓存配置文件,减少磁盘IO。路由缓存phpartisanroute:cache,缓存路由文件,减少磁盘IO。Autoloadoptimizationcomposerdumpautoload,优化自动加载。配置使用redis/memcached存储session,无需磁盘IO,从内存中读取session信息。配置使用redis/memcached存储缓存数据,无需磁盘IO即可从内存中读取缓存数据。将程序和数据安装到SSD盘;以阿里云ECS云盘为例:SSD云盘IOPS+16000,而所谓的高效云盘只有3000IOPS;SSD云盘的效率是高效能云盘的五倍以上。使用独立的数据库服务器或云数据库如阿里云:RDS。使用独立的缓存服务器或云缓存系统。使用CDN加速图片、视频、文件的访问和下载。挂载单独的磁盘用于存储图片、视频和其他用户上传的文件。以上优化项#7~#13不是必须的,但建议配置或选择性配置。根据需要对以上内容进行优化后,整体性能可提升一倍以上。分布式部署分布式部署是为了解决更大的业务需求,比如更大的请求峰值、数据库读写性能瓶颈、网络带宽瓶颈等;目标是建立一个高可用的系统,单点故障不会影响系统服务。目前thinksnsplus支持的分布式部署方案有:l应用负载均衡,多台服务器部署thinksnsplus系统,通过负载均衡器将请求转发到已部署的服务器。thinksnsplus不需要任何配置,但是session数据、缓存数据、用户上传文件必须单独部署,也就是上面“thinksnsplus部署优化”中的#7、#8、#10、#13。l数据库读写分离,安装数据库后,简单配置即可支持,也可以使用云数据库进行读写分离。l分布式缓存系统,分布式缓存服务器搭建完成后,只需要简单的配置即可支持,也可以使用兼容redis协议的云缓存系统。l分布式文件系统(暂不支持,已列入计划,未来将支持云存储)系统优化升级上述各种优化部署策略部分是建立在增加系统处理能力的基础上添加服务器,不涉及系统程序的优化,那么程序优化不重要吗?当然不是。在业务初期,增加服务器可以快速扩展系统的处理能力,也是性价比最高的方式;如果你聘请一个人来优化程序,年薪10万,那么这个人一年可以使程序的性能提高一倍。这很好,但是如果把这10万花在服务器上,性能可能会立即提高10倍。而且,thinksnsplus产品研发团队每天都在优化和改进产品。随着每个版本的迭代,安装的thinksnsplus程序可以自动或手动合并最新的功能,其中许多功能都针对性能进行了优化。保持更新不间断,安装好的thinksnsplus程序性能会越来越好。我们所有的产品体验都可以在我们官网的“免费体验”页面找到:http://www.thinksns.com/exper...APP体验,下载新版本的朋友请先卸载旧版本,否则无法使用;在iPhone上安装demo前,请点击设置-通用-设备管理-信任(企业应用)ThinkSNS(简称TS),全平台综合社交系统,为大中小型企业和创业者提供社交软件国内外研发和技术解决方案,最新系统是ThinkSNSV4和ThinkSNS+两个并行系统。感谢大家对Ts团队和产品的一致支持。2018我们在路上,ThinkSNS拥有50多个功能模块,全方位覆盖SNS系统需求,包括微博(朋友圈)、即时聊天、直播、论坛等主流社交功能、资讯、CMS、活动、频道、圈子、问答、打赏。多种价格梯度,根据您的项目需求灵活选择使用,支持深度灵活的二次开发。了解更多请联系:17311245680(同微信);028-63915190QQ:3515923610(←源码购买、二次开发、创业扶持、定制开发、程序策划、开发服务等)ThinkSNS开源用户交流群:143325287