Mejor lenguaje para programar sobre linux

Iniciado por stendelis, 23 Mayo 2013, 16:50 PM

0 Miembros y 1 Visitante están viendo este tema.

stendelis

Hola,

Estoy desarrollando un proyecto en PHP, dicho proyecto consiste en un servicio que:

1- recibe un xml en un zip (bastante pesado).
2- descomprimir el zip.
3- parsear el xml para agregar su contenido a una BD de MySql.
4- generar algunas consultas específicas a la DB.
5- generar un xml con esas consultas.
6- comprimir el xml.
7- mandar por ftp.

Los pasos 4, 5, 6 y 7 funcionan muy bien directamente en php, ya que las consultas generan xml bastante pequeños.

El problema radica en la lentitud con que php procesa los pasos 1, 2 y 3.
El xml descomprimido es de unos 200M promedio, yo a partir de un cronjob ejecuto un php que descomprime y comienza a parsear el xml tag a tag agregandolo a la DB, si hay un error en un tag lo logeo y continuo con el siguiente sin detener el proceso. En php puede demorar unos 20 a 40 minutos dependiendo del tamaño.

Mi pregunta es, que lenguaje debo utilizar para hacer estas tareas lo más rápido posible. Es un servidor dedicado, bastante grande con bastante Ram, ya realize pruebas y no hay forma de acelerar mas el PHP, asi que pienso que programar en Perl o en algun tipo de script sobre linux sería lo mejor.

Mi duda es que lenguaje es mas rápido, parseando un xml y manejando inserts en MySql.

Saludos y gracias.

stendelis


dato000

El lenguaje de programacion es independiente de la plataforma de trabajo, puedes programar sobre lapiz y papel y sigue siendo codigo, su eficiencia depende de su creador.

xml es un lenguaje web, al igual que php, asi que realmente lo que importa es que uses apache para poner a implementar las pruebas que desarrolles con el source que vas desarrollando.



stendelis

Entiendo lo que me quieres decir y lo comparto, pero quizás no me explique bien (soy muy malo al explicar), necesito acelerar el proceso, dentro de PHP estoy utilizando readerxml(), que por lo que vi es la forma más rápida para trabajar con un xml en php.

Mi idea es cambiar de lenguaje, intentar hacerlo mas nativo sobre linux. Encontré que quizás un script shell, o una rutina en C, o de otra manera.

Encontré estas posibles opciones, pero no se si valen la pena probar, ademas debo contratar un programador para hacer esto.

http://vtd-xml.sourceforge.net/
http://xml-shell.sourceforge.net/
http://www.xmlsh.org/Commands
http://rpbouman.blogspot.com/2006/03/importing-xml-data-into-mysql-using.html

saludos

dato000

Cita de: stendelis en 13 Junio 2013, 02:00 AM
Entiendo lo que me quieres decir y lo comparto, pero quizás no me explique bien (soy muy malo al explicar), necesito acelerar el proceso, dentro de PHP estoy utilizando readerxml(), que por lo que vi es la forma más rápida para trabajar con un xml en php.

Mi idea es cambiar de lenguaje, intentar hacerlo mas nativo sobre linux. Encontré que quizás un script shell, o una rutina en C, o de otra manera.

Encontré estas posibles opciones, pero no se si valen la pena probar, ademas debo contratar un programador para hacer esto.

http://vtd-xml.sourceforge.net/
http://xml-shell.sourceforge.net/
http://www.xmlsh.org/Commands
http://rpbouman.blogspot.com/2006/03/importing-xml-data-into-mysql-using.html

saludos

Entonces esa pregunta no va aqui, si ya tienes opciones solo usa una u otra y vas probando, no se tanto de xml, pero estoy seguro que la sintaxis sera igual en todas, solo variaran unos parametros de uso.