Tus consultas van por mapscript o por CGI? Si es la segunda considera utilizar Fast-CGI. En el FOSS4G de este año han demostrado cuando mas eficiente sean las varias conexiones.
igual me temo que sea un problema de DB lorenzo 2009/12/9 Emilio Gómez Fernández <[email protected]> > Hola a todos, > > A ver si alguien me puede arrojar algo de luz al problema que me ocupa > estos últimos días. > > Tengo montado un servidor cartográfico mediante Mapserver + Openlayers + > Geoext. De momento todo funciona bien, el problema que tengo es que cuando > hago un GetFeatureInfo a la base de datos Mapserver me tarda demasiado (unos > 20-25 segundos) en devolver la información de los elementos (en total no se > muestran más de 15 elementos en el mapa distribuidos en 7 capa > sconsultables). La url sería la siguiente: > > > http://localhost/cgi-bin/mapserv.exe?map=../htdocs/mapa.map&&service=WMS&version=1.1.0&request=GetFeatureInfo&layers=actividad0,actividad1,actividad2,actividad3,actividad4,actividad5,actividad6&query_layers=actividad0,actividad1,actividad2,actividad3,actividad4,actividad5,actividad6&styles=,,,,,,&bbox=-16.795006%2C28.065467%2C-16.656303%2C28.130885&srs=EPSG%3A4326&feature_count=10&x=370&y=322&height=432&width=808&info_format=text%2Fhtml > > Comentar que consulto a una base de datos SQL Server 2005 mediante ODBC a > través de VirtualSpatialData OGR, ya que aquella contiene datos geográficos > no explícitos. La configuración de los parámetros del OGRVRTDataSource es la > siguiente para cada capa (únicamente cambia la SQL mínimamente): > > <OGRVRTDataSource> > <OGRVRTLayer name='actividad6'> > <SrcDataSource>ODBC:@AdejeDB</SrcDataSource> > <SrcSQL>SELECT e.matricula AS matricula, t.longitud AS longitud, > t.latitud AS latitud, e.id_equipo AS id_equipo, e.denominacion AS > denominacion, t.fecha_hora_ultima_posicion AS hora_posicion, > t.fecha_hora_salida_parque AS hora_salida FROM (SELECT * FROM > posiciones_gps_tr AS p WHERE p.grupo_actividad=6 AND p.obsoleta=0) AS t, > equipos AS e WHERE e.id_ayuntamiento=1 AND t.oid_equipo=e.oid ORDER BY > t.OID_equipo</SrcSQL> > <FID>id_equipo</FID> > <GeometryType>wkbPoint</GeometryType> > <LayerSRS>WGS84</LayerSRS> > <GeometryField encoding='PointFromColumns' x='longitud' y='latitud'/> > </OGRVRTLayer> > </OGRVRTDataSource> > > > Tanto la base de datos SQL Server como la versión de Mapserver (v. 4.10.2) > me vienen dados por lo que ahí no puedo tocar nada. Vengo dándole vueltas y > no encuentro la forma de acelerar la query. Probando las SQL en la base de > datos no tardan casi nada, porque se ejecutan sobre tablas con pocos > registros. Pienso que pueda ser al conectar a la BD mediante ODBC+OGR, > porque testeando el archivo Virtual Data con ogrinfo en consola tarda unos 3 > seg. por capa en devolver resultados (3x7=21 seg.). > > Indiscutiblemente accediendo a través de OGR tiene que ser más lento pero > no se si esto es normal y si hay alguna forma de acelerarlo. A ver si > alguien puede echarme un mano. > > Saludos. > > Emilio Gómez Fernández > > > > > _______________________________________________ > Spanish mailing list > [email protected] > http://lists.osgeo.org/mailman/listinfo/spanish > >
_______________________________________________ Spanish mailing list [email protected] http://lists.osgeo.org/mailman/listinfo/spanish
