Upload screenshotService.js
Browse files
backend/src/services/screenshotService.js
CHANGED
@@ -93,14 +93,13 @@ class ScreenshotService {
|
|
93 |
// 内存和性能优化
|
94 |
'--disable-dev-shm-usage',
|
95 |
'--disable-extensions',
|
96 |
-
'--disable-background-timer-throttling',
|
97 |
-
'--disable-backgrounding-occluded-windows',
|
98 |
-
'--disable-renderer-backgrounding',
|
99 |
'--no-first-run',
|
100 |
'--no-default-browser-check',
|
101 |
'--disable-default-apps',
|
102 |
'--disable-features=TranslateUI',
|
103 |
'--disable-ipc-flooding-protection',
|
|
|
|
|
104 |
|
105 |
// 容器环境优化 - 禁用D-Bus和系统服务
|
106 |
'--disable-dbus',
|
@@ -116,16 +115,19 @@ class ScreenshotService {
|
|
116 |
'--disable-software-rasterizer', // 禁用软件光栅化,使用硬件加速
|
117 |
'--enable-gpu-rasterization', // 启用GPU光栅化以改善SVG渲染
|
118 |
'--enable-oop-rasterization', // 启用进程外光栅化
|
119 |
-
'--disable-
|
|
|
120 |
|
121 |
// 内存限制优化
|
122 |
'--js-flags=--max-old-space-size=512', // 降低JS内存使用
|
123 |
'--memory-pressure-off',
|
124 |
|
125 |
// 进程优化
|
126 |
-
'--single-process', // 使用单进程模式减少资源消耗
|
127 |
'--disable-background-networking',
|
128 |
'--disable-background-mode',
|
|
|
|
|
|
|
129 |
|
130 |
// 禁用不必要的功能
|
131 |
'--disable-breakpad',
|
@@ -136,16 +138,23 @@ class ScreenshotService {
|
|
136 |
'--disable-prompt-on-repost',
|
137 |
'--disable-client-side-phishing-detection',
|
138 |
'--disable-component-extensions-with-background-pages',
|
139 |
-
'--blink-settings=imagesEnabled=true'
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
140 |
],
|
141 |
-
timeout:
|
142 |
ignoreHTTPSErrors: true,
|
143 |
defaultViewport: null, // 动态设置视口
|
144 |
handleSIGINT: false, // 由我们自己处理
|
145 |
handleSIGTERM: false,
|
146 |
handleSIGHUP: false,
|
147 |
dumpio: false, // 禁用浏览器日志输出到控制台
|
148 |
-
protocolTimeout:
|
149 |
};
|
150 |
|
151 |
// 检测环境并应用特定优化
|
|
|
93 |
// 内存和性能优化
|
94 |
'--disable-dev-shm-usage',
|
95 |
'--disable-extensions',
|
|
|
|
|
|
|
96 |
'--no-first-run',
|
97 |
'--no-default-browser-check',
|
98 |
'--disable-default-apps',
|
99 |
'--disable-features=TranslateUI',
|
100 |
'--disable-ipc-flooding-protection',
|
101 |
+
'--disable-features=VizDisplayCompositor',
|
102 |
+
'--disable-gpu-sandbox',
|
103 |
|
104 |
// 容器环境优化 - 禁用D-Bus和系统服务
|
105 |
'--disable-dbus',
|
|
|
115 |
'--disable-software-rasterizer', // 禁用软件光栅化,使用硬件加速
|
116 |
'--enable-gpu-rasterization', // 启用GPU光栅化以改善SVG渲染
|
117 |
'--enable-oop-rasterization', // 启用进程外光栅化
|
118 |
+
'--disable-crash-reporter', // 禁用崩溃报告
|
119 |
+
'--disable-logging', // 禁用日志记录
|
120 |
|
121 |
// 内存限制优化
|
122 |
'--js-flags=--max-old-space-size=512', // 降低JS内存使用
|
123 |
'--memory-pressure-off',
|
124 |
|
125 |
// 进程优化
|
|
|
126 |
'--disable-background-networking',
|
127 |
'--disable-background-mode',
|
128 |
+
'--disable-renderer-backgrounding',
|
129 |
+
'--disable-backgrounding-occluded-windows',
|
130 |
+
'--disable-background-timer-throttling',
|
131 |
|
132 |
// 禁用不必要的功能
|
133 |
'--disable-breakpad',
|
|
|
138 |
'--disable-prompt-on-repost',
|
139 |
'--disable-client-side-phishing-detection',
|
140 |
'--disable-component-extensions-with-background-pages',
|
141 |
+
'--blink-settings=imagesEnabled=true',
|
142 |
+
'--disable-gpu-process-crash-limit', // 禁用GPU进程崩溃限制
|
143 |
+
'--disable-features=VizDisplayCompositor,AudioServiceOutOfProcess', // 禁用可能导致崩溃的功能
|
144 |
+
'--no-zygote', // 禁用zygote进程
|
145 |
+
'--disable-accelerated-2d-canvas', // 禁用2D画布硬件加速
|
146 |
+
'--disable-accelerated-jpeg-decoding', // 禁用JPEG硬件解码
|
147 |
+
'--disable-accelerated-mjpeg-decode', // 禁用MJPEG硬件解码
|
148 |
+
'--disable-accelerated-video-decode' // 禁用视频硬件解码
|
149 |
],
|
150 |
+
timeout: 60000, // 增加超时时间
|
151 |
ignoreHTTPSErrors: true,
|
152 |
defaultViewport: null, // 动态设置视口
|
153 |
handleSIGINT: false, // 由我们自己处理
|
154 |
handleSIGTERM: false,
|
155 |
handleSIGHUP: false,
|
156 |
dumpio: false, // 禁用浏览器日志输出到控制台
|
157 |
+
protocolTimeout: 60000 // 增加协议超时时间,解决Network.enable超时问题
|
158 |
};
|
159 |
|
160 |
// 检测环境并应用特定优化
|