rose
  • I just spent some minutes recompiling my php to enable mysqli support. As I am always on the lookout of anything that would increase the performance of my server...

    PHP compiled ok, I changed "config.php" to mysqli... now the question is, was it worth it? So far, I have not noticed any difference in performance.
    (My server is about ~200 users online)

    Then I came across this nice reading:
    http://www.johnjawed.com/benchmarks/

    That says that not only mysqli is not faster, it's actually slower than using the old mysql extension. Sad. Any experiences of recommendations? Does vbulletin use prepared statements?


  • You are right, many things might balance the equation in the wrong way. :)
    But I think more from a practical side of view. Maybe the processor and disk quality change does make a huge impact on performance (technology from 2 years ago is crazy old in server world)? Maybe the mysqli module was optimized originally for dual core performance and he used a single core weak processor? This is just an example... I did not check properly his specs, but you get the idea.

    There are so many factors to be taken into consideration, it is simply not worth the effort to read to many side reviews. No matter what others will say about mysql or mysqli, you are the only one who will know with precission the real performance numbers related to your server. Who cares if the guy says mysqli is bad if your server spits the data like crazy because you hooked into it 15K RPM SAS drives on a RAID5 (for example)?

    I know that many admins here are like myself, bleeding edge users. Every time... in this little computer world, change is good, always. Is not like IRL. Hell, only the huge list of fixed bugs in each version make you upgrade ASAP.

    You are also right about mysqli code implementation, to a certain extent. But, no matter what is written as code, it will always be place for improvement. That is true development. Let's wait for vBulletin 4 and enjoy our servers humming with nice users. :)


  • Did you see what year this info was published? 2005.
    Don't be so sad. Personally, I don't believe at all the above tests are accurate. mysqli will blow mysql, with the current 5.0.45 version. (ie. mysqli_multi_query)
    Then, what kind of benchmark method is this to use a debugger for the execution time?
    Why not doing it into the actual php code, locally? I have a feeling he did the tests on a remote server, so the bandwidth, etc. might be taken into consideration also.

    Try it yourself, you will see if he is telling the truth. You should not believe what everyone says on the Internet. I mean, if the MySQL guys posted several documents where they highlight the mysqli improvements and even Jelsoft told us to use the mysqli extension instead the old mysql one, we should not believe one guy telling us that mysqli is crap, right? :)


  • Did you see what year this info was published? 2005.
    Don't be so sad. Personally, I don't believe at all the above tests are accurate. mysqli will blow mysql, with the current 5.0.45 version. (ie. mysqli_multi_query)
    Then, what kind of benchmark method is this to use a debugger for the execution time?
    Why not doing it into the actual php code, locally? I have a feeling he did the tests on a remote server, so the bandwidth, etc. might be taken into consideration also.

    Try it yourself, you will see if he is telling the truth. You should not believe what everyone says on the Internet. I mean, if the MySQL guys posted several documents where they highlight the mysqli improvements and even Jelsoft told us to use the mysqli extension instead the old mysql one, we should not believe one guy telling us that mysqli is crap, right? :)

    2 years old, yes, but has the library changed enough in that time?

    Also... a benchmark has enough weight, it's better than nothing ;) Although I agree that it is not a fair benchmark, first of all.. doing a thousand queries isn't exactly a "tipical scenario" for a forum. A mix of selects and inserts would be better, and.... I need to know that the table had the same initial conditions for the tests (fragmentation counts, and also I'd only want to factor the php time and not the mysql time).

    But bashing away... the truth is that, if mysql_multi_query "blows" the old mysql, then, well.... vBulletin doesn't use it... All I can see in the class is mysqli_query being used.. no ninfty tricks like prepared statement or multi-query, they just didn't push the extension, just changed the line that calls the query. (at least in this 3.6.8 version). So, even if it has increased performance, if we don't use it, it doesn't matter.

    I trust the vBulletin developers have done some tests, but nobody can test in all scenarios, server setups and configurations... I believe that "mysqli" is better, but I'm also going to try it on my forum and test the results.







  • #If you have any other info about this subject , Please add it free.#
    Your name:
    E-mail:
    Telphone:

    Your comments:


    If you have any other info about mysql vs. mysqli , Please add it free.