@@ -230,42 +230,6 @@ exports.run = (options) => {
230
230
url = url . replace ( '.map' , '' ) . slice ( 1 ) ;
231
231
const cacheId = sysPath . join ( projectName , url ) ;
232
232
233
- // 按照访问次数/访问间隔做权重排序,默认保留三个 middleware
234
- const now = + new Date ( ) ;
235
- const middlewareList = Object . keys ( middlewareCache )
236
- . map ( key => {
237
- const middleware = middlewareCache [ key ] ;
238
- return middleware ? {
239
- key,
240
- middleware : middleware ,
241
- weight : middleware . _visit / ( now - middleware . _timestamp ) * 1000
242
- } : null ;
243
- } )
244
- . filter ( v => v )
245
- . sort ( ( a , b ) => b . weight - a . weight ) ;
246
-
247
- let removeLen = middlewareList . length - maxMiddleware ;
248
- let index = middlewareList . length - 1 ;
249
-
250
- while ( removeLen > 0 ) {
251
- const key = middlewareList [ index ] . key ;
252
- if ( key !== cacheId ) {
253
- const md = middlewareCache [ key ] ;
254
- delete middlewareCache [ key ] ;
255
- md . close ( ) ;
256
- }
257
-
258
- removeLen -= 1 ;
259
- index -= 1 ;
260
- }
261
-
262
- // 寻找已有的 middlewareCache
263
- if ( middlewareCache [ cacheId ] ) {
264
- middlewareCache [ cacheId ] ( req , res , next ) ;
265
- middlewareCache [ cacheId ] . _visit += 1 ;
266
- return ;
267
- }
268
-
269
233
// hot reload
270
234
const hotEnabled = ( project . server && project . server . hot ) || hot ;
271
235
if ( hotEnabled ) {
@@ -320,6 +284,42 @@ exports.run = (options) => {
320
284
allAssetsEntry [ projectName ] = url ;
321
285
}
322
286
287
+ // 按照访问次数/访问间隔做权重排序,默认保留三个 middleware
288
+ if ( ! shouldCompileAllEntries ) {
289
+ const now = + new Date ( ) ;
290
+ const middlewareList = Object . keys ( middlewareCache )
291
+ . map ( key => {
292
+ const middleware = middlewareCache [ key ] ;
293
+ return middleware ? {
294
+ key,
295
+ middleware : middleware ,
296
+ weight : middleware . _visit / ( now - middleware . _timestamp ) * 1000
297
+ } : null ;
298
+ } )
299
+ . filter ( v => v )
300
+ . sort ( ( a , b ) => b . weight - a . weight ) ;
301
+
302
+ let removeLen = middlewareList . length - maxMiddleware ;
303
+ let index = middlewareList . length - 1 ;
304
+
305
+ while ( removeLen > 0 ) {
306
+ const key = middlewareList [ index ] . key ;
307
+ if ( key !== cacheId ) {
308
+ delete middlewareCache [ key ] ;
309
+ }
310
+
311
+ removeLen -= 1 ;
312
+ index -= 1 ;
313
+ }
314
+ }
315
+
316
+ // 寻找已有的 middlewareCache
317
+ if ( middlewareCache [ cacheId ] ) {
318
+ middlewareCache [ cacheId ] ( req , res , next ) ;
319
+ middlewareCache [ cacheId ] . _visit += 1 ;
320
+ return ;
321
+ }
322
+
323
323
let nextConfig ;
324
324
if ( ! shouldCompileAllEntries || allAssetsEntry [ projectName ] === url ) {
325
325
compiler = project . getServerCompiler ( function ( config ) {
@@ -538,7 +538,7 @@ exports.run = (options) => {
538
538
cert : fs . readFileSync ( globalConfig [ 'https-crt' ] )
539
539
} ;
540
540
}
541
-
541
+
542
542
servers . push ( extend ( https . createServer ( httpsOpts , app ) , { _port : '443' , _isHttps : true } ) ) ;
543
543
}
544
544
0 commit comments