MySQL Simple Asynchronous Client
Version: 0.2 BetaMySAC is a library that provides mechanisms for making asynchronous request to MySQL databases.
Operating System: Linux
It uses uses the official MySQL client library for authentication and network functions. Memory allocation must be done in user code, so any memory manager can be used.
The actual library is beta. I search people for testing it and submit ideas. Is only tested with mysql 5. I think that is running also with MySQL 4.1
- for the asynchronous The lib run with the same asynchronous mechanism that openssl: the I/O functions called, returns message "need write" or "need read", and never block.
- The lib is linked with the official mysql client lib, for using authentication method and conversion network host functions. This assure durability of the lib
- The memory allocation are doing by the user code and not by the lib. With this choice, you can use your personnal memory manager.
- In first step, you allocate memory for MYSAC pools. Each MYSAC struct manage connexion to MySQL server. Each MYSAC struct use 10384o (10240o just for buffering SQL requests and management responses)
- In second step, you allocate buffer pool for containing responses. You can have big, medium and low memory buffers.
- If you want speed in execution, you can prepare MySQL statements.
- Send request: prepare request (or execute statement) and associate buffer with the request. when the request is terminated, you can dettach the buffer from MYSAC struct, and send other request. While the other request respond, you can use the buffer of the first request