Toggle navigation
Toggle navigation
This project
Loading...
Sign in
fe
/
yohobuy-node
·
Commits
Go to a project
GitLab
Go to group
Project
Activity
Files
Commits
Pipelines
0
Builds
0
Graphs
Milestones
Issues
1
Merge Requests
0
Members
Labels
Wiki
Forks
Network
Create a new issue
Download as
Email Patches
Plain Diff
Browse Files
Authored by
徐炜
8 years ago
Commit
40a68269986d9dd6d890b581485aa3543a6d9a8a
1 parent
d705bbd0
Change log level to debug
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
4 additions
and
4 deletions
doraemon/middleware/limiter/index.js
doraemon/middleware/limiter/rules/qps-limit.js
doraemon/middleware/limiter/index.js
View file @
40a6826
...
...
@@ -20,7 +20,7 @@ const limiter = (rule, policy, context) => {
module
.
exports
=
(
req
,
res
,
next
)
=>
{
let
remoteIp
=
req
.
get
(
'X-Forwarded-For'
)
||
req
.
connection
.
remoteAddress
;
logger
.
info
(
'request remote ip: '
,
remoteIp
);
logger
.
debug
(
'request remote ip: '
,
remoteIp
);
if
(
remoteIp
.
indexOf
(
','
)
>
0
)
{
let
arr
=
remoteIp
.
split
(
','
);
...
...
@@ -48,7 +48,7 @@ module.exports = (req, res, next) => {
]).
then
((
results
)
=>
{
let
allPass
=
true
,
exclusion
=
false
,
policy
=
null
;
logger
.
info
(
'limiter result: '
+
JSON
.
stringify
(
results
));
logger
.
debug
(
'limiter result: '
+
JSON
.
stringify
(
results
));
_
.
forEach
(
results
,
(
result
)
=>
{
if
(
typeof
result
===
'object'
&&
!
exclusion
)
{
...
...
doraemon/middleware/limiter/rules/qps-limit.js
View file @
40a6826
...
...
@@ -50,7 +50,7 @@ module.exports = (limiter, policy) => {
});
return
cache
.
getAsync
(
key
).
then
((
result
)
=>
{
logger
.
info
(
'qps limiter: '
+
key
+
'@'
+
result
+
' max: '
+
MAX_QPS
);
logger
.
debug
(
'qps limiter: '
+
key
+
'@'
+
result
+
' max: '
+
MAX_QPS
);
if
(
result
&&
_
.
isNumber
(
result
))
{
...
...
@@ -60,7 +60,7 @@ module.exports = (limiter, policy) => {
if
(
result
>
MAX_QPS
)
{
// 判断 qps
cache
.
touch
(
key
,
ONE_DAY
);
logger
.
info
(
'req limit'
,
key
);
logger
.
debug
(
'req limit'
,
key
);
return
Promise
.
resolve
(
policy
);
}
else
{
...
...
Please
register
or
login
to post a comment