Que tal compañeros, vengo a solicitar información al respecto, estoy desarrollando un sitio web bastante complejo, ya que realiza operaciones matemáticas complejas, por lo cual tarda bastante en procesar los datos con PHP, por lo cual decidí implementar en CSharp las mismas sentencias que en PHP, ya que supuse que sería aun mas rápido que PHP, sin embargo, haciendo pruebas para ingresar datos a MySQL desde PHP y CSharp (este ultimo usando conector de MySQL para .NET) veo que este ultimo tarda mas en realizar el mismo numero de ingresos, mi problema es que realmente no puedo creer esto ultimo, lo cual me hace pensar que igual y no estoy realizando las conexiones de manera optima en CSharp
Mi código es el siguiente:
CSharp:
Código C++:
Ver originalusing System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
//MySQL
using MySql.Data.MySqlClient;
namespace mysql_csharp
{
class Program
{
static void Main(string[] args)
{
string connString = "server=localhost;User Id=root;password=*****;database=demo;port=3306;";
MySqlConnection conn = new MySqlConnection(connString);
MySqlCommand command = conn.CreateCommand();
TimeSpan stop;
TimeSpan start = new TimeSpan(DateTime.Now.Ticks);
try
{
conn.Open();
}
catch (Exception e)
{
Console.WriteLine(e.Message);
}
for (int i = 0; i <= 100000; i++)
{
command.CommandText = "insert into usuarios (usuario,pass,email) values ('user" + i.ToString() + "','pass','email" + i.ToString() + "@servidor.com')";
command.ExecuteNonQuery();
//Console.WriteLine("Insertando el usuario num " + i.ToString());
}
stop = new TimeSpan(DateTime.Now.Ticks);
Console.WriteLine("Tiempo de ejecución: " + stop.Subtract(start).TotalMilliseconds.ToString());
conn.Close();
}
}
}
Al final me muestra: Tiempo de ejecución: 13820.7905
PHP
Código PHP:
Ver original<?php
function getmicrotime(){
$micro = $micro[1] + $micro[0];
return ($micro);
}
$start = getmicrotime();
for ($i=0; $i<=100000; $i++) {
$query = "insert into usuarios (usuario,pass,email) values ('user".
$i."','pass','email".$i."@servidor.com')";
}
$stop = getmicrotime();
$total = $stop - $start;
echo "Tiempo de ejecución: ".$total;
Al fina muestra "Tiempo de ejecución: 10.9690761566", por lo tanto veo que aproximadamente es 2 a 3 segundos de retraso en CSharp (en varias pruebas el tiempo varia)
Todo corriendo en la misma maquina, tanto PHP como el ejecutable CSharp y MySQL, ya después, meditándolo tal vez el culpable sea el conector, que alenté el ejecutable en si, pero aun así no estoy seguro...
Alguien tiene experiencia usando CSharp y MySQL para obtener buenos resultados o realmente este es "la velocidad" con la que voy a llegar a trabajar en CSharp???