1 | var ejs = require('ejs');
|
2 | var ariestp = require("../");
|
3 |
|
4 | var ejsTemplate = "<div><h1 class='header'><%- header %></h1><h2 class='header2'><%- header2 %>"+
|
5 | "</h2><h3 class='header3'><%- header3 %></h3><h4 class='header4'><%- header4 %>"+
|
6 | "</h4><h5 class='header5'><%- header5 %></h5><h6 class='header6'><%- header6 %></h6>"+
|
7 | "<ul class='list'><% for (var i = 0, l = list.length; i < l; i++) { %><li class='item'>"+
|
8 | "<%- list[i] %></li><% } %></ul></div>";
|
9 |
|
10 | var ariesTemplate = "<div><h1 class='header'><%- ctx.header %></h1><h2 class='header2'><%- ctx.header2 %>"+
|
11 | "</h2><h3 class='header3'><%- ctx.header3 %></h3><h4 class='header4'><%- ctx.header4 %>"+
|
12 | "</h4><h5 class='header5'><%- ctx.header5 %></h5><h6 class='header6'><%- ctx.header6 %></h6>"+
|
13 | "<ul class='list'><% for (var i = 0, l = ctx.list.length; i < l; i++) { %><li class='item'>"+
|
14 | "<%- ctx.list[i] %></li><% } %></ul></div>";
|
15 |
|
16 |
|
17 |
|
18 | var ejsTemplate2 = "<div><h1 class='header'><%= header %></h1><h2 class='header2'><%= header2 %>"+
|
19 | "</h2><h3 class='header3'><%= header3 %></h3><h4 class='header4'><%= header4 %>"+
|
20 | "</h4><h5 class='header5'><%= header5 %></h5><h6 class='header6'><%= header6 %></h6>"+
|
21 | "<ul class='list'><% for (var i = 0, l = list.length; i < l; i++) { %><li class='item'>"+
|
22 | "<%= list[i] %></li><% } %></ul></div>";
|
23 |
|
24 | var ariesTemplate2 = "<div><h1 class='header'><%= ctx.header %></h1><h2 class='header2'><%= ctx.header2 %>"+
|
25 | "</h2><h3 class='header3'><%= ctx.header3 %></h3><h4 class='header4'><%= ctx.header4 %>"+
|
26 | "</h4><h5 class='header5'><%= ctx.header5 %></h5><h6 class='header6'><%= ctx.header6 %></h6>"+
|
27 | "<ul class='list'><% for (var i = 0, l = ctx.list.length; i < l; i++) { %><li class='item'>"+
|
28 | "<%= ctx.list[i] %></li><% } %></ul></div>";
|
29 |
|
30 |
|
31 | var sharedVariables = {
|
32 | header: "Header",
|
33 | header2: "Header2",
|
34 | header3: "Header3",
|
35 | header4: "Header4",
|
36 | header5: "Header5",
|
37 | header6: "Header6",
|
38 | list: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '10']
|
39 | };
|
40 |
|
41 |
|
42 | var run_num = 10000;
|
43 |
|
44 |
|
45 |
|
46 | var ejsTemplateFn = ejs.compile(ejsTemplate);
|
47 | var now = Date.now();
|
48 | for (var i=0; i<run_num;i++){
|
49 | var s = ejsTemplateFn(sharedVariables);
|
50 |
|
51 | }
|
52 | console.log("ejs ",run_num, " time: ", Date.now() - now, " ms");
|
53 |
|
54 |
|
55 |
|
56 |
|
57 | var now = Date.now();
|
58 | ariestp.set({"cacheTime":1000*60*60});
|
59 | var count = run_num
|
60 | for (var i=0; i<run_num;i++){
|
61 | ariestp.compile(ariesTemplate, sharedVariables, function(err, s, useCache){
|
62 |
|
63 | if(--count <= 0){
|
64 | console.log("aries ",run_num," time: ", Date.now() - now, " ms");
|
65 | }
|
66 | });
|
67 | }
|
68 |
|
69 |
|
70 |
|
71 |
|
72 | var ejsTemplateFn = ejs.compile(ejsTemplate2);
|
73 | var now = Date.now();
|
74 | for (var i=0; i<run_num;i++){
|
75 | var s = ejsTemplateFn(sharedVariables);
|
76 |
|
77 | }
|
78 | console.log("ejs2 ",run_num, " time: ", Date.now() - now, " ms");
|
79 |
|
80 |
|
81 | setTimeout(function(){
|
82 |
|
83 | var now = Date.now();
|
84 | ariestp.set({"cacheTime":1000*60*60});
|
85 | var count2 = run_num
|
86 | for (var i=0; i<run_num;i++){
|
87 | ariestp.compile(ariesTemplate2, sharedVariables, function(err, s, useCache){
|
88 |
|
89 | if(--count2 <= 0){
|
90 | console.log("aries2 ",run_num," time: ", Date.now() - now, " ms");
|
91 | }
|
92 | });
|
93 | }
|
94 | },5000)
|
95 |
|