рдХреБрдЫ рд╕рдордп UPDATE & INSERT рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмрд┐рддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред
рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдореЗрдЬ рдкрд░ рд╕рдм рдХреБрдЫ рдкрд░реАрдХреНрд╖рдг рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛
CREATE TABLE `test`.`test` (
`keyid` varchar(45),
`value` varchar(45),
PRIMARY KEY (`keyid`)
) ENGINE=MyISAM DEFAULT CHARSET=cp1251
рд╕рд░рд▓ рдЙрджрд╛рд╣рд░рдг рд╣реИ
$port = 9998;
$hs = new HandlerSocket($host, $port);
$retval = $hs->executeInsert(0, array( '112233090' , '12212212' ));
var_dump($retval);
* This source code was highlighted with Source Code Highlighter .
рдЬрд╛рд░реА
bool(false);
bool(false);
рдпрд╣ рдкрддрд╛ рдЪрд▓рд╛ рд╣реИ рдХрд┐ рдЫрд╛рддреА рдмрд╕ рдЦреЛрд▓рд╛:
рдЕрдЧрд░ рд╣рдо SHOW PROCESSLIST рджреЗрдЦрддреЗ рд╣реИрдВ

рддрдм рдореЛрдб рдореЗрдВ рд╕реНрдЯреЗрдЯ рдХреЙрд▓рдо рдХреА рд▓рд╛рдЗрди 17 рд╕рднреА рдкрд┐рдЫрд▓реА рд▓рд╛рдЗрдиреЛрдВ рд╕реЗ рдЕрд▓рдЧ рд╣реЛрддреА рд╣реИ:
mode=rd
mode=wr
рдЬреИрд╕рд╛ рдХрд┐ рд▓реЗрдЦ рдореЗрдВ рдЙрд▓реНрд▓реЗрдЦ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рд╣реИрдВрдбрд▓рд░ рд╕реЙрдХреЗрдЯ рдФрд░ php_handlerocket рдХреЗ рд╕рд╛рде рдкрд╣рд▓рд╛ рдЕрдиреБрднрд╡ рдЬрдм рд╣реИрдВрдбрд▓рд░ рд╕реЙрдХреЗрдЯ , 16 рд░реАрдбрд┐рдВрдЧ рдереНрд░реЗрдб рдФрд░ рдПрдХ рд▓реЗрдЦрди рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдбреЗрдЯрд╛ my.cnf рдореЗрдВ рд╕реЗрдЯ рд╣реИ
loose_handlersocket_threads = 16
# the number of worker threads (for read requests)
loose_handlersocket_threads_wr = 1
# the number of worker threads (for write requests)
рдЗрд╕рд▓рд┐рдП, рд░реАрдбрд┐рдВрдЧ рдереНрд░реЗрдбреНрд╕ (рдереНрд░реЗрдбреНрд╕) 9998 рдкреЛрд░реНрдЯ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╛рдЗрдВрдб рд╣реЛрддреЗ рд╣реИрдВ, рдФрд░ 9999 рдкреЛрд░реНрдЯ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдПред рдЗрд╕рд▓рд┐рдП, рдпрджрд┐ рдЖрдк INSERT / UPDATE / DELETE рд╕рдВрдЪрд╛рд▓рди рдХрд░рдиреЗ рдХрд╛ рдЗрд░рд╛рджрд╛ рд░рдЦрддреЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдкреЛрд░реНрдЯ 9999 рдкрд░ рдЗрдВрдбреЗрдХреНрд╕ рдЦреЛрд▓рдирд╛ рд╣реЛрдЧрд╛
$host = 'localhost' ;
$port = 9998;
$port_wr = 9999;
$hs = new HandlerSocket($host, $port_ wr);
* This source code was highlighted with Source Code Highlighter .
рдЗрд╕реА рддрд░рд╣ рдореВрд▓ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде:
telnet akalend.local 9998
tlnet: connect to address fe80::217:f2ff:feee:3a60: Connection refused
Trying 192.168.1.10...
Connected to akalend.local.
Escape character is '^]'.
P 0 test test PRIMARY keyid,value
0 1
0 = 1 123123
0 2 123123 asdasdasd
0 = 1 123123 0 0 D
2 1 readonly
telnet akalend.local 9998
tlnet: connect to address fe80::217:f2ff:feee:3a60: Connection refused
Trying 192.168.1.10...
Connected to akalend.local.
Escape character is '^]'.
P 0 test test PRIMARY keyid,value
0 1
0 = 1 123123
0 2 123123 asdasdasd
0 = 1 123123 0 0 D
2 1 readonly
INSERT / UPDATE рдкрд░рд┐рдЪрд╛рд▓рдиреЛрдВ рдХреЗ рд╕рд╛рде рд╣рдореЗрдВ рдЖрд╕рд╛рдиреА рд╕реЗ рддреНрд░реБрдЯрд┐ рдорд┐рд▓рддреА рд╣реИ
telnet akalend.local 9999
Trying fe80::217:f2ff:feee:3a60...
telnet: connect to address fe80::217:f2ff:feee:3a60: Connection refused
Trying 192.168.1.10...
Connected to akalend.local.
Escape character is '^]'.
P 0 test test PRIMARY keyid,value
0 1
0 = 1 123123 1 0 D
0 1 1
0 + 2 1111 12345
0 1
рдпрд╣рд╛рдВ рд╕рдм рдХреБрдЫ рдареАрдХ рд╣реЛрддрд╛ рджрд┐рдЦ рд░рд╣рд╛ рд╣реИред
рдЕрдм рд╕реВрдЪреА 1 рдореЗрдВ рдХреЛрдб рдПрдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдкрд░рд┐рдгрд╛рдо рджреЗрдЧрд╛:
bool(true)
рдЕрдВрдд рдореЗрдВ, MacX 2Gb 2.3 GHz CoreDuo рдХрд╛ рдереЛрдбрд╝рд╛ рдкрд░реАрдХреНрд╖рдг, рдЙрджреНрджреЗрд╢реНрдп (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд╕реЗрдЯрд┐рдВрдЧреНрд╕) рдкрд░ рдХреБрдЫ рднреА рддреЗрдЬ рдирд╣реАрдВ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред
рдореЗрдХрдЪреЗ, рд░реЗрдбрд┐рд╕, рдореЗрдореНрдЪреЗрдЪреЗрдм, рдПрдЪрдПрд╕, рддреЛрддреЛ рддрд╛рдирд╛рд╢рд╛рд╣ рдореЗрдВ 32 рдмрд╛рдЗрдЯреНрд╕ рдХреЗ 100,000 рд░рд┐рдХреЙрд░реНрдб рд▓рд┐рдЦрдирд╛ / рдкрдврд╝рдирд╛
рдПрдХ рдзрд╛рдЧреЗ рдореЗрдВ, рдПрдХ рдХрдиреЗрдХреНрд╢рди, рджреЗрд╢реА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ред
рдкрд░рд┐рдгрд╛рдо:
NoSQL | рд╕реЗрдЯ | рдкреНрд░рд╛рдкреНрдд |
---|---|---|
рдПрдЪ рдПрд╕ | 33.4 | 24.6 * / 26.3 ** |
Mc | 16.7 | 15.6 |
McDb | 21.4 | 17.5 |
redis | 19.4 | 19.6 |
TokyoTr | 22.1 | 22.8 |
рд╕реЗрдХрдВрдб рдореЗрдВ рд╕рдордп, рдФрд╕рддрди 3-5 рдорд╛рдк рдХрд┐рдП рдЧрдПред
* - рдкрдврд╝рдиреЗ рдХреЗ рдмрдВрджрд░рдЧрд╛рд╣ рдХреЗ рд▓рд┐рдП
** - рд▓реЗрдЦрди рдмрдВрджрд░рдЧрд╛рд╣ рдХреЗ рд▓рд┐рдП
рдореИрдВ рдФрд░ рдХреНрдпрд╛ рддреБрд▓рдирд╛ рдХрд░рдирд╛ рдЪрд╛рд╣реВрдВрдЧрд╛: рдореЗрдореНрдмреЗрд╕ рдФрд░ рдЯрд╛рд░рдирдЯреВрд▓