… | |
… | |
31 | separate "DBI-Server" processes and sending them requests. |
31 | separate "DBI-Server" processes and sending them requests. |
32 | |
32 | |
33 | It means that you can run DBI requests in parallel to other tasks. |
33 | It means that you can run DBI requests in parallel to other tasks. |
34 | |
34 | |
35 | The overhead for very simple statements ("select 0") is somewhere around |
35 | The overhead for very simple statements ("select 0") is somewhere around |
36 | 120% to 200% (dual/single core CPU) compared to an explicit |
36 | 100% to 120% (dual/single core CPU) compared to an explicit |
37 | prepare_cached/execute/fetchrow_arrayref/finish combination. |
37 | prepare_cached/execute/fetchrow_arrayref/finish combination. |
38 | |
38 | |
39 | ERROR HANDLING |
39 | ERROR HANDLING |
40 | This module defines a number of functions that accept a callback |
40 | This module defines a number of functions that accept a callback |
41 | argument. All callbacks used by this module get their AnyEvent::DBI |
41 | argument. All callbacks used by this module get their AnyEvent::DBI |
… | |
… | |
97 | |
97 | |
98 | exec_server => 1 |
98 | exec_server => 1 |
99 | If you supply an "exec_server" argument, then the DBI server |
99 | If you supply an "exec_server" argument, then the DBI server |
100 | process will fork and exec another perl interpreter (using $^X) |
100 | process will fork and exec another perl interpreter (using $^X) |
101 | with just the AnyEvent::DBI proxy running. This will provide the |
101 | with just the AnyEvent::DBI proxy running. This will provide the |
102 | cleanest possible porxy for your database server. |
102 | cleanest possible proxy for your database server. |
103 | |
103 | |
104 | If you do not supply the "exec_server" argument (or supply it |
104 | If you do not supply the "exec_server" argument (or supply it |
105 | with a false value) then the traditional method of starting the |
105 | with a false value) then the traditional method of starting the |
106 | server by forking the current process is used. The forked |
106 | server by forking the current process is used. The forked |
107 | interpreter will try to clean itself up by calling POSIX::close |
107 | interpreter will try to clean itself up by calling POSIX::close |