Problem of the Day – ArcGIS Basemaps in ArcMap

I’ve been a big fan of the Esri basemaps for a while now.  I use them in web applications all the time.  Within web-apps they are fast, and when used correctly, they are an effective reference layer.

Lately I’ve been running into problems using these basemaps within ArcMap.  As you know, you can add these basemaps to an ArcMap view through an ArcGIS Server connection.   However, whenever I add any of the basemaps to my map, ArcMap starts to chug, and chug badly.

I know there are a couple issues that will cause any basemap provided through an ArcGIS Server connection to bring ArcGIS to a crawl.  The Esri basemaps are all provided in a web Mercator projection and if you are trying to reproject the layer on-the-fly it will slow down the draw rate within the map.  Even when I have all my data sets projected as web Mercator I still have drawing and performance issues.  In my experiences the initial load of the basemap usually draws quickly, but whenever a pan or zoom event or I start to toggle layers ArcMap will crawl.

What really worries me about this problem is that my fully patched and up-to-date copy of ArcGIS will often lock up or crash when these basemaps are being used in the application.   I only have this problem with the basemaps from ArcGIS.  I’ve never have this problem with a WMS layer.  Perhaps these data sets shouldn’t be used with ArcGIS itself and maybe I’m using these basemaps incorrectly?

Have you experienced this problem?  Do you have any remedies to fix this issue (besides not using the layers)?

The next problem I have had with these layers is something I can’t figure out.  On a pretty consistent basis I see the inconsistent extent error (see image below).  I will get this error when I add one of these basemap layers into the map, whether it is the first layer into a new project or the last layer added.  The projection of the view does not matter and sometimes the layer will draw with a blur.

extent_problem
Dangit

Let me know what your experiences have been and any potential fixes you may know. If I can come to a solution or someone sends me a good one I’ll post it here.