Foros del Web » Programando para Internet » ASPX (.net) »

Se puede hacer...

Estas en el tema de Se puede hacer... en el foro de ASPX (.net) en Foros del Web. Buenas, explico mi problema, yo tengo una página web alojada en un hosting alquilado de resultados de futbol,. Hasta ahi facil Por otro lado tengo ...
  #1 (permalink)  
Antiguo 31/08/2009, 03:31
Avatar de triqui  
Fecha de Ingreso: diciembre-2008
Ubicación: Zaragoza(España)
Mensajes: 624
Antigüedad: 15 años, 4 meses
Puntos: 31
Se puede hacer...

Buenas, explico mi problema, yo tengo una página web alojada en un hosting alquilado de resultados de futbol,. Hasta ahi facil

Por otro lado tengo un código desarrollado que me captura los resultados de futbol en directo(del marca, del as) y el problema es que no se donde meterlo, si A)meterlo en la web

Si lo meto en la web, el problema es que si no entra ningún usuario, la página no hace el load por lo que no se ejecuta y no puede lanzar la función de captura de resultados y quiero que el XML ó BD donde guarda los resultados siempre este actualizada aunque no se meta ni cristo


ó B)meterlo en un winform

Esto me facilitaria el que el winforms siempre se estuviera ejecutando y buscando los resultados cada X tiempo.

Pero...Se puede subir un winform(exe) a un servidor contratado y como lo ejecuto?

Estas son las caracteristicas del código.

1.-El programa siempre estará activo(ejecutandose).
2.-Cada dia ira ala pagina para ver si hay partidos en juego.
3.-Si ha empezado algun partido, entonces irá cada 60 segundos haber si ha habido goles.
4.-Estos resultados se guardan en un XML cuya raiz es la aplicación web principal ó en la BD

Si no ha quedado claro yo os especifico más...

gracias
__________________
La nueva red social de quinielas quiniela resultados
Cazaresultados Futbol base en directo
  #2 (permalink)  
Antiguo 31/08/2009, 21:10
 
Fecha de Ingreso: octubre-2000
Mensajes: 1.692
Antigüedad: 23 años, 6 meses
Puntos: 19
Respuesta: Se puede hacer...

Hola.

Si pudieras subir un exe a un servidor, de todos modos podrías usarlo para la web. Si o si vas a necesitas una pc que esté conectada permanentemente, sea win o web. Si conseguis una pc y lo haces en web podes recargar la página cada cierto tiempo con un javascript o el time de ajax
__________________
PD: Con amor, fe, amor a Dios y amistad podemos hacer un mundo mejor!!!!
  #3 (permalink)  
Antiguo 01/09/2009, 00:30
Avatar de triqui  
Fecha de Ingreso: diciembre-2008
Ubicación: Zaragoza(España)
Mensajes: 624
Antigüedad: 15 años, 4 meses
Puntos: 31
Pregunta Respuesta: Se puede hacer...

Si,si lo que hago es recargar la página cada cierto x tiempo con el timer de Ajax, y llamar a la funcion que me hace el request para buscar los resultados, pero claro...

Es lo que no quiero hacer,
si por ejemplo se meten 100 usuarios a la vez, no van a estar llamando a la función que va a buscar los resultados los 100 a la vez. Por eso quería crear un exe independiente, y los 100 usuarios consultar el XML cada X tiempo.

Entonces si se puede subir un exe a un servidor? Y como se ejecuta?

u otra idea de como lo puedo crear.
__________________
La nueva red social de quinielas quiniela resultados
Cazaresultados Futbol base en directo
  #4 (permalink)  
Antiguo 01/09/2009, 02:17
Avatar de kennyhp  
Fecha de Ingreso: julio-2006
Mensajes: 370
Antigüedad: 17 años, 9 meses
Puntos: 5
Respuesta: Se puede hacer...

¿En que lenguaje tienes la página? Yo tengo la mia en .Net y tengo algo parecido (mira la firma) pero con noticias. He creado un JOB (tarea) que cada hora comprueba si hay noticias nuevas en otro thread(lo hace por separado de la carga de la página), si las hay las inserto en una base de datos creada por mi, y yo en mi página hago una consulta a mi base de datos para no sobrecargar. Si lo has hecho en PHP no se si tendra algo parecido, pero podrías empezar con una búsqueda en google de Jobs en php, a ver que te dice.

Saludos!
  #5 (permalink)  
Antiguo 01/09/2009, 10:05
Avatar de triqui  
Fecha de Ingreso: diciembre-2008
Ubicación: Zaragoza(España)
Mensajes: 624
Antigüedad: 15 años, 4 meses
Puntos: 31
Respuesta: Se puede hacer...

Cita:
Iniciado por kennyhp Ver Mensaje
He creado un JOB (tarea) que cada hora comprueba si hay noticias nuevas en otro thread(lo hace por separado de la carga de la página), si las hay las inserto en una base de datos creada por mi, y yo en mi página hago una consulta a mi base de datos para no sobrecargar.
Saludos!

Vaya lo de la tarea esa suena muy bien, yo creo que es lo que andaba buscando, imagino que se tendrá que configurar de alguna manera, o como nunca habia oido hablar de eso, imagino que que serán como las tareas de windows. Podrías informarme aunque sea en privado un poco más de estos "Jobs".

Cita:
Iniciado por kennyhp Ver Mensaje
¿En que lenguaje tienes la página?
Saludos!
La tengo en c# (.net 3.5) esto es lo que hago para traerme los datos cada X tiempo

Código:
    
string urlPrimera = "http://www.marca.com/marcador/futbol/2008_09/
primera/jornada_" + Convert.ToString(iJornadaPrimera) + "/";


// Ceo la solicitud de la URL.
WebRequest request = WebRequest.Create(urlPrimera);

// Obtenengo la respuesta.
WebResponse response = request.GetResponse();

// Abrir el stream de la respuesta recibida.
StreamReader reader = new StreamReader(response.GetResponseStream());
reader.Close();

//Luego tengo montado un código para leer todo ese texto 
//y saber cuando se producen goles en los partidos
Gracias un saludo
__________________
La nueva red social de quinielas quiniela resultados
Cazaresultados Futbol base en directo
  #6 (permalink)  
Antiguo 02/09/2009, 03:20
Avatar de kennyhp  
Fecha de Ingreso: julio-2006
Mensajes: 370
Antigüedad: 17 años, 9 meses
Puntos: 5
Respuesta: Se puede hacer...

Bueno, yo lo hago leyendo XML, pero eso es lo de menos... Te explico como lo he hecho yo y ya recojes lo que te sirva:
Me he creado dos clases a las que he llamado, programador y tareas.

Tareas.c

Código:
 public sealed class Tareas
    {
        public Tareas() {}

        public static void CadaHora(object state)
        {
            //TODO: logica del metodo
          
        }

    }
En esta clase creo el metodo al cual se llamara cada hora.

Programador.c

Código:
public class Programador
    {
        public Programador() { }

        public void Programador_Start()
        {
            TimerCallback callbackHora = new TimerCallback(Tareas.CadaHora);
            Timer HoraTimer = new Timer(callbackHora, null, TimeSpan.Zero, TimeSpan.FromHours(1.0));
        }
    }
Creo un TimerCallback y un Timer que se encargara de llamar a la tarea.

Luego has de crear en el Global.asax te encargas de llamar al programador en el Aplication_Start.

Global.asax

Código:
 protected void Application_Start(object sender, EventArgs e)
        {
            Programador tareas = new Programador();
            tareas.Programador_Start();


        }
Yo lo tengo funcionando en mi web y puedes comprobar que funciona.(en la firma sale)
Espero que te sirva! Saludos!
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:50.