?????????????????????????tcp/ip????协???????????????????????????????????????????????????????????????????????????????????????????????????????????????薪??????????????????????????????????????????????????????????????????????????????????????????????????????????
????????????????


????
?1

???????????????????1???UNIX ???????????斜?????缃�???????????????????????????????????? write->read->write->read????????????????????????????read-????-write??????
????connect???????????????????????????????????????
????????????校???????read??????卸?危???http协???校??????????????????????????????????????澹�????????????????????????
?????????????????????????????read??????????????read??????????read?????????????????
??????????????????????????????????卸??read-????-write????
?????????????????????????锟�?
????1.??????????????
????2.????????
????3.????????????????????
???????????????
????????慰?<<High Performance MySQL>> ??? 38????????????????????????????????????????????写?????
????????????????????????(??????)????????????
??????????(???)??????????????????????????????read-????-write????????????????????????????????????????????
???????????????????????????????????????2????????????????????????????????????????????????????????????????????????????
???????????????????????????????????????????????????????????????????????锌????????????????????????????????????????????????????????????????????霉????校??????梅????????????????????


??
???2

????????????????????
?????????? = f1(CPU??????CPU??????????IO???????????????????????????????????????CPU???????????IO??????????)
?????????? = f2(CPU??????CPU??????????IO???????????????????????????????????????CPU???????????IO??)
?????????? = f3(????????????????????? ??????????????)
??????????????
??????????????
????????????? CPU??????CPU??????????IO???????????????????????????
?????????????????????????????????CPU???????????IO????????????械??
?????????????????????????????????????????
???????????????????????????????????????????锟�????????????小??????????????(小)???????????????????????????小?????浠�???????????????????????????????I/O?????????????锟�??????????????????????????????????????????????????????些???????些??????????????????????????????????????械????????????CPU??????????????????????????????????????????????????????????????????????????????????
???????????????????谐???????????????????????????????????????????????????????????????????????????????????屑?????????????????????????????????????????????
??????????????
????????????????????????????????????卸??????????CPU??????????????????????????????????
????CPU:????????????????????CPU?????????CPU????????????????械????
????????I/O : ???????I/O????????????????????????????????写??????????泄?????????????????锌??????IO???
????????I/O: ???????I/O????????????????????I/O????????????????????????泄???锌??????IO???
???????: ????????????小?????????????????????????????????I/O??????????????妫�????????

???????????????

?????????????????
?????????????????????????????????????????????????????????CPU??????????I/O????????写???????CPU?????????I/O???????????校???????????????????????危?????????????????????????写?????????
????????薪?慰??????????锟�?


????
?3

????????????些???????瑁�
????1.????????????锌????????????????????????????????????????????????????????????????????????????????????????????
????2.?????????????????????????????????????????????????
????3.???????斜??????????????卸???????????????????????????泄??
??????????渭???????
???????????????  ????????????澹�????????????????????????????????????????????????????????????????????????????????校???????????????read-write?????校???????????3???????????????????锟�?
?????????? =  ?????????*??????
?????????????????????????????????????????????????????????????????????A?????????????B??????????????????校????泻??????????????????????????B??????????????????????????B?????????????????????????????????????伪??????????????A???????????????????????????????????????????A???????????? ???????????*??????


????
? 4


?????????????????????????????????????????????????????????锟�?
?????????? =  ?????????* max(??????1????????2…??????n)
??????????渭????????
???????????????:  ??????????????????????????????????????????????????????????????????????????????????????????????????????????????????胁???????????危?????????????????????????????????谓????????:
?????????? = ???1???????*???1??????+???2???????*???2??????+…???n???????*???n??????
?????????????????????????????????????????????: ?????? = ??????
??????????渭??????
??????????????????????????????????????????危?
????????????? = ??????+CPU??泻??+????I/O???
??????????:  ?????????????????????????????????????????????澹�???????贸?????????????????????????宓ノ�?????位???????????X??????贸????????  X*S3/H3
?????????懈?????????????????????????????????????????????????????????泄??
????CPU??泻??:   ????卸??CPU??????????????????胁??????????????泻??? S1/H1
????????I/O??泻???? ????械??????渭???? S2/H2
????10????渭?????????
???????????????????????????????????????小???????????????????????????????????
?????????? = min(????????????CPU????????????I/O??????)
??????????????????????锟�?
????????????????  H3/S3
????CPU???????? N1*H1/S1
????????I/O???????? H2/S2
????11???????????????
???????????????????????????
????????????
??????????????????????????????????小????????泄?????????????????????????5???????
?????????? = min(H3/S3??N1*H1/S1??H2/S2)


????
?5

?????????
?????????绱�????CPU???????????Q1??CPU????????I/O????????Q2
???????????????????????????????????小???????????????????????????????????????????????Q1??Q2??????????????魏?????????
??????? = X*S3/H3+S1/H1+S2/H2
??????????????????????????????H-S-E???????谢?????????????????????H-S-F????????????????????????????????H-S-F????H-S-F???渭??????????锟�?
????????Q1??????L1??Q2??????L2???????????????????H-S-E?????????????????械??????????????????????????H3/S3 > N1*H1/S1 > H2/S2????????????????????????????????????胁????????????
???????械????? = Y*L1*(S1/H1)+ L2*(S2/H2)
????H-S-F?渭???? =X*S3/H3+S1/H1+S2/H2+ L1*(S1/H1)+L2*(S2/H2)
???????谐???????????????????????锌????????锟�?????????????t??
??????????????CPU????????????????????????????????????????????????????????????????????????????????????????????????????????CPU?????????????????????Y*L1(S1/H1)??
??????????:
????????????????澹�??????械???????????????????????????????????????????????????H-S-E????????
????min(H3/S3??N1*H1/S1??H2/S2)* (X*S3/H3+S1/H1+S2/H2)
????H-S-F??????????
????min(H3/S3??N1*H1/S1??H2/S2)*(X*S3/H3+S1/H1+S2/H2+L1*(S1/H1)+L2*(S2/H2))
??????H-S-E???锟�????????????????????????????????????????????????????????H-S-F??????????????????????????????????????????????????????
??????????
??????????????????????????????????????????????????????????????????????????????????????????????????????????些????????????????????????????????
????????????????????????????CPU????????????????????????????????小???????????婕�???????谢?????CPU??????????????校?????谢???????????????????????????????????CPU??械???????????N1*H1/S1???????????????????????????????????????????????????????????????眉????????
?????????????????????????????????????????????????????????????????????????????????????????apache??????????????????????????????????????????
???????????H-S-F???锟�?Q1??Q2???锌????????????????????????貌???????????校???Q1??Q2????????????????????谢???????????????????校????????????????????????谢??????写??????写?????????写???????????????貌????校??????懈????????????????????谐?????????????????????????????????????锟�????????????????????????????
???????????????????貌????????????????????????????????????????????????????????????????????????????????贸??????????????????谐????L?????????T??????贸?????????
????L*( X*S3/H3+S1/H1+S2/H2) < T
????L < T*(X*S3/H3+S1/H1+S2/H2)