Open gyt95 opened 1 month ago
描述bug 一个集成了几十个子应用的系统,打开了8个子应用,然后关闭了3个。不做任何操作,当时看只有400+M,放几个钟1.5G,过了一晚,第二天占用率高达3.5G。。。很多用户反映系统越用越卡。
如何复现 在main.ts时通过遍历子应用地址数组,调用setupApp
主要代码感觉是这个main.ts
import WujieVue from 'wujie-vue3' import '@next/core/dist/style.css' import App from './App.vue' import router from './router' import hostMap from './hostMap' import { MICRO_APP_DATA } from './microApp.json' const app = createApp(App) const pinia = createPinia() const { setupApp } = WujieVue export const props = { jump: (name: string) => { console.log('jump', name) router.push({ name }) }, } // setupApp({ name: "唯一id", url: "子应用地址", exec: true, el: "容器", sync: true }) // 特殊处理的模块 const PRINT_LIST = [ 'xxx', 'yyy', ] const setupAllApp = () => { for (const k in MICRO_APP_DATA) { let baseObj = {} if (PRINT_LIST.includes(k)) { baseObj = { jsAfterLoaders: [ // 如果插入一个外联脚本 { src: 'xxxxx.js' }, // 如果插入一个内联脚本 // 执行一个回调,打印子应用名字 { callback(appWindow: any) { console.log('js-after-loader-callback!!', appWindow.__WUJIE.id) }, }, ], } } setupApp({ name: k, url: hostMap(MICRO_APP_DATA[k as keyof typeof MICRO_APP_DATA].url), exec: true, alive: true, props, plugins: [baseObj], }) } } setupAllApp() // @ts-ignore app.use(router).use(pinia).use(WujieVue).mount('#app')
错误截图 如果有可以将截图带上
打开2小时
打开10小时
控制台报错
最小复现仓库或者地址 重要!!!,请尽量给出复现仓库,这样能极大加快bug解决速度
难道我还要把整个业务项目发上来???
不做任何操作,内存也会增长吗?
如果不用无界,直接用 iframe 打开同样的应用,放相同的时间,内存占用也会上涨吗?
正常挂着怎么会报错呢
确实 内存爆炸
业务代码没问题吗?
描述bug 一个集成了几十个子应用的系统,打开了8个子应用,然后关闭了3个。不做任何操作,当时看只有400+M,放几个钟1.5G,过了一晚,第二天占用率高达3.5G。。。很多用户反映系统越用越卡。
如何复现 在main.ts时通过遍历子应用地址数组,调用setupApp
主要代码感觉是这个main.ts
错误截图 如果有可以将截图带上
打开2小时
打开10小时
控制台报错
最小复现仓库或者地址 重要!!!,请尽量给出复现仓库,这样能极大加快bug解决速度
难道我还要把整个业务项目发上来???