Página 1 de 1

Porque a conexão da classe TMySQLServer é tão rápida?

Enviado: 29 Jun 2018 16:46
por NiltonGM
Pessoal, para estudo: Alguém sabe porque a conexão do Harbour com o MySQL pela classe TMySQLServer é extremamente rápida quando acessamos servidor na web?
Tenho aplicação em PHP que acessa a mesma base de dados MySQL (mesmo servidor, mesma velocidade de internet,etc) e tenho minha aplicação em Harbour que acessa o mesma base de dados.
O Harbour acessa mil vezes, corrigindo, um milhão de vezes mais rápido que qualquer outra aplicação acessando o mesmo banco de dados... porque?
Estudando o fonte dessa classe não há nada de excepcional a não ser pelas funções mysql_query() que provavelmente pertence a LIB "libmySQL.a", alguém tem os fontes dessa lib "libmySQL.a"?
Caso alguém questione "Depende de como foi programado... etc.." as duas aplicação (Harbour e PHP) estão com o mesmo SELECT (Cltr+C & Cltr+V)

Porque a conexão da classe TMySQLServer é tão rápida?

Enviado: 29 Jun 2018 19:42
por JoséQuintas
Puro chute:

ADO:

O Harbour conversa com o ADO, que conversa com o ODBC, que conversa com a DLL, que conversa com o MySQL.
Na volta, o MySql que conversa com a DLL, que conversa com o ODBC, que conversa com o ADO, que conversa com o Harbour

Classe TMySQL

O Harbour conversa com a DLL que conversa com o MySql
na volta, o MySql conversa com a DLL que conversa com o Harbour.

Harbour com DLL MySQL, só pode ser de um tipo Harbour para um tipo MySql e vice-versa.
Já na salada ADO, ODBC, DLL...pode ser qualquer tipo, de qualquer base de dados, pra qualquer linguagem de programação.

Provavelmente no PHP deva ser algo parecido com ADO, pra atender qualquer situação.

Como eu disse no início... puro chute.

Ao mesmo tempo.... usando ADO vale pra qualquer base de dados, até DBF.

Qual é melhor? vai de cada um.

Porque a conexão da classe TMySQLServer é tão rápida?

Enviado: 30 Jun 2018 02:42
por Claudio Soto
Debido a que PHP es un lenguaje interpretado, un script en PHP generalmente es más lento que su equivalente CGI desarrollado en un lenguaje compilado.