天天看點

思考(七十八):伺服器端被動重新整理機制

伺服器端被動重新整理

經曆過太多項目,會在伺服器端邏輯 loop 中添加這種檢查,諸如:

  • 周遊背包,檢查物品是否過期
  • 周遊任務,檢查任務是否過期
  • 等等

在 C++ 伺服器端中,這裡的問題,主要是定時周遊,會耗 CPU

而在 Golang 伺服器端中,除了定期周遊檢查會耗 CPU 外,還涉及 Session 秒級定時器,造成協程每秒切換數與 session 規模呈正比問題

會到消耗大量 CPU

Session 秒級定時器問題

上一章已做過分析: https://blog.csdn.net/u013272009/article/details/113355411

golang 定時器問題,隻要性能消耗在協程間切換。具體測試用例參考: https://github.com/fananchong/test/tree/master/goroutine_test

  • a_test.go 7w 秒級定時器切換性能消耗