mdbq 4.0.116__tar.gz → 4.0.117__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.

Potentially problematic release.


This version of mdbq might be problematic. Click here for more details.

Files changed (45) hide show
  1. {mdbq-4.0.116 → mdbq-4.0.117}/PKG-INFO +2 -2
  2. mdbq-4.0.117/mdbq/__version__.py +1 -0
  3. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/redis/redis_cache.py +14 -6
  4. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/route/monitor.py +18 -5
  5. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq.egg-info/PKG-INFO +2 -2
  6. mdbq-4.0.116/mdbq/__version__.py +0 -1
  7. {mdbq-4.0.116 → mdbq-4.0.117}/README.txt +0 -0
  8. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/__init__.py +0 -0
  9. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/auth/__init__.py +0 -0
  10. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/auth/auth_backend.py +0 -0
  11. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/auth/rate_limiter.py +0 -0
  12. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/js/__init__.py +0 -0
  13. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/js/jc.py +0 -0
  14. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/log/__init__.py +0 -0
  15. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/log/mylogger.py +0 -0
  16. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/myconf/__init__.py +0 -0
  17. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/myconf/myconf.py +0 -0
  18. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/mysql/__init__.py +0 -0
  19. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/mysql/deduplicator.py +0 -0
  20. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/mysql/mysql.py +0 -0
  21. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/mysql/s_query.py +0 -0
  22. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/mysql/unique_.py +0 -0
  23. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/mysql/uploader.py +0 -0
  24. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/other/__init__.py +0 -0
  25. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/other/download_sku_picture.py +0 -0
  26. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/other/error_handler.py +0 -0
  27. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/other/otk.py +0 -0
  28. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/other/pov_city.py +0 -0
  29. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/other/ua_sj.py +0 -0
  30. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/pbix/__init__.py +0 -0
  31. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/pbix/pbix_refresh.py +0 -0
  32. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/pbix/refresh_all.py +0 -0
  33. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/redis/__init__.py +0 -0
  34. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/redis/getredis.py +0 -0
  35. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/route/__init__.py +0 -0
  36. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/route/analytics.py +0 -0
  37. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/route/routes.py +0 -0
  38. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/selenium/__init__.py +0 -0
  39. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/selenium/get_driver.py +0 -0
  40. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq/spider/__init__.py +0 -0
  41. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq.egg-info/SOURCES.txt +0 -0
  42. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq.egg-info/dependency_links.txt +0 -0
  43. {mdbq-4.0.116 → mdbq-4.0.117}/mdbq.egg-info/top_level.txt +0 -0
  44. {mdbq-4.0.116 → mdbq-4.0.117}/setup.cfg +0 -0
  45. {mdbq-4.0.116 → mdbq-4.0.117}/setup.py +0 -0
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: mdbq
3
- Version: 4.0.116
3
+ Version: 4.0.117
4
4
  Home-page: https://pypi.org/project/mdbq
5
5
  Author: xigua,
6
6
  Author-email: 2587125111@qq.com
@@ -0,0 +1 @@
1
+ VERSION = '4.0.117'
@@ -678,7 +678,7 @@ class SmartCacheSystem:
678
678
  r'.*table.*|.*column.*|.*field.*': 1200, # 20分钟
679
679
 
680
680
  # 数据查询相关 - 变化频率中等,TTL中等
681
- r'.*data.*|.*query.*|.*result.*': 300, # 5分钟
681
+ r'.*data.*|.*query.*|.*result.*': 600, # 10分钟
682
682
 
683
683
  # 用户会话相关 - 变化频率高,TTL较短
684
684
  r'.*session.*|.*user.*|.*auth.*': 900, # 15分钟
@@ -687,7 +687,7 @@ class SmartCacheSystem:
687
687
  r'.*config.*|.*setting.*|.*param.*': 3600, # 1小时
688
688
 
689
689
  # 统计相关 - 变化频率中等,TTL中等
690
- r'.*stats.*|.*metric.*|.*count.*': 600, # 10分钟
690
+ r'.*stats.*|.*metric.*|.*count.*': 720, # 12分钟
691
691
 
692
692
  # 缓存相关 - 变化频率高,TTL较短
693
693
  r'.*cache.*|.*temp.*|.*tmp.*': 180, # 3分钟
@@ -723,12 +723,20 @@ class SmartCacheSystem:
723
723
  # 3. 基于数据大小的调整
724
724
  size_factor = 1.0
725
725
  if data_size > 0:
726
- if data_size > 1024 * 1024: # > 1MB,延长TTL减少重建开销
727
- size_factor = 1.5
726
+ if data_size > 100 * 1024 * 1024: # > 100MB,延长TTL减少重建开销
727
+ size_factor = 10.0
728
+ elif data_size > 20 * 1024 * 1024: # > 20MB,延长TTL减少重建开销
729
+ size_factor = 8.0
730
+ elif data_size > 10 * 1024 * 1024: # > 10MB,延长TTL减少重建开销
731
+ size_factor = 6.0
732
+ elif data_size > 5 * 1024 * 1024: # > 5MB,延长TTL减少重建开销
733
+ size_factor = 4.0
734
+ elif data_size > 1024 * 1024: # > 1MB,延长TTL减少重建开销
735
+ size_factor = 3.0
728
736
  elif data_size > 100 * 1024: # > 100KB
729
- size_factor = 1.2
737
+ size_factor = 2.0
730
738
  elif data_size < 1024: # < 1KB,缩短TTL减少内存占用
731
- size_factor = 0.8
739
+ size_factor = 1.0
732
740
 
733
741
  # 4. 计算基础TTL
734
742
  base_ttl = self.config.default_ttl
@@ -17,10 +17,10 @@ import pymysql
17
17
  import hashlib
18
18
  import functools
19
19
  from datetime import datetime, timedelta
20
- from typing import Dict, Any, Optional, List
21
- from urllib.parse import urlparse, parse_qs
22
- from dbutils.pooled_db import PooledDB
23
- from mdbq.myconf import myconf
20
+ from typing import Dict, Any
21
+ from urllib.parse import urlparse
22
+ from dbutils.pooled_db import PooledDB # type: ignore
23
+ from mdbq.myconf import myconf # type: ignore
24
24
  from mdbq.log import mylogger
25
25
  from flask import request, g
26
26
  import re
@@ -754,7 +754,20 @@ class RouteMonitor:
754
754
  process_time = round((end_time - start_time) * 1000, 3)
755
755
 
756
756
  response_status = getattr(response, 'status_code', 200) if hasattr(response, 'status_code') else 200
757
- response_size = len(str(response.get_data() if hasattr(response, 'get_data') else ''))
757
+
758
+ # 🚀 兼容流式响应:检查是否为直通模式
759
+ response_size = 0
760
+ try:
761
+ if hasattr(response, 'direct_passthrough') and response.direct_passthrough:
762
+ # 流式响应模式,无法获取准确大小,使用估算值
763
+ response_size = -1 # 标记为流式响应
764
+ elif hasattr(response, 'get_data'):
765
+ response_size = len(str(response.get_data()))
766
+ else:
767
+ response_size = 0
768
+ except (RuntimeError, Exception):
769
+ # 如果获取数据失败(如直通模式),使用默认值
770
+ response_size = -1 # 标记为无法获取大小
758
771
 
759
772
  response_data = {
760
773
  'response_status': response_status,
@@ -1,6 +1,6 @@
1
- Metadata-Version: 2.2
1
+ Metadata-Version: 2.4
2
2
  Name: mdbq
3
- Version: 4.0.116
3
+ Version: 4.0.117
4
4
  Home-page: https://pypi.org/project/mdbq
5
5
  Author: xigua,
6
6
  Author-email: 2587125111@qq.com
@@ -1 +0,0 @@
1
- VERSION = '4.0.116'
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes