????????????
???????????????????????????????????????
??????????
?????????????????????????????????????????
????????????????? ???????????????????? ???????????????????????????????????????????????????????????÷??????????г???????????????????
??????????
?????????????????????????Ч????????? ?? ??????????? / ???? ????
????HTTP ???????????????? RPS??Requests Per Second ??????????????λ?????????????????????Ч?????????仰????????????????
?????????????????????????????????????????й??????????????????????ж??????????й???????????????????й?????????????????????????
??????????????????У???????????????????????????????????????????????????????????????? ?????????????д???????? ???????????????????????????????????? ????????????????????л????????????????????????????? ??
??????????
?????????????????????????????????????????????????????紫????????????????????????ɡ?????????ms???????λ??
???????????????????????????????????????????????????????????????????????????????????????????????????????
?????????????????????????????????ζ????????????????????????? ??λ??? ?????????????????????
?????????????????λ??????
??????????????????????????????????????????100?????????? 98 ?????? 1ms??????????? 100ms??????????????? (98 * 1 + 2 * 100) / 100.0 = 2.98ms ??
???????λ???? Percentile - Wikipedia ????????????????????????????? 99% ????λ?????? ??????? 99% ???????????????????????????
????????????????????????????????????????? 2.98ms???? 99% ????λ????????? 100ms??
??????????????????????????λ????????????????????????Ч???????????????????? 98% ????λ?????????? GitHub System Status ??????? 98TH PERC. WEB RESPONSE TIME ?????
???????????
????1. ??????????
??????????????к?????????????????????????????????????????????????ò????????????????????檔????????????????????????????????????
???????????????????????????????????????????? ?????????????????????
???????????????????????????????????????Щ???????????????????????????????????
????· ???/Landing Page ??????????????????????
????· ????????? ????????????????????????????????????????????
????· ????? ????????????????????????y??????????
??????????????????????
??????????????????????????????б?????????????????λ?????????????μ??????????????????????в????????????Щ????????С?????????????μ????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????
??????????????????
?????ò??????????????????????????????????????????Щ????????
???????磬???????? 50 ????μ????????????????б????????????????????????????????????????? 1000 ?????????б???????????????????????????????????????????????Щ???????????????
?????μ????Ч?????????????????????д??????Щ??????????????
????2. ?????????
?????????????? HTTP ??????????????????ù????? wrk ?? ab ?? vegeta ?? siege ??????й?????????????????в?????????????????????б?????????????
???????? ab ??????????????????????????????Ч??????????????????????????????? wrk ??????
????3. ?????????
?????????????????????????????????????????ü????????????????????????? CPU????楨??????????????б?????????Щ???????????? - ????????? - ?????????????????????????
?????????????????????ü????????????????????????????????????磺
????· ???? Worker ???????????????Э?????????????????????
????· ????????????????
????????????????????????????Щ??????????????ó????????????????????????????????Щ??????????????
???????????
????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????ɡ??? wrk ?????
????$ wrk --latency -c100 -t5 -d 10 http://localhost:8080/hello/piglei
????# -c 100????? 100 ????????
????# -t 5?????? 5 ?????
????# -d 10?????? 10 ????
??????????????????棬????????????????????????????? [10?? 100?? 256?? 512?? 1024?? 2048] ???????????????????????????????????????μ???????????
?????????????У????м???????
????1. ??????
??????в?????????????????????????????????ò????????????????????????????????С????????????
????2. ????????????
?????????????????????????????????????????????????????????????С?? 30 ?????????????????????????????
????????ò??????????????????β??????????????????????? 3-5 ?????
????3. ????ò??????????
????????????????????????????п?????????????????????????????????????????????????????????????У?????????????????????????
?????????????????????????????2???????????????????????????????????????????
????4. ????????????
??????????????????????????????????????????????????????????????????????? Linux Increase The Maximum Number Of Open Files / File Descriptors (FD)