First of, the Google map JS clients are not Vector based. The effect of displaying e.g. text at the same size when zooming is a result of tiling and by providing new images for each zoom level.
For web based application or applications that fetches tiles from a server you can find out wether a map is vector or raster based by inspecting the network traffic. When panning or zooming a map you will see the client is fetching the map data. If it is vector based it will be a vector data format if it is raster based the data retrieved will be images (png/jpeg).
The following tile is captured when viewing google maps online:
It is very likely though, that the server serving the tiles is using a vector source and render the tiles to raster images. These tiles are usually cached for faster fetching. This can explain how you can apply styling or filtering in google maps see https://mapstyle.withgoogle.com
GeoServer is a typical open source server which can perform this task on behalf of the client.
The reason why Google maps is acting more smoothly is because of they are using OpenGL (the GPU and not only CPU) to render the images. You can see this by viewing a Google map in a browser with no WebGL (e.g. IE10) support and compare the behaviour with a browser with has support for WebGL.