We mentioned earlier that there are two types of raster layers: tiled and untiled.
Before sharing ideas about tiling, the first thing to do is define tiling. According to Wikipedia, https://en.wikipedia.org/wiki/Tiled_rendering, it can be considered as the process of subdividing an image by regular grid.
So, why is this needed? Again, like for Closure Tools, it's for web performances. You can review about Closure tools in more detail in Appendix B, More details on Closure Tools and Code Optimization Techniques. Raster data and layers are built from other images or from vector data. The idea here with tiles is to balance the time for data processing and the time for transferring the resource (the image) through the network. It's also because using a regular tile grid can be cached, both by the browser and by the server.
Imagine that you require a complex layer. Would you want to wait for five minutes until it renders? (Rendering is the process to generate an image from geographic sources).
The following table shows a summary of pros and cons for using tiled, untiled resources:
To summarize, if you want performance with less flexibility, choose tiled raster, and if you need fresh data and your layers are based on one or two data sources, choose untiled raster. You can also make a mix of both solutions: use tiles at some levels and untiled content at other levels. Another difference we don't really show in the table for tiles, is that you can pregenerate image tiles for an upper level (such as the country level or lower) and choose to generate tiles on the fly only for lower levels (the street level). Depending on the context, you don't choose: you have to connect to a third-party map server where the choice is restricted to the available web services / images.
The purpose of this comparison is to help you understand how to make a good decision concerning the required layers you have to choose. OpenLayers 3 is only a client-side library; however, knowledge about the principle to provide layers is a requirement to use it well. Also, you may need to host, or own, your map server to serve raster data.
If you ever need to serve your own tiles or raster data, you can take a look at the following open source software:
Geoserver: http://geoserver.org
It is a server software that allows you to serve maps and data from a variety of formats to standard clients such as web browsers and desktop GIS programs.
Mapnik: http://www.mapnik.org
It's a toolkit for rendering beautiful maps, with clean, soft feature edges provided by quality anti-aliasing graphics, intelligent label placement, and scalable, SVG symbolization. Most popularly, Mapnik is used to render the OpenStreetMap main map layers.
Mapserver: http://www.mapserver.org
It is an open source geographic data rendering engine written in C. Beyond browsing GIS data, MapServer allows you to create geographic image maps, that is, maps that can direct users to web content. Like GeoServer, it allows map publications via Open Web Standards.
Degree: http://www.deegree.org/
Degree is open source software for spatial data infrastructures and the geospatial web. It shares with GeoServer and Mapserver the ability to serve map via Open Web Standards.
We can also mention that there are map proxy applications such as MapCache http://mapserver.org/mapcache/, GeoWebCache http://geowebcache.org, or MapProxy http://mapproxy.org.
Their important purposes are creating tiles for dynamic web server, caching requested map images using GeoServer, MapServer, Mapnik, Degree, or any other map servers.