摘要:概述微軟雅黑本文主要描述服務端系統性能服務端高性能部署方案及優化措施服務端系統持續優化及升級策略。部署優化微軟雅黑使用,較之前的版本性能提升一倍以上。微軟雅黑開啟,生產環境應該開啟,性能會有巨大提升。
概述????????本文主要描述ThinkSNS Plus服務端系統性能、服務端高性能部署方案及優化措施、服務端系統持續優化及升級策略。本文未涉及前端(PC站點、H5站點、Android、IOS)性能方案。
系統吞吐量????????壓測的服務器為一臺阿里云ECS服務器,服務器配置為2vCPU/4GB/5Mbps/普通云盤200G。安裝thinksns plus后給數據庫添加了少量數據,保證每個接口都是有數據的狀態;然后在服務器本地壓測一些常用的數據讀取接口,壓測結果吞吐量為30QPS左右。
????????30QPS是指系統在每秒可以處理30個請求,一天有86400秒,算下來一天可以處理約260萬個請求;根據thinksns plus移動端統計,平均每頁面3個請求,假設用戶每日平均訪問50個頁面,計算結果為支持1.7萬左右的日活用戶(日活用戶不是注冊會員數量)。當然,這樣計算出來的結果是不準確的,計算中沒有考慮峰值和其他因素,需要根據實際業務做分析。
系統部署和優化 系統和基礎軟件優化????????優化系統和基礎軟件(nginx、mysql、php等)能讓系統支持更多的連接數和請求,并且運行起來更穩定。具體的優化項根據不同的系統環境和業務需求,自行百度或谷歌上面有非常多的優化教程,不在一一列舉。
ThinkSNS Plus部署優化1.?使用php7,php7較之前的php5版本性能提升一倍以上。
2.?開啟PHP OPcache,生產環境應該開啟OPcache,性能會有巨大提升。
3.?關閉調試模式,.env文件中,APP_DEBUG設置為false;可減少程序邏輯處理。
4.?配置信息緩存?php artisan config:cache,緩存配置文件,減少磁盤IO。
5.?路由緩存?php artisan route:cache,緩存路由文件,減少磁盤IO。
6.?自動加載優化?composer dumpautoload,優化自動加載。
7.?配置并使用?redis /memcached來存儲會話,從內存中讀取會話信息沒有磁盤IO。
8.?配置并使用?redis /memcached來存儲緩存數據,從內存中讀取緩存數據沒有磁盤IO。
9.?將程序和數據安裝到SSD磁盤;以阿里云ECS云盤為例:SSD云盤16000IOPS+,而所謂的高效云盤不過3000IOPS;SSD云盤效率是高效云盤的五倍以上。
10.?采用獨立的數據庫服務器或采用云數據庫如阿里云:RDS。
11.?采用獨立的緩存服務器或采用云緩存系統。
12.?使用CDN加速圖片、視頻、文件的訪問和下載。
13.?掛載多帶帶的磁盤用于存儲圖片、視頻和其他用戶上傳的文件。
以上優化項#7~#13都不是必須的,但是建議都進行配置或選擇性配置。按要求優化以上內容之后,整體性能可以提高一倍以上。
分布式部署????????分布式部署為解決更大的業務需求,如更大的請求峰值、數據庫讀寫性能瓶頸,網絡帶寬瓶頸等;目標為建立高可用性系統,單點故障不影響系統服務。目前thinksns plus支持的分布式部署方案如下:
l?應用程序負載均衡,多臺服務器部署thinksns plus系統,通過負載均衡器轉發請求到部署的服務器。thinsns plus?無需任何配置,但是要將會話數據、緩存數據、用戶上傳文件多帶帶部署,也就是上面“thinksns plus?部署優化中的#7、#8、#10、#13條”。
l?數據庫讀寫分離,安裝好數據庫之后,只需在簡單配置即可支持,也可以使用云數據庫做讀寫分離。
l?分布式緩存系統,搭建好分布式緩存服務器后僅需簡單配置即可支持,也可以采用兼容redis協議的云緩存系統。
l?分布式文件系統(目前不支持,已列入計劃,之后會支持云存儲)
系統優化和升級????????以上提及的各種優化部署策略,部分都是建立在增加服務器的基礎上提升系統的處理能力,并未涉及到系統程序的優化,那是不是程序優化就不重要了?
????????當然不是,在業務初期,增加服務器可以快速擴容系統處理能力,而且也是性價比最高的方式;假如聘一個人專門優化程序,一年10萬薪資,那這個人一年能提高程序的一倍性能也是很不錯了,但這十萬要是花在服務器上面,性能可能立即提高10倍。
????????而且,thinksns plus產品研發團隊每天都在優化和改進產品,每次版本迭代,已安裝的thinksns plus程序都可以通過自動或手動的方式合并最新的特性,這其中有很多特性就是針對于性能的優化。保持更新不間斷,已安裝的thinksns plus程序性能也將越來越好。
?
所有我們的產品體驗都在我們的官網“免費體驗”頁面可以找到:http://www.thinksns.com/experience.html
APP端體驗,下載新版本的朋友們,請先卸載老版本,否則無法使用;iphone手機安裝demo前請點擊設置-通用-設備管理-信任(企業應用)
ThinkSNS(簡稱TS),一款全平臺綜合性社交系統,為國內外大中小企業和創業者提供社會化軟件研發及技術解決方案,目前最新系統為ThinkSNS V4及ThinkSNS+兩個并行系統。感謝大家一致對Ts團隊和產品的支持,2018我們在路上。
?
ThinkSNS擁有50多個功能模塊,全方位覆蓋SNS系統所需,微博(朋友圈)、即時聊天、直播、論壇、資訊、CMS、活動、頻道、圈子、問答、打賞等主流社交功能應有盡有。價格梯度多樣,根據您的項目需求靈活選型運用,支持深度靈活二次開發。
想要了解更多請聯系:
17311245680(同微信);QQ:3515923610(←源碼購買、二次開發、創業扶持、定制開發、方案策劃、開發服務等)
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/3439.html
摘要:本文主要全面講解在不適用第三方包的情況下,如何在基于框架上,研發社交系統時,簡歷一套優雅而不失性價比的用戶權限管理體系功能,內含真實代碼。需求場景就是用戶組權限節點,這個需求有很多很好的第三方包實現。但是已經足以勝任用戶組權限判斷邏輯了。 本文主要全面講解在不適用第三方包的情況下,如何在基于Laravel框架上,研發社交系統ThinkSNS+時,簡歷一套優雅而不失性價比的用戶權限管理體...
摘要:言歸正傳,之所以寫繼篇,其實是來檢討的,上一次發表了如何計算字符顯示長度后,有網友幾經測試后告知有問題。簡言之單字節字符占,多字節字符占字節。 什么是ThinkSNS+ ThinkSNS(簡稱TS)始于2008年,一款全平臺綜合性社交系統,為國內外大中小企業和創業者提供社會化軟件研發及技術解決方案,目前最新版本為ThinkSNS+。 后端框架使用laravel,每周和 laravel ...
摘要:年,由北京的團隊開發了涉足社交開源行業。終于,在年下半年,我們決定重寫這個程序,拋棄之前的每一行代碼。起初,我們選擇在中做生成函數,配合第三方包實現,功能實現了。的拓展不能直接以這種方式使用喲,因為我們做這個的想法是把配置移交到后臺配置。 什么是 ThinkSNS+ 好吧,這不是廣告。。。在 09 年,由北京的團隊開發了 ThinkSNS 涉足社交開源行業。09 年,由北京的團隊開發了...
閱讀 901·2021-10-13 09:39
閱讀 1486·2021-10-11 10:57
閱讀 2598·2019-08-26 13:53
閱讀 2544·2019-08-26 12:23
閱讀 3696·2019-08-23 18:30
閱讀 3755·2019-08-23 18:08
閱讀 2528·2019-08-23 18:04
閱讀 2964·2019-08-23 16:28