Menú

Mostrar Mensajes

Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.

Mostrar Mensajes Menú

Mensajes - ~ Yoya ~

#31
Java / Re: Problema Java
14 Junio 2014, 18:47 PM
Never give up :P

Lo que pasa que cada vez que el cliente (javascript en este caso) se conecta al servidor de Websockets, se crea una sesión nueva para ese cliente. Y cada vez que otro cliente ingresa es otra sesión nueva independiente de las demás. Por lo tanto todos mantienen una comunicación independiente, algo así como una conexión Punto a Punto.

Lo que puedes hacer obtener todas las sesiones activas en el servidor, y ir mandando el mensaje a todas las sesiones abiertas.

No utilices socket multicast porque seria complicarse mucho mas, y no obtendrías las ventajas, performance ni el nivel de abstracción que te ofrece Websockets. Y encimas tendrías que configurar puertos de los clientes y tener en cuenta que el firewall no bloquee esos puertos... Y para lo que deseas hacer no deberías utilizar socket multicast y tampoco no existe una api en javascript para recibir dichos mensajes.

Tomando en cuenta que Websockets puede correr sobre HTTP por lo tanto no tendrás problema, prueba de eso es que pudiste establecer una comunicación cliente servidor sin mucho problema :D.

Te dejo unos links que te podrían ayudar mucho en lo que te interesa hacer:
http://stackoverflow.com/questions/18481597/how-to-get-an-existing-websocket-instance

Este ultimo link tomarlo de referencia.
http://java.dzone.com/articles/creating-websocket-chat

PD: Te recomiendo que te leas sobre la especificación de WebSocket de JavaEE 7, para que no tengas este tipo de problema. Ya que sabrás como funciona todo.

Saludos.
#32
Puedes crear una tabla para verificar que se inserto un registro. El script en Python regularmente verificará que exista un registro en esa tabla. Si encuentra un registro, borra el registro y entonces procedes a reiniciar el servidor.

Le agregas un trigger a la tabla donde se realizan los inserts. De forma que cada vez que se inserte un registro, el trigger se lanzara y insertara en la tabla de verificación un registro. Y como el script en Python se mantiene leyendo dicha tabla por si existe un registro, automáticamente procederá a ejecutar el proceso que se encuentra en el primer párrafo de mi respuesta.

Saludos.
#33
Si te concentras en varias cosas, entonce el tiempo necesario se multiplica, sino es que al final dejas todo...

Si tu plan es laborar PHP para luego laborar como programador Java EE, te recomiendo que te dediques full time a aprender solo PHP. Y cuando logres laborar, entonce 1 o 2 meses luego comienza a estudiar Java EE.

Por el lado de Java EE te recomiendo que estudies lo siguiente (la mayorías de la tecnologías pertenecen a las especificaciones de Java EE):

  • JSF
  • EJB (incluyendo MDB)
  • JPA
  • EclipseLink o Hirbenate (mejor si ambos)
  • Servlerts  y JSP (No tan profundo, mientras lo entiendas y puedas trabajar sin problemas es suficiente)
  • JAX-WS
  • JAX-RS
  • Junit (Un gran plus, sumamente necesario y muy facil de aprender)
  • Log4j (Un gran plus)
  • Maven
  • Eclipse (es muy importante estar familiarizado con un entorno de desarrollo con el que puedas trabajar sin problema, eclipse es de lo mas usuado)
  • Manejar por lo menos un servidor de aplicaciones. Eg: Weblogic, Jboss
  • Tomcat

Y te recomiendo que de momento no te ligues con Spring. Spring es todo un ecosistema, que ofrece muchas de las tecnologias de la especificacione de Java EE, y por lo tanto tendrás que aprender muchas cosas.

Otra cosa, Web sockets no es algo muy necesario, mas bien es un plus. En el ámbito de Java EE, Java FX es algo opcional y si manejas JavaEE por lógica manejas JavaSE (es como decir que corres y que también sabes caminar...).

Un gran plus para entrar al mercado laborar, es certificarse. Yo me certifique (tengo la certificacion 1Z0-851), si en algun momento deseas hacerlo, puedes escribir en el foro y te puedo dar algunos tips.

Saludos.
#34
Cita de: engel lex en 10 Mayo 2014, 04:03 AM
yoya, eso no sería muy pesado para php? tardaría posiblemente más de 10 segundos por archivo D:

Ahora que lo pienso si, pero si lo pide en PHP que se puede hacer :P. Pero si lo hace en PHP, le sera mas fácil portarlo a otro lenguaje. Si ocupa C++ y utiliza thread bastaría.
#35
Yo actualmente trabajo como desarrollador de Java EE, estoy trabajando en un proyecto basado en la arquitectura SOA. En la compañía que trabajo se compro la Suite SOA completa de Oracle (Oracle Service Bus, Enterprise Manager, Oracle Bussines Services, Bpel, etc...).

Y conozco muy bien PHP, y en lo personal, no me gusta trabajar con PHP (PHP fue uno de los lenguajes con lo que mas me desarrolle y dure un tiempo trabajando con PHP profesionalmente)... PHP carece de muchas características.

Java es un lenguaje mucho mas maduro, y en el ámbito  de aplicaciones empresariales es lo mas maduro y completo que puedes encontrar.

Y los trabajos como programador de Java (normalmente Java EE) son mucho mejor pagado que PHP, y tienes mucha mas facilidad de encontrar un trabajo en Java que en PHP (hay mucho mas programadores de PHP que de Java). Ahora como dices la curva de aprendizaje de Java EE es muy difícil, pero las cosas mas difíciles son las que dan los mejores resultados...



En el caso que quieras insistir, te doy mi concejo sobre el Hardware necesario. Y no vayas a utilizar una maquina diferente donde corra apache, porque cada vez que escribas algo vas a tener que subir los cambios al servidor y cualquier forma similar, no es para nada eficiente. Utiliza la maquina donde programas para probar directamente, utiliza un servidor externo para dejar la aplicación en producción.

Para correr Apache, programar en PHP no necesitas una maquina muy buena (Intel Pentium 4, 1GB ram, SO 32bits basta), el tema esta en CSS3 y HTML5. Necesitaras una maquina un poco mejor para renderizar las paginas en un tiempo lo suficientemente decentes para que puedas trabajar bien:


  • 4GB RAM
  • 20 GB Disco duro (Sistema operativo y aplicaciones necesarias)
  • Dual Core
  • Sistema operativo 64 Bits

PD: Ocupa Linux, es mucho mejor para programar en PHP, manejar los distintos servicios, performance, etc...

Y si deseas pasar la aplicación a producción y si la aplicación estará hosteada en la nube, con un IaaS (linode, Amazon, etc...) basta, así puedes aumentar el hardware cuando es necesario y pagar por lo que necesitas.

Saludos.
#36
Lee el archivo y guarda su contenido binario en una variable. Luego convierte el contenido de la variable en hexadecimal, guárdalo en una variable y elimina el contenido que deseas eliminar utilizando expresiones regulares o lo que deseas. Y luego pasas el contenido de hexadecimal a binario y guárdalo en un archivo...

Ya PHP tiene funciones para pasar de binario a hexadecimal y viceversa, pero puede ser también que corrompas el archivo y luego no funciona...

Te recomiendo que practiques primero, leer el archivo, copiar su contenido binario en una variable y crees un archivo con ese contenido binario. Para que sepas mejor como haras todo y tendras la mente mas limpia e orgnizada.

Saludos.
#37
Crea otro EntityManager con el nuevo usuario y password, y listo.

Pero te lo repito y sin ofender, para realizar una aplicación basada en usuarios, hacerlo de la forma que lo haces es una asquerosidad. Lo ideal es tener una tabla con los usuarios y password...

Saludos.
#38
Cita de: --<<<@u6u$t0>>>-- en  8 Mayo 2014, 06:04 AM
Ahi establece el usuario y la contraseña que usara el EntityManager ¿no? entonces ¿no hay una forma de cambiar el usuario y contraseña posteriormente cuando el EntityManager ya ha sido creado?

Hay no establece la contraseña del EntityManager, en el ejemplo que pones lo que haces es setear el usuario y password del JDBC que se para connectarse a una base de datos y cuyo usuario y password que se le especifican, son usuarios creado en el gestor de base de datos.
#39
Lo primero que tienes que tener en cuenta, es que no tiene que ver nada Java con Netbeans, Netbeans es un IDE nomas.

Cuando cambias el usuario y password, estas cambiando las credenciales del usuario que tiene acceso a la base de datos que estas utilizando tu aplicación. Pero lo que quieres hacer es diferente, lo que intentas hacer es un sistema de control de acceso.

Puedes utilizar JAAS, o simplemente crear tu propio sistema de autorización y autenticación.

Saludos.
#40
PHP / Re: Automatizar descargas con loop
1 Mayo 2014, 04:50 AM
Bro, no puedes usar die() y no entiendo porque se te ocurrió usar die(). die() finaliza la ejecución del script completo.

Y para lo que quieres hacer no te va a funcionar de esa manera, siempre va a descargar un solo. Porque el script se queda ejecutando y el navegador se queda en espera que el script termine su ejecución, y cuando el script termina de ejecutarse el navegador termina de descargar el primer archivo. Y como termino de ejecutarse, entonce hay finaliza el proceso por completo.

Si quieres hacer algo similar, entonce se me ocurre que uses iframe.

Saludos.